aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJoseph Myers <joseph@codesourcery.com>2017-11-28 17:18:20 +0000
committerJoseph Myers <joseph@codesourcery.com>2017-11-28 17:18:20 +0000
commit6940bd966b8b5cf26661c32eae88135143713ba6 (patch)
treeaa0e9a591e0aa6f4667612602ed5098d766ff419
parent22c69b6ad63dce90955d3a1d654dd152e7972fdd (diff)
downloadglibc-6940bd966b8b5cf26661c32eae88135143713ba6.zip
glibc-6940bd966b8b5cf26661c32eae88135143713ba6.tar.gz
glibc-6940bd966b8b5cf26661c32eae88135143713ba6.tar.bz2
Use libm_alias_double for s390.
Continuing the preparation for additional _FloatN / _FloatNx function aliases, this patch makes s390 libm function implementations use libm_alias_double to define function aliases. This allows sysdeps/unix/sysv/linux/s390/fpu/s_fma.c to be removed, as libm_alias_double handles symbol versioning for long double compat symbols. Tested with build-many-glibcs.py for s390-linux-gnu and s390x-linux-gnu that installed stripped shared libraries are unchanged by the patch. * sysdeps/s390/fpu/s_fma.c: Include <libm-alias-double.h>. [!__fma] (fma): Define using libm_alias_double. * sysdeps/unix/sysv/linux/s390/fpu/s_fma.c: Remove.
-rw-r--r--ChangeLog6
-rw-r--r--sysdeps/s390/fpu/s_fma.c8
-rw-r--r--sysdeps/unix/sysv/linux/s390/fpu/s_fma.c5
3 files changed, 8 insertions, 11 deletions
diff --git a/ChangeLog b/ChangeLog
index 9307f40..4b7e1f3 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,9 @@
+2017-11-28 Joseph Myers <joseph@codesourcery.com>
+
+ * sysdeps/s390/fpu/s_fma.c: Include <libm-alias-double.h>.
+ [!__fma] (fma): Define using libm_alias_double.
+ * sysdeps/unix/sysv/linux/s390/fpu/s_fma.c: Remove.
+
2017-11-28 Mike FABIAN <mfabian@redhat.com>
[BZ #22336]
diff --git a/sysdeps/s390/fpu/s_fma.c b/sysdeps/s390/fpu/s_fma.c
index fb7210b..3f37400 100644
--- a/sysdeps/s390/fpu/s_fma.c
+++ b/sysdeps/s390/fpu/s_fma.c
@@ -18,6 +18,7 @@
<http://www.gnu.org/licenses/>. */
#include <math.h>
+#include <libm-alias-double.h>
double
__fma (double x, double y, double z)
@@ -27,10 +28,5 @@ __fma (double x, double y, double z)
return r;
}
#ifndef __fma
-weak_alias (__fma, fma)
-#endif
-
-#ifdef NO_LONG_DOUBLE
-strong_alias (__fma, __fmal)
-weak_alias (__fmal, fmal)
+libm_alias_double (__fma, fma)
#endif
diff --git a/sysdeps/unix/sysv/linux/s390/fpu/s_fma.c b/sysdeps/unix/sysv/linux/s390/fpu/s_fma.c
deleted file mode 100644
index 2b2d505..0000000
--- a/sysdeps/unix/sysv/linux/s390/fpu/s_fma.c
+++ /dev/null
@@ -1,5 +0,0 @@
-#include <math_ldbl_opt.h>
-#include <sysdeps/s390/fpu/s_fma.c>
-#if LONG_DOUBLE_COMPAT(libm, GLIBC_2_1)
-compat_symbol (libm, __fma, fmal, GLIBC_2_1);
-#endif