diff options
author | Jakub Jelinek <jakub@redhat.com> | 2008-08-29 07:42:08 +0000 |
---|---|---|
committer | Jakub Jelinek <jakub@redhat.com> | 2008-08-29 07:42:08 +0000 |
commit | 315a43aa949b25896c511fa6e2efd6be57e2e01d (patch) | |
tree | 625aa5d40df04b92dcd3bd8128d30e52a45975ac /sysdeps/powerpc | |
parent | 2fb513c60061821c7e5e7fb6014d2afd0308b7e9 (diff) | |
download | glibc-315a43aa949b25896c511fa6e2efd6be57e2e01d.tar glibc-315a43aa949b25896c511fa6e2efd6be57e2e01d.tar.gz glibc-315a43aa949b25896c511fa6e2efd6be57e2e01d.tar.bz2 glibc-315a43aa949b25896c511fa6e2efd6be57e2e01d.zip |
Updated to fedora-glibc-20080828T1623cvs/fedora-glibc-2_8_90-12
Diffstat (limited to 'sysdeps/powerpc')
-rw-r--r-- | sysdeps/powerpc/dl-procinfo.c | 10 | ||||
-rw-r--r-- | sysdeps/powerpc/dl-procinfo.h | 10 | ||||
-rw-r--r-- | sysdeps/powerpc/fpu/bits/mathinline.h | 10 | ||||
-rw-r--r-- | sysdeps/powerpc/powerpc32/dl-machine.c | 5 | ||||
-rw-r--r-- | sysdeps/powerpc/sysdep.h | 2 |
5 files changed, 24 insertions, 13 deletions
diff --git a/sysdeps/powerpc/dl-procinfo.c b/sysdeps/powerpc/dl-procinfo.c index a732e94fa8..1c74c2a905 100644 --- a/sysdeps/powerpc/dl-procinfo.c +++ b/sysdeps/powerpc/dl-procinfo.c @@ -46,11 +46,12 @@ #if !defined PROCINFO_DECL && defined SHARED ._dl_powerpc_cap_flags #else -PROCINFO_CLASS const char _dl_powerpc_cap_flags[23][10] +PROCINFO_CLASS const char _dl_powerpc_cap_flags[25][10] #endif #ifndef PROCINFO_DECL = { - "power6x", "dfp", "pa6t", + "vsx", + "arch_2_06", "power6x", "dfp", "pa6t", "arch_2_05", "ic_snoop", "smt", "booke", "cellbe", "power5+", "power5", "power4", "notb", "efpdouble", "efpsingle", "spe", @@ -67,7 +68,7 @@ PROCINFO_CLASS const char _dl_powerpc_cap_flags[23][10] #if !defined PROCINFO_DECL && defined SHARED ._dl_powerpc_platforms #else -PROCINFO_CLASS const char _dl_powerpc_platforms[7][12] +PROCINFO_CLASS const char _dl_powerpc_platforms[8][12] #endif #ifndef PROCINFO_DECL = { @@ -77,7 +78,8 @@ PROCINFO_CLASS const char _dl_powerpc_platforms[7][12] [PPC_PLATFORM_POWER5_PLUS] = "power5+", [PPC_PLATFORM_POWER6] = "power6", [PPC_PLATFORM_CELL_BE] = "ppc-cell-be", - [PPC_PLATFORM_POWER6X] = "power6x" + [PPC_PLATFORM_POWER6X] = "power6x", + [PPC_PLATFORM_POWER7] = "power7" } #endif #if !defined SHARED || defined PROCINFO_DECL diff --git a/sysdeps/powerpc/dl-procinfo.h b/sysdeps/powerpc/dl-procinfo.h index 0bf935385a..254195a94c 100644 --- a/sysdeps/powerpc/dl-procinfo.h +++ b/sysdeps/powerpc/dl-procinfo.h @@ -23,15 +23,15 @@ #include <ldsodefs.h> #include <sysdep.h> /* This defines the PPC_FEATURE_* macros. */ -/* There are 20 bits used, but they are bits 12..31. */ -#define _DL_HWCAP_FIRST 9 +/* There are 25 bits used, but they are bits 7..31. */ +#define _DL_HWCAP_FIRST 7 #define _DL_HWCAP_COUNT 32 /* These bits influence library search. */ #define HWCAP_IMPORTANT (PPC_FEATURE_HAS_ALTIVEC \ + PPC_FEATURE_HAS_DFP) -#define _DL_PLATFORMS_COUNT 7 +#define _DL_PLATFORMS_COUNT 8 #define _DL_FIRST_PLATFORM 32 /* Mask to filter out platforms. */ @@ -46,6 +46,7 @@ #define PPC_PLATFORM_POWER6 4 #define PPC_PLATFORM_CELL_BE 5 #define PPC_PLATFORM_POWER6X 6 +#define PPC_PLATFORM_POWER7 7 static inline const char * __attribute__ ((unused)) @@ -103,6 +104,9 @@ _dl_string_platform (const char *str) ++str; } break; + case '7': + ret = _DL_FIRST_PLATFORM + PPC_PLATFORM_POWER7; + break; default: return -1; } diff --git a/sysdeps/powerpc/fpu/bits/mathinline.h b/sysdeps/powerpc/fpu/bits/mathinline.h index 4d4612dac0..4fa4bcaf16 100644 --- a/sysdeps/powerpc/fpu/bits/mathinline.h +++ b/sysdeps/powerpc/fpu/bits/mathinline.h @@ -1,5 +1,5 @@ /* Inline math functions for powerpc. - Copyright (C) 1995, 1996, 1997, 1998, 1999, 2000, 2004, 2006, 2007 + Copyright (C) 1995, 1996, 1997, 1998, 1999, 2000, 2004, 2006, 2007, 2008 Free Software Foundation, Inc. This file is part of the GNU C Library. @@ -72,6 +72,14 @@ __NTH (__signbit (double __x)) __extension__ union { double __d; int __i[2]; } __u = { __d: __x }; return __u.__i[0] < 0; } +# ifdef __LONG_DOUBLE_128__ +__MATH_INLINE int +__NTH (__signbitl (long double __x)) +{ + __extension__ union { long double __d; int __i[4]; } __u = { __d: __x }; + return __u.__i[0] < 0; +} +# endif # endif #endif /* __USE_ISOC99 */ diff --git a/sysdeps/powerpc/powerpc32/dl-machine.c b/sysdeps/powerpc/powerpc32/dl-machine.c index fc2ce7c1d9..731d23956d 100644 --- a/sysdeps/powerpc/powerpc32/dl-machine.c +++ b/sysdeps/powerpc/powerpc32/dl-machine.c @@ -557,11 +557,6 @@ __process_machine_rela (struct link_map *map, } break; -#define CHECK_STATIC_TLS(map, sym_map) \ - do { \ - if (__builtin_expect ((sym_map)->l_tls_offset == NO_TLS_OFFSET, 0)) \ - _dl_allocate_static_tls (sym_map); \ - } while (0) #define DO_TLS_RELOC(suffix) \ case R_PPC_DTPREL##suffix: \ /* During relocation all TLS symbols are defined and used. \ diff --git a/sysdeps/powerpc/sysdep.h b/sysdeps/powerpc/sysdep.h index 2ae52b78c0..43edeb71eb 100644 --- a/sysdeps/powerpc/sysdep.h +++ b/sysdeps/powerpc/sysdep.h @@ -44,6 +44,8 @@ #define PPC_FEATURE_PA6T 0x00000800 /* PA Semi 6T Core */ #define PPC_FEATURE_HAS_DFP 0x00000400 /* Decimal FP Unit */ #define PPC_FEATURE_POWER6_EXT 0x00000200 /* P6 + mffgpr/mftgpr */ +#define PPC_FEATURE_HAS_VSX 0x00000100 /* P7 Vector Extension. */ +#define PPC_FEATURE_ARCH_2_06 0x00000080 /* ISA 2.06 */ #define PPC_FEATURE_970 (PPC_FEATURE_POWER4 + PPC_FEATURE_HAS_ALTIVEC) #ifdef __ASSEMBLER__ |