diff options
author | Adhemerval Zanella <azanella@linux.vnet.ibm.com> | 2012-05-22 15:34:02 -0300 |
---|---|---|
committer | Adhemerval Zanella <azanella@linux.vnet.ibm.com> | 2012-05-22 15:34:02 -0300 |
commit | 45470df3787aa9e97db24635b8b33066531430ad (patch) | |
tree | 5a7d5b614e345892d169bbc008e504379bda2f12 | |
parent | 83678f764bfc0b6b7a7427459f383aa55b2a1911 (diff) | |
download | glibc-45470df3787aa9e97db24635b8b33066531430ad.zip glibc-45470df3787aa9e97db24635b8b33066531430ad.tar.gz glibc-45470df3787aa9e97db24635b8b33066531430ad.tar.bz2 |
PowerPC: libm ABI update
Update for libm abilist for POWER6 and POWER7.
-rw-r--r-- | ChangeLog | 11 | ||||
-rw-r--r-- | sysdeps/powerpc/powerpc32/power6/fpu/s_copysign.S | 9 | ||||
-rw-r--r-- | sysdeps/powerpc/powerpc32/power7/fpu/s_finite.S | 11 | ||||
-rw-r--r-- | sysdeps/powerpc/powerpc32/power7/fpu/s_logb.c | 8 | ||||
-rw-r--r-- | sysdeps/powerpc/powerpc64/power6/fpu/s_copysign.S | 7 | ||||
-rw-r--r-- | sysdeps/powerpc/powerpc64/power7/fpu/s_finite.S | 9 |
6 files changed, 43 insertions, 12 deletions
@@ -1,3 +1,14 @@ +2012-05-22 Adhemerval Zanella <azanella@linux.vnet.ibm.com> + + * sysdeps/powerpc/powerpc32/power6/fpu/s_copysign.S: Add compat symbol + copysignl for GLIBC_2_0. + * sysdeps/powerpc/powerpc32/power7/fpu/s_finite.S: Add compat symbol + finitel for GLIBC_2.0 and __finitel for GLIBC_2_1. + * sysdeps/powerpc/powerpc32/power7/fpu/s_logb.c: Add compat symbol + logbl for GLIBC_2_0. + * sysdeps/powerpc/powerpc64/power6/fpu/s_copysign.S: Likewise. + * sysdeps/powerpc/powerpc64/power7/fpu/s_finite.S: Likewise. + 2012-05-22 H.J. Lu <hongjiu.lu@intel.com> * sysdeps/unix/sysv/linux/x86_64/bits/fcntl.h: Don't include diff --git a/sysdeps/powerpc/powerpc32/power6/fpu/s_copysign.S b/sysdeps/powerpc/powerpc32/power6/fpu/s_copysign.S index beb5bae..e147ba7 100644 --- a/sysdeps/powerpc/powerpc32/power6/fpu/s_copysign.S +++ b/sysdeps/powerpc/powerpc32/power6/fpu/s_copysign.S @@ -47,9 +47,12 @@ strong_alias (__copysign, __copysignl) weak_alias (__copysign, copysignl) #endif -#ifndef IS_IN_libm -# if LONG_DOUBLE_COMPAT(libc, GLIBC_2_0) -compat_symbol (libc, __copysign, __copysignl, GLIBC_2_0); +#ifdef IS_IN_libm +# if LONG_DOUBLE_COMPAT (libm, GLIBC_2_0) +compat_symbol (libm, copysign, copysignl, GLIBC_2_0) +# endif +#else +# if LONG_DOUBLE_COMPAT (libc, GLIBC_2_0) compat_symbol (libc, copysign, copysignl, GLIBC_2_0); # endif #endif diff --git a/sysdeps/powerpc/powerpc32/power7/fpu/s_finite.S b/sysdeps/powerpc/powerpc32/power7/fpu/s_finite.S index 7640d3c..106cf54 100644 --- a/sysdeps/powerpc/powerpc32/power7/fpu/s_finite.S +++ b/sysdeps/powerpc/powerpc32/power7/fpu/s_finite.S @@ -79,8 +79,15 @@ strong_alias (__finite, __finitel) weak_alias (__finite, finitel) #endif -#ifndef IS_IN_libm -# if LONG_DOUBLE_COMPAT(libc, GLIBC_2_0) +#ifdef IS_IN_libm +# if LONG_DOUBLE_COMPAT (libm, GLIBC_2_0) +compat_symbol (libm, finite, finitel, GLIBC_2_0) +# endif +# if LONG_DOUBLE_COMPAT (libm, GLIBC_2_1) +compat_symbol (libm, __finite, __finitel, GLIBC_2_1) +# endif +#else +# if LONG_DOUBLE_COMPAT (libc, GLIBC_2_0) compat_symbol (libc, __finite, __finitel, GLIBC_2_0); compat_symbol (libc, finite, finitel, GLIBC_2_0); # endif diff --git a/sysdeps/powerpc/powerpc32/power7/fpu/s_logb.c b/sysdeps/powerpc/powerpc32/power7/fpu/s_logb.c index 71ee148..fba4822 100644 --- a/sysdeps/powerpc/powerpc32/power7/fpu/s_logb.c +++ b/sysdeps/powerpc/powerpc32/power7/fpu/s_logb.c @@ -16,7 +16,7 @@ License along with the GNU C Library; if not, see <http://www.gnu.org/licenses/>. */ -#include "math_private.h" +#include <math_ldbl_opt.h> /* This implementation avoids FP to INT conversions by using VSX bitwise instructions over FP values. */ @@ -66,10 +66,12 @@ __logb (double x) /* Test to avoid logb_downward (0.0) == -0.0. */ return ret == -0.0 ? 0.0 : ret; } - weak_alias (__logb, logb) - #ifdef NO_LONG_DOUBLE strong_alias (__logb, __logbl) weak_alias (__logb, logbl) #endif + +#if LONG_DOUBLE_COMPAT (libm, GLIBC_2_0) +compat_symbol (libm, logb, logbl, GLIBC_2_0); +#endif diff --git a/sysdeps/powerpc/powerpc64/power6/fpu/s_copysign.S b/sysdeps/powerpc/powerpc64/power6/fpu/s_copysign.S index 0765d8a..b632773 100644 --- a/sysdeps/powerpc/powerpc64/power6/fpu/s_copysign.S +++ b/sysdeps/powerpc/powerpc64/power6/fpu/s_copysign.S @@ -47,9 +47,12 @@ strong_alias (__copysign, __copysignl) weak_alias (__copysign, copysignl) #endif -#ifndef IS_IN_libm +#ifdef IS_IN_libm +# if LONG_DOUBLE_COMPAT (libm, GLIBC_2_0) +compat_symbol (libm, copysign, copysignl, GLIBC_2_0) +# endif +#else # if LONG_DOUBLE_COMPAT(libc, GLIBC_2_0) -compat_symbol (libc, __copysign, __copysignl, GLIBC_2_0); compat_symbol (libc, copysign, copysignl, GLIBC_2_0); # endif #endif diff --git a/sysdeps/powerpc/powerpc64/power7/fpu/s_finite.S b/sysdeps/powerpc/powerpc64/power7/fpu/s_finite.S index 319d07f..7ab2948 100644 --- a/sysdeps/powerpc/powerpc64/power7/fpu/s_finite.S +++ b/sysdeps/powerpc/powerpc64/power7/fpu/s_finite.S @@ -59,8 +59,13 @@ strong_alias (__finite, __finitef) hidden_def (__finitef) weak_alias (__finitef, finitef) -#ifndef IS_IN_libm -# if LONG_DOUBLE_COMPAT(libc, GLIBC_2_0) +#ifdef IS_IN_libm +# if LONG_DOUBLE_COMPAT (libm, GLIBC_2_0) +compat_symbol (libm, __finite, __finitel, GLIBC_2_0) +compat_symbol (libm, finite, finitel, GLIBC_2_0) +# endif +#else +# if LONG_DOUBLE_COMPAT (libc, GLIBC_2_0) compat_symbol (libc, __finite, __finitel, GLIBC_2_0); compat_symbol (libc, finite, finitel, GLIBC_2_0); # endif |