From 77bcf72d7981c46b396a7b2e6c009181cec2fa63 Mon Sep 17 00:00:00 2001 From: Richard Kreckel Date: Tue, 2 Aug 2005 17:34:41 +0000 Subject: [PATCH] * include/cln/config.h.in: Add support for PowerPC 64 CPU. * include/cln/modules.h: Likewise. * include/cln/object.h: Likewise. * include/cln/types.h: Likewise. --- ChangeLog | 9 ++++++++- include/cln/config.h.in | 4 ++++ include/cln/modules.h | 4 ++-- include/cln/object.h | 2 +- include/cln/types.h | 6 +++--- 5 files changed, 18 insertions(+), 7 deletions(-) diff --git a/ChangeLog b/ChangeLog index c1344da..299a542 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,4 +1,11 @@ -2005-08-24 Richard B. Kreckel +2005-08-02 Andreas Jochens + + * include/cln/config.h.in: Add support for PowerPC 64 CPU. + * include/cln/modules.h: Likewise. + * include/cln/object.h: Likewise. + * include/cln/types.h: Likewise. + +2005-07-24 Richard B. Kreckel Make out of the box build on x86_64 system with complete 32 bit userland possible diff --git a/include/cln/config.h.in b/include/cln/config.h.in index f591336..e31357e 100644 --- a/include/cln/config.h.in +++ b/include/cln/config.h.in @@ -68,6 +68,10 @@ #undef __rs6000__ #endif +#ifndef __powerpc64__ +#undef __powerpc64__ +#endif + #ifndef __m88k__ #undef __m88k__ #endif diff --git a/include/cln/modules.h b/include/cln/modules.h index 2f0527e..3a9c17b 100644 --- a/include/cln/modules.h +++ b/include/cln/modules.h @@ -64,7 +64,7 @@ #endif // Globalize a label defined in the same translation unit. // See macro ASM_GLOBALIZE_LABEL in the gcc sources. - #if defined(__i386__) || defined(__m68k__) || defined(__mips__) || defined(__mipsel__) || defined(__mips64__) || defined(__alpha__) || defined(__rs6000__) || defined(__x86_64__) || defined(__s390__) + #if defined(__i386__) || defined(__m68k__) || defined(__mips__) || defined(__mipsel__) || defined(__mips64__) || defined(__alpha__) || defined(__rs6000__) || defined(__powerpc64__) || defined(__x86_64__) || defined(__s390__) // Some m68k systems use "xdef" or "global" or ".global"... #define CL_GLOBALIZE_LABEL(label) __asm__("\t.globl " label); #endif @@ -142,7 +142,7 @@ #if defined(__arm__) #define CL_JUMP_TO(addr) ASM_VOLATILE("mov pc,%0" : : "r" ((void*)(addr))) #endif - #if defined(__rs6000__) || defined(__powerpc__) || defined(__ppc__) + #if defined(__rs6000__) || defined(__powerpc__) || defined(__ppc__) || defined(__powerpc64__) //#define CL_JUMP_TO(addr) ASM_VOLATILE("mtctr %0\n\tbctr" : : "r" ((void*)(addr))) #define CL_JUMP_TO(addr) ASM_VOLATILE("b " ASM_UNDERSCORE_PREFIX #addr) #endif diff --git a/include/cln/object.h b/include/cln/object.h index b7353dc..4a25443 100644 --- a/include/cln/object.h +++ b/include/cln/object.h @@ -25,7 +25,7 @@ namespace cln { #if defined(__i386__) || defined(__mips__) || defined(__mipsel__) || defined(__sparc__) || defined(__hppa__) || defined(__arm__) || defined(__rs6000__) || defined(__m88k__) || defined(__convex__) || defined(__s390__) #define cl_word_alignment 4 #endif -#if defined(__alpha__) || defined(__mips64__) || defined(__sparc64__) || defined(__ia64__) || defined(__x86_64__) +#if defined(__alpha__) || defined(__ia64__) || defined(__mips64__) || defined(__powerpc64__) || defined(__sparc64__) || defined(__x86_64__) #define cl_word_alignment 8 #endif #if !defined(cl_word_alignment) diff --git a/include/cln/types.h b/include/cln/types.h index efe3242..662bfc8 100644 --- a/include/cln/types.h +++ b/include/cln/types.h @@ -48,7 +48,7 @@ #undef HAVE_LONGLONG #endif #endif - #if defined(HAVE_LONGLONG) && (defined(__alpha__) || defined(__mips64__) || defined(__sparc64__) || defined(__ia64__) || defined(__x86_64__)) + #if defined(HAVE_LONGLONG) && (defined(__alpha__) || defined(__ia64__) || defined(__mips64__) || defined(__powerpc64__) || defined(__sparc64__) || defined(__x86_64__)) // 64 bit registers in hardware #define HAVE_FAST_LONGLONG #endif @@ -85,7 +85,7 @@ #define signean_minus -1 // Integer type used for counters. - #if (defined(HAVE_FAST_LONGLONG) && (defined(__alpha__) || defined(__ia64__) || defined(__x86_64__))) +#if (defined(HAVE_FAST_LONGLONG) && (defined(__alpha__) || defined(__ia64__) || defined(__powerpc64__) || defined(__x86_64__))) #define intCsize long_bitsize typedef long sintC; typedef unsigned long uintC; @@ -119,7 +119,7 @@ typedef int sintD; typedef unsigned int uintD; #else // we are not using GMP, so just guess something reasonable - #if (defined(HAVE_FAST_LONGLONG) && (defined(__alpha__) || defined(__ia64__) || defined(__x86_64__))) + #if (defined(HAVE_FAST_LONGLONG) && (defined(__alpha__) || defined(__ia64__) || defined(__powerpc64__) || defined(__x86_64__))) #define intDsize 64 typedef sint64 sintD; typedef uint64 uintD;