diff options
author | Brian Gaeke <gaeke@uiuc.edu> | 2003-10-11 03:51:18 +0000 |
---|---|---|
committer | Brian Gaeke <gaeke@uiuc.edu> | 2003-10-11 03:51:18 +0000 |
commit | 74edce6f7c0ae6e9d0ce6b205617272970c98eed (patch) | |
tree | bcebbbe3645ada6ae842741958fab606863a2e44 /llvm/lib/ExecutionEngine/JIT | |
parent | bf7bbf1881e089d9ef2d05e0a44adb47e9b2769f (diff) | |
download | bcm5719-llvm-74edce6f7c0ae6e9d0ce6b205617272970c98eed.tar.gz bcm5719-llvm-74edce6f7c0ae6e9d0ce6b205617272970c98eed.zip |
Make mmap's fd for anonymous memory acquisition default to -1, except on
Linux. This is consistent with what FreeBSD and Solaris both want.
This makes the JIT work on FreeBSD 5.1-RELEASE. Whee.
llvm-svn: 9045
Diffstat (limited to 'llvm/lib/ExecutionEngine/JIT')
-rw-r--r-- | llvm/lib/ExecutionEngine/JIT/Emitter.cpp | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/llvm/lib/ExecutionEngine/JIT/Emitter.cpp b/llvm/lib/ExecutionEngine/JIT/Emitter.cpp index 982eadd12fa..d25aaa3e4a3 100644 --- a/llvm/lib/ExecutionEngine/JIT/Emitter.cpp +++ b/llvm/lib/ExecutionEngine/JIT/Emitter.cpp @@ -56,13 +56,18 @@ static void *getMemory(unsigned NumBytes) { #if defined(MAP_ANON) && !defined(MAP_ANONYMOUS) # define MAP_ANONYMOUS MAP_ANON #endif /* defined(MAP_ANON) && !defined(MAP_ANONYMOUS) */ -#define fd 0 #elif defined(sparc) || defined(__sparc__) || defined(__sparcv9) -#define fd -1 +/* nothing */ #else std::cerr << "This architecture is not supported by the JIT!\n"; abort(); #endif + +#if defined(__linux__) +#define fd 0 +#else +#define fd -1 +#endif unsigned mmapFlags = MAP_PRIVATE|MAP_ANONYMOUS; #ifdef MAP_NORESERVE |