From ec2cf3f4445af7d729308350edf1e890eeebdd1d Mon Sep 17 00:00:00 2001 From: Joseph Myers Date: Fri, 1 Dec 2017 22:23:28 +0000 Subject: Use libm_alias_double for powerpc fabs, fma. Continuing the preparation for additional _FloatN / _FloatNx function aliases, this patch makes powerpc fabs and fma use libm_alias_double to define function aliases. This brings in automatic symbol versioning compat handling, so the powerpc32 and powerpc64 wrappers that added such handling to the generic sysdeps/powerpc/fpu versions are removed as no longer required (there are no sysdeps directory ordering issues that would necessitate keeping trivial wrappers there). Tested with build-many-glibcs.py that installed stripped shared libraries are unchanged for all its hard-float powerpc configurations. * sysdeps/powerpc/fpu/s_fabs.S: Include . (fabs): Define using libm_alias_double. * sysdeps/powerpc/fpu/s_fma.S: Include . (fma): Define using libm_alias_double. * sysdeps/powerpc/powerpc32/fpu/s_fabs.S: Remove file. * sysdeps/powerpc/powerpc32/fpu/s_fma.S: Likewise. * sysdeps/powerpc/powerpc64/fpu/s_fabs.S: Likewise. * sysdeps/powerpc/powerpc64/fpu/s_fma.S: Likewise. --- sysdeps/powerpc/fpu/s_fabs.S | 8 ++------ sysdeps/powerpc/fpu/s_fma.S | 8 ++------ sysdeps/powerpc/powerpc32/fpu/s_fabs.S | 5 ----- sysdeps/powerpc/powerpc32/fpu/s_fma.S | 5 ----- sysdeps/powerpc/powerpc64/fpu/s_fabs.S | 5 ----- sysdeps/powerpc/powerpc64/fpu/s_fma.S | 5 ----- 6 files changed, 4 insertions(+), 32 deletions(-) delete mode 100644 sysdeps/powerpc/powerpc32/fpu/s_fabs.S delete mode 100644 sysdeps/powerpc/powerpc32/fpu/s_fma.S delete mode 100644 sysdeps/powerpc/powerpc64/fpu/s_fabs.S delete mode 100644 sysdeps/powerpc/powerpc64/fpu/s_fma.S (limited to 'sysdeps') diff --git a/sysdeps/powerpc/fpu/s_fabs.S b/sysdeps/powerpc/fpu/s_fabs.S index 87dc82eb28..68f8801427 100644 --- a/sysdeps/powerpc/fpu/s_fabs.S +++ b/sysdeps/powerpc/fpu/s_fabs.S @@ -17,6 +17,7 @@ . */ #include +#include ENTRY(__fabs) /* double [f1] fabs (double [f1] x); */ @@ -24,13 +25,8 @@ ENTRY(__fabs) blr END(__fabs) -weak_alias (__fabs,fabs) +libm_alias_double (__fabs, fabs) /* It turns out that it's safe to use this code even for single-precision. */ strong_alias(__fabs,__fabsf) weak_alias (__fabs,fabsf) - -#ifdef NO_LONG_DOUBLE -weak_alias (__fabs,__fabsl) -weak_alias (__fabs,fabsl) -#endif diff --git a/sysdeps/powerpc/fpu/s_fma.S b/sysdeps/powerpc/fpu/s_fma.S index 19d2717f51..8a1a8e5780 100644 --- a/sysdeps/powerpc/fpu/s_fma.S +++ b/sysdeps/powerpc/fpu/s_fma.S @@ -17,6 +17,7 @@ . */ #include +#include ENTRY_TOCLESS(__fma) /* double [f1] fma (double [f1] x, double [f2] y, double [f3] z); */ @@ -24,9 +25,4 @@ ENTRY_TOCLESS(__fma) blr END(__fma) -weak_alias (__fma,fma) - -#ifdef NO_LONG_DOUBLE -weak_alias (__fma,__fmal) -weak_alias (__fma,fmal) -#endif +libm_alias_double (__fma, fma) diff --git a/sysdeps/powerpc/powerpc32/fpu/s_fabs.S b/sysdeps/powerpc/powerpc32/fpu/s_fabs.S deleted file mode 100644 index 53d21301ee..0000000000 --- a/sysdeps/powerpc/powerpc32/fpu/s_fabs.S +++ /dev/null @@ -1,5 +0,0 @@ -#include -#include -#if LONG_DOUBLE_COMPAT(libm, GLIBC_2_0) -compat_symbol (libm, __fabs, fabsl, GLIBC_2_0) -#endif diff --git a/sysdeps/powerpc/powerpc32/fpu/s_fma.S b/sysdeps/powerpc/powerpc32/fpu/s_fma.S deleted file mode 100644 index d40695c633..0000000000 --- a/sysdeps/powerpc/powerpc32/fpu/s_fma.S +++ /dev/null @@ -1,5 +0,0 @@ -#include -#include -#if LONG_DOUBLE_COMPAT(libm, GLIBC_2_1) -compat_symbol (libm, __fma, fmal, GLIBC_2_1) -#endif diff --git a/sysdeps/powerpc/powerpc64/fpu/s_fabs.S b/sysdeps/powerpc/powerpc64/fpu/s_fabs.S deleted file mode 100644 index 53d21301ee..0000000000 --- a/sysdeps/powerpc/powerpc64/fpu/s_fabs.S +++ /dev/null @@ -1,5 +0,0 @@ -#include -#include -#if LONG_DOUBLE_COMPAT(libm, GLIBC_2_0) -compat_symbol (libm, __fabs, fabsl, GLIBC_2_0) -#endif diff --git a/sysdeps/powerpc/powerpc64/fpu/s_fma.S b/sysdeps/powerpc/powerpc64/fpu/s_fma.S deleted file mode 100644 index d40695c633..0000000000 --- a/sysdeps/powerpc/powerpc64/fpu/s_fma.S +++ /dev/null @@ -1,5 +0,0 @@ -#include -#include -#if LONG_DOUBLE_COMPAT(libm, GLIBC_2_1) -compat_symbol (libm, __fma, fmal, GLIBC_2_1) -#endif -- cgit 1.4.1