summaryrefslogtreecommitdiffstats
path: root/llvm/lib/ExecutionEngine/JIT
diff options
context:
space:
mode:
authorBrian Gaeke <gaeke@uiuc.edu>2003-10-11 03:51:18 +0000
committerBrian Gaeke <gaeke@uiuc.edu>2003-10-11 03:51:18 +0000
commit74edce6f7c0ae6e9d0ce6b205617272970c98eed (patch)
treebcebbbe3645ada6ae842741958fab606863a2e44 /llvm/lib/ExecutionEngine/JIT
parentbf7bbf1881e089d9ef2d05e0a44adb47e9b2769f (diff)
downloadbcm5719-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.cpp9
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
OpenPOWER on IntegriCloud