aboutsummaryrefslogtreecommitdiff
path: root/sysdeps/ieee754
diff options
context:
space:
mode:
authorJoseph Myers <joseph@codesourcery.com>2017-10-03 20:56:46 +0000
committerJoseph Myers <joseph@codesourcery.com>2017-10-03 20:56:46 +0000
commit39793865ec91775b4bf6e487c3e83b0d79517771 (patch)
tree77d263ad1b693d8530586c42db59f2031a83fd6f /sysdeps/ieee754
parentaa0235dfdebffe9b338deba51f3ba563ee9b433d (diff)
downloadglibc-39793865ec91775b4bf6e487c3e83b0d79517771.zip
glibc-39793865ec91775b4bf6e487c3e83b0d79517771.tar.gz
glibc-39793865ec91775b4bf6e487c3e83b0d79517771.tar.bz2
Use libm_alias_double for dbl-64 frexp.
This patch makes dbl-64 frexp use libm_alias_double. Both the dbl-64 and dbl-64/wordsize-64 versions are changed; the ldbl-opt version is made to define only the libc frexpl compat symbol, now the generic code handles the libm compat symbol automatically. Tested for x86_64, and verified with build-many-glibcs.py that installed stripped shared libraries are unchanged by this patch. * sysdeps/ieee754/dbl-64/s_frexp.c: Include <libm-alias-double.h>. (frexp): Define using libm_alias_double. * sysdeps/ieee754/dbl-64/wordsize-64/s_frexp.c: Include <libm-alias-double.h>. (frexp): Define using libm_alias_double. * sysdeps/ieee754/ldbl-opt/s_frexp.c (frexpl): Only define libc compat symbol here.
Diffstat (limited to 'sysdeps/ieee754')
-rw-r--r--sysdeps/ieee754/dbl-64/s_frexp.c7
-rw-r--r--sysdeps/ieee754/dbl-64/wordsize-64/s_frexp.c7
-rw-r--r--sysdeps/ieee754/ldbl-opt/s_frexp.c6
3 files changed, 5 insertions, 15 deletions
diff --git a/sysdeps/ieee754/dbl-64/s_frexp.c b/sysdeps/ieee754/dbl-64/s_frexp.c
index 874214e..c96a869 100644
--- a/sysdeps/ieee754/dbl-64/s_frexp.c
+++ b/sysdeps/ieee754/dbl-64/s_frexp.c
@@ -26,6 +26,7 @@ static char rcsid[] = "$NetBSD: s_frexp.c,v 1.9 1995/05/10 20:47:24 jtc Exp $";
#include <math.h>
#include <math_private.h>
+#include <libm-alias-double.h>
static const double
two54 = 1.80143985094819840000e+16; /* 0x43500000, 0x00000000 */
@@ -51,8 +52,4 @@ __frexp (double x, int *eptr)
SET_HIGH_WORD (x, hx);
return x;
}
-weak_alias (__frexp, frexp)
-#ifdef NO_LONG_DOUBLE
-strong_alias (__frexp, __frexpl)
-weak_alias (__frexp, frexpl)
-#endif
+libm_alias_double (__frexp, frexp)
diff --git a/sysdeps/ieee754/dbl-64/wordsize-64/s_frexp.c b/sysdeps/ieee754/dbl-64/wordsize-64/s_frexp.c
index 5e8bc64..f560426 100644
--- a/sysdeps/ieee754/dbl-64/wordsize-64/s_frexp.c
+++ b/sysdeps/ieee754/dbl-64/wordsize-64/s_frexp.c
@@ -19,6 +19,7 @@
#include <inttypes.h>
#include <math.h>
#include <math_private.h>
+#include <libm-alias-double.h>
/*
* for non-zero, finite x
@@ -62,8 +63,4 @@ __frexp (double x, int *eptr)
*eptr = e;
return x;
}
-weak_alias (__frexp, frexp)
-#ifdef NO_LONG_DOUBLE
-strong_alias (__frexp, __frexpl)
-weak_alias (__frexp, frexpl)
-#endif
+libm_alias_double (__frexp, frexp)
diff --git a/sysdeps/ieee754/ldbl-opt/s_frexp.c b/sysdeps/ieee754/ldbl-opt/s_frexp.c
index 0e3a5e0..b0bfde3 100644
--- a/sysdeps/ieee754/ldbl-opt/s_frexp.c
+++ b/sysdeps/ieee754/ldbl-opt/s_frexp.c
@@ -1,9 +1,5 @@
#include <math_ldbl_opt.h>
#include <sysdeps/ieee754/dbl-64/s_frexp.c>
-#if IS_IN (libm)
-# if LONG_DOUBLE_COMPAT(libm, GLIBC_2_0)
-compat_symbol (libm, __frexp, frexpl, GLIBC_2_0);
-# endif
-#elif LONG_DOUBLE_COMPAT(libc, GLIBC_2_0)
+#if LONG_DOUBLE_COMPAT (libc, GLIBC_2_0)
compat_symbol (libc, __frexp, frexpl, GLIBC_2_0);
#endif