mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2025-02-14 02:33:53 +00:00
reset errno to zero on entry to the application's main function. This fixes
MultiSource/Applications/minisat in the JIT. Note that the libsystem stuff should ideally never modify errno. :( git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36508 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
b35417c607
commit
020403209a
@ -28,7 +28,7 @@
|
||||
#include "llvm/System/Process.h"
|
||||
#include "llvm/System/Signals.h"
|
||||
#include <iostream>
|
||||
|
||||
#include <cerrno>
|
||||
using namespace llvm;
|
||||
|
||||
namespace {
|
||||
@ -128,6 +128,10 @@ int main(int argc, char **argv, char * const *envp) {
|
||||
// function later on to make an explicit call, so get the function now.
|
||||
Constant *Exit = Mod->getOrInsertFunction("exit", Type::VoidTy,
|
||||
Type::Int32Ty, NULL);
|
||||
|
||||
// Reset errno to zero on entry to main.
|
||||
errno = 0;
|
||||
|
||||
// Run static constructors.
|
||||
EE->runStaticConstructorsDestructors(false);
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user