From 811d75f71acb757f1742cdf508e428df1521c9b7 Mon Sep 17 00:00:00 2001 From: Chris Lattner Date: Sun, 17 Dec 2006 21:04:02 +0000 Subject: [PATCH] Fix PR1057 (compilation on macos 10.3), patch by Scott Michel! llvm-svn: 32644 --- llvm/lib/ExecutionEngine/JIT/JIT.cpp | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/llvm/lib/ExecutionEngine/JIT/JIT.cpp b/llvm/lib/ExecutionEngine/JIT/JIT.cpp index 4cfd907ee9b9..a7c4715ac368 100644 --- a/llvm/lib/ExecutionEngine/JIT/JIT.cpp +++ b/llvm/lib/ExecutionEngine/JIT/JIT.cpp @@ -31,9 +31,10 @@ using namespace llvm; #ifdef __APPLE__ #include -#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) {