From 08ddd26814310e7c1b8c3956a6a0ac7aedea9cfd Mon Sep 17 00:00:00 2001 From: Wilco Dijkstra Date: Tue, 9 Jan 2024 15:32:08 +0000 Subject: math: remove exp10 wrappers Remove the error handling wrapper from exp10. This is very similar to the changes done to exp and exp2, except that we also need to handle pow10 and pow10l. Reviewed-by: Adhemerval Zanella --- sysdeps/ieee754/dbl-64/e_exp10.c | 13 ++++++++++--- sysdeps/ieee754/dbl-64/w_exp10.c | 1 + 2 files changed, 11 insertions(+), 3 deletions(-) create mode 100644 sysdeps/ieee754/dbl-64/w_exp10.c (limited to 'sysdeps/ieee754/dbl-64') diff --git a/sysdeps/ieee754/dbl-64/e_exp10.c b/sysdeps/ieee754/dbl-64/e_exp10.c index 0d4e428..225fc74 100644 --- a/sysdeps/ieee754/dbl-64/e_exp10.c +++ b/sysdeps/ieee754/dbl-64/e_exp10.c @@ -18,9 +18,9 @@ #include #include #include -#include -#include +#include #include +#include #include "math_config.h" #define N (1 << EXP_TABLE_BITS) @@ -75,7 +75,7 @@ special_case (uint64_t sbits, double_t tmp, uint64_t ki) /* Double-precision 10^x approximation. Largest observed error is ~0.513 ULP. */ double -__ieee754_exp10 (double x) +__exp10 (double x) { uint64_t ix = asuint64 (x); uint32_t abstop = (ix >> 52) & 0x7ff; @@ -144,4 +144,11 @@ __ieee754_exp10 (double x) return s * y + s; } +strong_alias (__exp10, __ieee754_exp10) libm_alias_finite (__ieee754_exp10, __exp10) +#if LIBM_SVID_COMPAT +versioned_symbol (libm, __exp10, exp10, GLIBC_2_39); +libm_alias_double_other (__exp10, exp10) +#else +libm_alias_double (__exp10, exp10) +#endif diff --git a/sysdeps/ieee754/dbl-64/w_exp10.c b/sysdeps/ieee754/dbl-64/w_exp10.c new file mode 100644 index 0000000..1cc8931 --- /dev/null +++ b/sysdeps/ieee754/dbl-64/w_exp10.c @@ -0,0 +1 @@ +/* Not needed. */ -- cgit v1.1