]> git.ipfire.org Git - thirdparty/glibc.git/commitdiff
Use libm_alias_double for powerpc fabs, fma.
authorJoseph Myers <joseph@codesourcery.com>
Fri, 1 Dec 2017 22:23:28 +0000 (22:23 +0000)
committerJoseph Myers <joseph@codesourcery.com>
Fri, 1 Dec 2017 22:23:28 +0000 (22:23 +0000)
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 <libm-alias-double.h>.
(fabs): Define using libm_alias_double.
* sysdeps/powerpc/fpu/s_fma.S: Include <libm-alias-double.h>.
(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.

ChangeLog
sysdeps/powerpc/fpu/s_fabs.S
sysdeps/powerpc/fpu/s_fma.S
sysdeps/powerpc/powerpc32/fpu/s_fabs.S [deleted file]
sysdeps/powerpc/powerpc32/fpu/s_fma.S [deleted file]
sysdeps/powerpc/powerpc64/fpu/s_fabs.S [deleted file]
sysdeps/powerpc/powerpc64/fpu/s_fma.S [deleted file]

index 0a25edbc9faa7d4a267e37c743ffef8197295271..5b13d0dc205a83b0cc43ea72bc159b8a5fdf2f17 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,14 @@
+2017-12-01  Joseph Myers  <joseph@codesourcery.com>
+
+       * sysdeps/powerpc/fpu/s_fabs.S: Include <libm-alias-double.h>.
+       (fabs): Define using libm_alias_double.
+       * sysdeps/powerpc/fpu/s_fma.S: Include <libm-alias-double.h>.
+       (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.
+
 2017-12-01  Adhemerval Zanella  <adhemerval.zanella@linaro.org>
 
        * sysdeps/unix/sysv/linux/x86_64/x32/getcpu.c: Remove file.
index 87dc82eb282fbee824916b8ca8d7aa1048415f02..68f8801427d364b15158e0936deeb859d96e8f30 100644 (file)
@@ -17,6 +17,7 @@
    <http://www.gnu.org/licenses/>.  */
 
 #include <sysdep.h>
+#include <libm-alias-double.h>
 
 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
index 19d2717f516820597cf02d996dbb25bc24ca1a61..8a1a8e5780aa8312d3cb7b236e84b06e90a3d449 100644 (file)
@@ -17,6 +17,7 @@
    <http://www.gnu.org/licenses/>.  */
 
 #include <sysdep.h>
+#include <libm-alias-double.h>
 
 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 (file)
index 53d2130..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-#include <math_ldbl_opt.h>
-#include <sysdeps/powerpc/fpu/s_fabs.S>
-#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 (file)
index d40695c..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-#include <math_ldbl_opt.h>
-#include <sysdeps/powerpc/fpu/s_fma.S>
-#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 (file)
index 53d2130..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-#include <math_ldbl_opt.h>
-#include <sysdeps/powerpc/fpu/s_fabs.S>
-#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 (file)
index d40695c..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-#include <math_ldbl_opt.h>
-#include <sysdeps/powerpc/fpu/s_fma.S>
-#if LONG_DOUBLE_COMPAT(libm, GLIBC_2_1)
-compat_symbol (libm, __fma, fmal, GLIBC_2_1)
-#endif