[project @ 2005-04-28 16:05:54 by simonpj]
[ghc-hetmet.git] / ghc / rts / Adjustor.c
index 13c66ca..f6ea61c 100644 (file)
@@ -99,6 +99,11 @@ mallocBytesRWX(int len)
   return addr;
 }
 
+#ifdef LEADING_UNDERSCORE
+#define UNDERSCORE "_"
+#else 
+#define UNDERSCORE ""
+#endif
 #if defined(i386_HOST_ARCH)
 /* 
   Now here's something obscure for you:
@@ -118,18 +123,18 @@ mallocBytesRWX(int len)
   to return to it before tail jumping from the adjustor thunk.
 */
 __asm__ (
-   ".globl obscure_ccall_ret_code\n"
-   "obscure_ccall_ret_code:\n\t"
+   ".globl " UNDERSCORE "obscure_ccall_ret_code\n"
+   UNDERSCORE "obscure_ccall_ret_code:\n\t"
    "addl $0x4, %esp\n\t"
    "ret"
   );
 extern void obscure_ccall_ret_code(void);
 #endif
 
-#if defined(x86_64_TARGET_ARCH)
+#if defined(x86_64_HOST_ARCH)
 __asm__ (
-   ".globl obscure_ccall_ret_code\n"
-   "obscure_ccall_ret_code:\n\t"
+   ".globl " UNDERSCORE "obscure_ccall_ret_code\n"
+   UNDERSCORE "obscure_ccall_ret_code:\n\t"
    "addq $0x8, %rsp\n\t"
    "ret"
   );
@@ -233,7 +238,7 @@ void*
 createAdjustor(int cconv, StgStablePtr hptr,
               StgFunPtr wptr,
               char *typeString
-#if !defined(powerpc_HOST_ARCH) && !defined(powerpc64_HOST_ARCH) && !defined(x86_64_TARGET_ARCH)
+#if !defined(powerpc_HOST_ARCH) && !defined(powerpc64_HOST_ARCH) && !defined(x86_64_HOST_ARCH)
                  STG_UNUSED
 #endif
               )