Fix PR1057 (compilation on macos 10.3), patch by Scott Michel!
authorChris Lattner <sabre@nondot.org>
Sun, 17 Dec 2006 21:04:02 +0000 (21:04 +0000)
committerChris Lattner <sabre@nondot.org>
Sun, 17 Dec 2006 21:04:02 +0000 (21:04 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32644 91177308-0d34-0410-b5e6-96231b3b80d8

lib/ExecutionEngine/JIT/JIT.cpp

index 4cfd907ee9b9e89d88244d6b484d3a4553464b05..a7c4715ac3680a34bec74255f33d9819cc373133 100644 (file)
@@ -31,9 +31,10 @@ using namespace llvm;
 
 #ifdef __APPLE__ 
 #include <AvailabilityMacros.h>
-#if (MAC_OS_X_VERSION_MIN_REQUIRED > MAC_OS_X_VERSION_10_4) || \
-    (MAC_OS_X_VERSION_MIN_REQUIRED == MAC_OS_X_VERSION_10_4 && \
-     __APPLE_CC__ >= 5330)
+#if defined(MAC_OS_X_VERSION_10_4) && \
+    ((MAC_OS_X_VERSION_MIN_REQUIRED > MAC_OS_X_VERSION_10_4) || \
+     (MAC_OS_X_VERSION_MIN_REQUIRED == MAC_OS_X_VERSION_10_4 && \
+      __APPLE_CC__ >= 5330))
 // __dso_handle is resolved by Mac OS X dynamic linker.
 extern void *__dso_handle __attribute__ ((__visibility__ ("hidden")));
 #endif
@@ -308,17 +309,16 @@ void *JIT::getOrEmitGlobalVariable(const GlobalVariable *GV) {
 
   // If the global is external, just remember the address.
   if (GV->isExternal()) {
-#ifdef __APPLE__
-#if (MAC_OS_X_VERSION_MIN_REQUIRED > MAC_OS_X_VERSION_10_4) || \
-    (MAC_OS_X_VERSION_MIN_REQUIRED == MAC_OS_X_VERSION_10_4 && \
-     __APPLE_CC__ >= 5330)
+#if defined(__APPLE__) && defined(MAC_OS_X_VERSION_10_4) && \
+    ((MAC_OS_X_VERSION_MIN_REQUIRED > MAC_OS_X_VERSION_10_4) || \
+     (MAC_OS_X_VERSION_MIN_REQUIRED == MAC_OS_X_VERSION_10_4 && \
+      __APPLE_CC__ >= 5330))
     // Apple gcc defaults to -fuse-cxa-atexit (i.e. calls __cxa_atexit instead
     // of atexit). It passes the address of linker generated symbol __dso_handle
     // to the function.
     // This configuration change happened at version 5330.
     if (GV->getName() == "__dso_handle")
       return (void*)&__dso_handle;
-#endif
 #endif
     Ptr = sys::DynamicLibrary::SearchForAddressOfSymbol(GV->getName().c_str());
     if (Ptr == 0) {