From 71a786fd739ae9bf68d2a594ae448d934f9a9153 Mon Sep 17 00:00:00 2001 From: Richard Kreckel Date: Mon, 5 Mar 2001 17:24:08 +0000 Subject: [PATCH] * include/cln/modules.h (CL_JUMP_TO): Fix IA64 brokenness. --- ChangeLog | 4 ++++ include/cln/modules.h | 11 ++++------- 2 files changed, 8 insertions(+), 7 deletions(-) diff --git a/ChangeLog b/ChangeLog index e06e8ee..189d7b7 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,7 @@ +2001-03-05 Richard Kreckel + + * include/cln/modules.h (CL_JUMP_TO): Fix IA64 brokenness. + 2001-01-28 Richard Kreckel * include/cln/number.h (cl_as_N): Remove bogus comment. diff --git a/include/cln/modules.h b/include/cln/modules.h index 00be835..33bce47 100644 --- a/include/cln/modules.h +++ b/include/cln/modules.h @@ -63,12 +63,12 @@ #define ASM_UNDERSCORE_PREFIX "" #endif // Globalize a label defined in the same translation unit. - // See macro ASM_GLOBALIZE_LABEL in the egcs sources. + // See macro ASM_GLOBALIZE_LABEL in the gcc sources. #if defined(__i386__) || defined(__m68k__) || defined(__mips__) || defined(__mips64__) || defined(__alpha__) || defined(__rs6000__) // Some m68k systems use "xdef" or "global" or ".global"... #define CL_GLOBALIZE_LABEL(label) __asm__("\t.globl " label); #endif - #if defined(__sparc__) || defined(__sparc64__) || defined(__arm__) + #if defined(__sparc__) || defined(__sparc64__) || defined(__arm__) || defined(__ia64__) // Some arm systems use "EXPORT" or ".globl"... #define CL_GLOBALIZE_LABEL(label) __asm__("\t.global " label); #endif @@ -81,9 +81,6 @@ #if defined(__convex__) #define CL_GLOBALIZE_LABEL(label) __asm__(".globl " label); #endif - #if defined(__ia64__) - #define CL_GLOBALIZE_LABEL(label) __asm__("\t.global " label); - #endif #ifndef CL_GLOBALIZE_LABEL #define CL_GLOBALIZE_LABEL(label) #endif @@ -98,7 +95,7 @@ #define CL_GLOBALIZE_CTORDTOR_LABEL(label) #endif // Output a label inside a function. - // See macro ASM_OUTPUT_LABEL in the egcs sources. + // See macro ASM_OUTPUT_LABEL in the gcc sources. #if defined(__hppa__) #define CL_OUTPUT_LABEL(label) ASM_VOLATILE ("\n" label) #else @@ -149,7 +146,7 @@ #define CL_JUMP_TO(addr) ASM_VOLATILE("jmp (%0)" : : "r" ((void*)(addr))) #endif #if defined(__ia64__) - #define CL_JUMP_TO(addr) ASM_VOLATILE("br %0" : : "b" ((void*)(addr))) + #define CL_JUMP_TO(addr) ASM_VOLATILE("br " #addr) #endif #define CL_PROVIDE(module) \ extern "C" void cl_module__##module##__firstglobalfun () {} \