diff options
Diffstat (limited to 'sysdeps/ieee754/ldbl-opt')
-rw-r--r-- | sysdeps/ieee754/ldbl-opt/Makefile | 3 | ||||
-rw-r--r-- | sysdeps/ieee754/ldbl-opt/nldbl-pow10.c | 8 | ||||
-rw-r--r-- | sysdeps/ieee754/ldbl-opt/w_exp10_compat.c | 5 | ||||
-rw-r--r-- | sysdeps/ieee754/ldbl-opt/w_exp10l_compat.c | 14 |
4 files changed, 18 insertions, 12 deletions
diff --git a/sysdeps/ieee754/ldbl-opt/Makefile b/sysdeps/ieee754/ldbl-opt/Makefile index 81429d0ddd..ffc55d1d9a 100644 --- a/sysdeps/ieee754/ldbl-opt/Makefile +++ b/sysdeps/ieee754/ldbl-opt/Makefile @@ -29,7 +29,7 @@ libnldbl-calls = asprintf dprintf fprintf fscanf fwprintf fwscanf iovfscanf \ qecvt qfcvt qgcvt qecvt_r qfcvt_r \ isinf isnan finite signbit scalb log2 lgamma_r ceil \ significand acos asin atan atan2 cos sin tan cosh sinh \ - tanh acosh asinh atanh exp log log10 exp10 pow10 expm1 \ + tanh acosh asinh atanh exp log log10 exp10 expm1 \ log1p logb exp2 sqrt cbrt fabs floor j0 j1 y0 y1 erf erfc \ lgamma tgamma gamma rint nearbyint round trunc \ copysign fdim fmax fmin nextafter pow hypot fmod \ @@ -136,7 +136,6 @@ CFLAGS-nldbl-nexttoward.c = -fno-builtin-nexttoward -fno-builtin-nexttowardl CFLAGS-nldbl-nexttowardf.c = -fno-builtin-nexttowardf CFLAGS-nldbl-nextup.c = -fno-builtin-nextupl CFLAGS-nldbl-pow.c = -fno-builtin-powl -CFLAGS-nldbl-pow10.c = -fno-builtin-pow10l CFLAGS-nldbl-remainder.c = -fno-builtin-remainderl -fno-builtin-dreml CFLAGS-nldbl-remquo.c = -fno-builtin-remquol CFLAGS-nldbl-rint.c = -fno-builtin-rintl diff --git a/sysdeps/ieee754/ldbl-opt/nldbl-pow10.c b/sysdeps/ieee754/ldbl-opt/nldbl-pow10.c deleted file mode 100644 index 20ebf8d1bb..0000000000 --- a/sysdeps/ieee754/ldbl-opt/nldbl-pow10.c +++ /dev/null @@ -1,8 +0,0 @@ -#include "nldbl-compat.h" - -double -attribute_hidden -pow10l (double x) -{ - return pow10 (x); -} diff --git a/sysdeps/ieee754/ldbl-opt/w_exp10_compat.c b/sysdeps/ieee754/ldbl-opt/w_exp10_compat.c index 142a70bcd6..eb132cfbe5 100644 --- a/sysdeps/ieee754/ldbl-opt/w_exp10_compat.c +++ b/sysdeps/ieee754/ldbl-opt/w_exp10_compat.c @@ -2,5 +2,8 @@ #include <math/w_exp10_compat.c> #if LONG_DOUBLE_COMPAT(libm, GLIBC_2_1) compat_symbol (libm, __exp10, exp10l, GLIBC_2_1); -compat_symbol (libm, __pow10, pow10l, GLIBC_2_1); +# if SHLIB_COMPAT (libm, GLIBC_2_1, GLIBC_2_27) +strong_alias (__pow10, __pow10_pow10l) +compat_symbol (libm, __pow10_pow10l, pow10l, GLIBC_2_1); +# endif #endif diff --git a/sysdeps/ieee754/ldbl-opt/w_exp10l_compat.c b/sysdeps/ieee754/ldbl-opt/w_exp10l_compat.c index 8f2ccd3441..cf154882fe 100644 --- a/sysdeps/ieee754/ldbl-opt/w_exp10l_compat.c +++ b/sysdeps/ieee754/ldbl-opt/w_exp10l_compat.c @@ -1,6 +1,18 @@ #include <math_ldbl_opt.h> #undef weak_alias #define weak_alias(n,a) +#undef compat_symbol +#define compat_symbol(l,n,a,v) #include <math/w_exp10l_compat.c> long_double_symbol (libm, __exp10l, exp10l); -long_double_symbol (libm, __pow10l, pow10l); +#if SHLIB_COMPAT (libm, GLIBC_2_1, GLIBC_2_27) +/* compat_symbol was undefined and redefined above to avoid the + default pow10l compat symbol at version GLIBC_2_1 (as for ldbl-opt + configurations, that version should have the alias to exp10). So + it now needs to be redefined to define the compat symbol at version + LONG_DOUBLE_COMPAT_VERSION. */ +# undef compat_symbol +# define compat_symbol(lib, local, symbol, version) \ + compat_symbol_reference (lib, local, symbol, version) +compat_symbol (libm, __pow10l, pow10l, LONG_DOUBLE_COMPAT_VERSION); +#endif |