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 /sysdeps/powerpc | |
parent | 83678f764bfc0b6b7a7427459f383aa55b2a1911 (diff) | |
download | glibc-45470df3787aa9e97db24635b8b33066531430ad.tar.gz glibc-45470df3787aa9e97db24635b8b33066531430ad.tar.xz glibc-45470df3787aa9e97db24635b8b33066531430ad.zip |
PowerPC: libm ABI update
Update for libm abilist for POWER6 and POWER7.
Diffstat (limited to 'sysdeps/powerpc')
-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 |
5 files changed, 32 insertions, 12 deletions
diff --git a/sysdeps/powerpc/powerpc32/power6/fpu/s_copysign.S b/sysdeps/powerpc/powerpc32/power6/fpu/s_copysign.S index beb5baea7a..e147ba78ab 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 7640d3ca9b..106cf543e8 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 71ee148149..fba4822900 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 0765d8a47a..b632773ebc 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 319d07f81b..7ab29482a7 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 |