diff options
author | Joseph Myers <josmyers@redhat.com> | 2024-06-17 16:31:49 +0000 |
---|---|---|
committer | Joseph Myers <josmyers@redhat.com> | 2024-06-17 16:31:49 +0000 |
commit | 7ec903e028271d029818378fd60ddaf6b76b89ac (patch) | |
tree | 29840403dc63c9c633e18e1d6607280ae59ce601 /sysdeps | |
parent | 55eb99e9a9d840ba452b128be14d6529c2dde039 (diff) | |
download | glibc-7ec903e028271d029818378fd60ddaf6b76b89ac.zip glibc-7ec903e028271d029818378fd60ddaf6b76b89ac.tar.gz glibc-7ec903e028271d029818378fd60ddaf6b76b89ac.tar.bz2 |
Implement C23 exp2m1, exp10m1
C23 adds various <math.h> function families originally defined in TS
18661-4. Add the exp2m1 and exp10m1 functions (exp2(x)-1 and
exp10(x)-1, like expm1).
As with other such functions, these use type-generic templates that
could be replaced with faster and more accurate type-specific
implementations in future. Test inputs are copied from those for
expm1, plus some additions close to the overflow threshold (copied
from exp2 and exp10) and also some near the underflow threshold.
exp2m1 has the unusual property of having an input (M_MAX_EXP) where
whether the function overflows (under IEEE semantics) depends on the
rounding mode. Although these could reasonably be XFAILed in the
testsuite (as we do in some cases for arguments very close to a
function's overflow threshold when an error of a few ulps in the
implementation can result in the implementation not agreeing with an
ideal one on whether overflow takes place - the testsuite isn't smart
enough to handle this automatically), since these functions aren't
required to be correctly rounding, I made the implementation check for
and handle this case specially.
The Makefile ordering expected by lint-makefiles for the new functions
is a bit peculiar, but I implemented it in this patch so that the test
passes; I don't know why log2 also needed moving in one Makefile
variable setting when it didn't in my previous patches, but the
failure showed a different place was expected for that function as
well.
The powerpc64le IFUNC setup seems not to be as self-contained as one
might hope; it shouldn't be necessary to add IFUNCs for new functions
such as these simply to get them building, but without setting up
IFUNCs for the new functions, there were undefined references to
__GI___expm1f128 (that IFUNC machinery results in no such function
being defined, but doesn't stop include/math.h from doing the
redirection resulting in the exp2m1f128 and exp10m1f128
implementations expecting to call it).
Tested for x86_64 and x86, and with build-many-glibcs.py.
Diffstat (limited to 'sysdeps')
42 files changed, 589 insertions, 1 deletions
diff --git a/sysdeps/i386/i686/fpu/multiarch/libm-test-ulps b/sysdeps/i386/i686/fpu/multiarch/libm-test-ulps index 8446b81..0d441dc 100644 --- a/sysdeps/i386/i686/fpu/multiarch/libm-test-ulps +++ b/sysdeps/i386/i686/fpu/multiarch/libm-test-ulps @@ -1156,6 +1156,30 @@ float: 1 float128: 3 ldouble: 2 +Function: "exp10m1": +double: 1 +float: 1 +float128: 1 +ldouble: 1 + +Function: "exp10m1_downward": +double: 1 +float: 1 +float128: 3 +ldouble: 2 + +Function: "exp10m1_towardzero": +double: 1 +float: 1 +float128: 3 +ldouble: 2 + +Function: "exp10m1_upward": +double: 3 +float: 1 +float128: 3 +ldouble: 2 + Function: "exp2": double: 1 float128: 1 @@ -1175,6 +1199,30 @@ float: 1 float128: 2 ldouble: 1 +Function: "exp2m1": +double: 1 +float: 1 +float128: 1 +ldouble: 1 + +Function: "exp2m1_downward": +double: 2 +float: 1 +float128: 2 +ldouble: 3 + +Function: "exp2m1_towardzero": +double: 2 +float: 1 +float128: 2 +ldouble: 3 + +Function: "exp2m1_upward": +double: 1 +float: 1 +float128: 2 +ldouble: 3 + Function: "exp_downward": double: 1 float: 1 diff --git a/sysdeps/ieee754/ldbl-128ibm-compat/Versions b/sysdeps/ieee754/ldbl-128ibm-compat/Versions index 696d132..bd73016 100644 --- a/sysdeps/ieee754/ldbl-128ibm-compat/Versions +++ b/sysdeps/ieee754/ldbl-128ibm-compat/Versions @@ -138,6 +138,8 @@ libm { __fminimum_mag_numieee128; } GLIBC_2.40 { + __exp2m1ieee128; + __exp10m1ieee128; __log2p1ieee128; __log10p1ieee128; __logp1ieee128; diff --git a/sysdeps/ieee754/ldbl-opt/Makefile b/sysdeps/ieee754/ldbl-opt/Makefile index d8cceb5..14fd715 100644 --- a/sysdeps/ieee754/ldbl-opt/Makefile +++ b/sysdeps/ieee754/ldbl-opt/Makefile @@ -61,8 +61,10 @@ libnldbl-calls = \ erf \ erfc \ exp \ + exp10m1 \ exp2 \ exp10 \ + exp2m1 \ expm1 \ fabs \ fadd \ @@ -296,7 +298,9 @@ CFLAGS-nldbl-erf.c = -fno-builtin-erfl CFLAGS-nldbl-erfc.c = -fno-builtin-erfcl CFLAGS-nldbl-exp.c = -fno-builtin-expl CFLAGS-nldbl-exp10.c = -fno-builtin-exp10l +CFLAGS-nldbl-exp10m1.c = -fno-builtin-exp10m1l CFLAGS-nldbl-exp2.c = -fno-builtin-exp2l +CFLAGS-nldbl-exp2m1.c = -fno-builtin-exp2m1l CFLAGS-nldbl-expm1.c = -fno-builtin-expm1l CFLAGS-nldbl-fabs.c = -fno-builtin-fabsl CFLAGS-nldbl-fadd.c = -fno-builtin-faddl diff --git a/sysdeps/ieee754/ldbl-opt/nldbl-exp10m1.c b/sysdeps/ieee754/ldbl-opt/nldbl-exp10m1.c new file mode 100644 index 0000000..3495263 --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/nldbl-exp10m1.c @@ -0,0 +1,8 @@ +#include "nldbl-compat.h" + +double +attribute_hidden +exp10m1l (double x) +{ + return exp10m1 (x); +} diff --git a/sysdeps/ieee754/ldbl-opt/nldbl-exp2m1.c b/sysdeps/ieee754/ldbl-opt/nldbl-exp2m1.c new file mode 100644 index 0000000..2bc6066 --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/nldbl-exp2m1.c @@ -0,0 +1,8 @@ +#include "nldbl-compat.h" + +double +attribute_hidden +exp2m1l (double x) +{ + return exp2m1 (x); +} diff --git a/sysdeps/mach/hurd/i386/libm.abilist b/sysdeps/mach/hurd/i386/libm.abilist index c999fc0..1811377 100644 --- a/sysdeps/mach/hurd/i386/libm.abilist +++ b/sysdeps/mach/hurd/i386/libm.abilist @@ -1181,6 +1181,22 @@ GLIBC_2.35 fsqrt F GLIBC_2.35 fsqrtl F GLIBC_2.35 hypot F GLIBC_2.35 hypotf F +GLIBC_2.40 exp10m1 F +GLIBC_2.40 exp10m1f F +GLIBC_2.40 exp10m1f128 F +GLIBC_2.40 exp10m1f32 F +GLIBC_2.40 exp10m1f32x F +GLIBC_2.40 exp10m1f64 F +GLIBC_2.40 exp10m1f64x F +GLIBC_2.40 exp10m1l F +GLIBC_2.40 exp2m1 F +GLIBC_2.40 exp2m1f F +GLIBC_2.40 exp2m1f128 F +GLIBC_2.40 exp2m1f32 F +GLIBC_2.40 exp2m1f32x F +GLIBC_2.40 exp2m1f64 F +GLIBC_2.40 exp2m1f64x F +GLIBC_2.40 exp2m1l F GLIBC_2.40 log10p1 F GLIBC_2.40 log10p1f F GLIBC_2.40 log10p1f128 F diff --git a/sysdeps/mach/hurd/x86_64/libm.abilist b/sysdeps/mach/hurd/x86_64/libm.abilist index 256717f..d4c087a 100644 --- a/sysdeps/mach/hurd/x86_64/libm.abilist +++ b/sysdeps/mach/hurd/x86_64/libm.abilist @@ -1038,6 +1038,22 @@ GLIBC_2.38 ynf32x F GLIBC_2.38 ynf64 F GLIBC_2.38 ynf64x F GLIBC_2.38 ynl F +GLIBC_2.40 exp10m1 F +GLIBC_2.40 exp10m1f F +GLIBC_2.40 exp10m1f128 F +GLIBC_2.40 exp10m1f32 F +GLIBC_2.40 exp10m1f32x F +GLIBC_2.40 exp10m1f64 F +GLIBC_2.40 exp10m1f64x F +GLIBC_2.40 exp10m1l F +GLIBC_2.40 exp2m1 F +GLIBC_2.40 exp2m1f F +GLIBC_2.40 exp2m1f128 F +GLIBC_2.40 exp2m1f32 F +GLIBC_2.40 exp2m1f32x F +GLIBC_2.40 exp2m1f64 F +GLIBC_2.40 exp2m1f64x F +GLIBC_2.40 exp2m1l F GLIBC_2.40 log10p1 F GLIBC_2.40 log10p1f F GLIBC_2.40 log10p1f128 F diff --git a/sysdeps/powerpc/powerpc64/le/fpu/multiarch/Makefile b/sysdeps/powerpc/powerpc64/le/fpu/multiarch/Makefile index 43d9e5f..6d74f09 100644 --- a/sysdeps/powerpc/powerpc64/le/fpu/multiarch/Makefile +++ b/sysdeps/powerpc/powerpc64/le/fpu/multiarch/Makefile @@ -91,7 +91,8 @@ gen-libm-f128-ifunc-routines = \ e_expf128 e_fmodf128 e_hypotf128 e_j0f128 e_j1f128 e_jnf128 \ e_lgammaf128_r e_logf128 e_log10f128 e_powf128 e_remainderf128 \ e_sinhf128 e_sqrtf128 e_gammaf128_r e_ilogbf128 k_tanf128 s_asinhf128 \ - s_atanf128 s_cbrtf128 s_ceilf128 s_cosf128 s_erff128 s_expm1f128 \ + s_atanf128 s_cbrtf128 s_ceilf128 s_cosf128 s_erff128 s_exp10m1f128 \ + s_exp2m1f128 s_expm1f128 \ s_fabsf128 s_floorf128 s_log1pf128 s_logbf128 \ s_rintf128 s_scalblnf128 s_sinf128 s_tanf128 \ s_tanhf128 s_truncf128 s_remquof128 e_log2f128 \ @@ -253,7 +254,9 @@ CFLAGS-s_erff128-ifunc.c += -fno-builtin-erff64x CFLAGS-s_erfcf128-ifunc.c += -fno-builtin-erfcf64x CFLAGS-e_expf128-ifunc.c += -fno-builtin-expf64x CFLAGS-w_exp10f128-ifunc.c += -fno-builtin-exp10f64x +CFLAGS-s_exp10m1f128-ifunc.c += -fno-builtin-exp10m1f64x CFLAGS-e_exp2f128-ifunc.c += -fno-builtin-exp2f64x +CFLAGS-s_exp2m1f128-ifunc.c += -fno-builtin-exp2m1f64x CFLAGS-s_expm1f128-ifunc.c += -fno-builtin-expm1f64x CFLAGS-s_fabsf128-ifunc.c += -fno-builtin-fabsf64x CFLAGS-s_faddf128-ifunc.c += -fno-builtin-f32addf64x diff --git a/sysdeps/powerpc/powerpc64/le/fpu/multiarch/float128_private.h b/sysdeps/powerpc/powerpc64/le/fpu/multiarch/float128_private.h index 22038bb..173cfca 100644 --- a/sysdeps/powerpc/powerpc64/le/fpu/multiarch/float128_private.h +++ b/sysdeps/powerpc/powerpc64/le/fpu/multiarch/float128_private.h @@ -59,6 +59,8 @@ F128_REDIR (__cosf128) F128_REDIR (__erfcf128) F128_REDIR (__erff128) F128_REDIR (__expf128) +F128_REDIR (__exp10m1f128); +F128_REDIR (__exp2m1f128); F128_REDIR (__expm1f128) F128_REDIR (__fabsf128) F128_REDIR (__fdimf128) diff --git a/sysdeps/powerpc/powerpc64/le/fpu/multiarch/math-type-macros-float128.h b/sysdeps/powerpc/powerpc64/le/fpu/multiarch/math-type-macros-float128.h index 0506db0..39241dc 100644 --- a/sysdeps/powerpc/powerpc64/le/fpu/multiarch/math-type-macros-float128.h +++ b/sysdeps/powerpc/powerpc64/le/fpu/multiarch/math-type-macros-float128.h @@ -81,6 +81,8 @@ F128_REDIR (__crealf128); F128_REDIR (__conjf128); F128_REDIR (__cprojf128); F128_REDIR (__cabsf128); +F128_REDIR (__exp10m1f128); +F128_REDIR (__exp2m1f128); F128_REDIR (__fdimf128); F128_REDIR (__fminf128); F128_REDIR (__fmaxf128); @@ -89,6 +91,7 @@ F128_REDIR (__llogbf128); F128_REDIR (__log2f128); F128_REDIR (__exp10f128); F128_REDIR (__exp2f128); +F128_REDIR (__expm1f128); F128_REDIR (__j0f128); F128_REDIR (__j1f128); F128_REDIR (__jnf128); diff --git a/sysdeps/unix/sysv/linux/aarch64/libm.abilist b/sysdeps/unix/sysv/linux/aarch64/libm.abilist index 5737e6d..024cb8d 100644 --- a/sysdeps/unix/sysv/linux/aarch64/libm.abilist +++ b/sysdeps/unix/sysv/linux/aarch64/libm.abilist @@ -1149,6 +1149,22 @@ GLIBC_2.35 hypotf F GLIBC_2.38 fmod F GLIBC_2.38 fmodf F GLIBC_2.39 exp10 F +GLIBC_2.40 exp10m1 F +GLIBC_2.40 exp10m1f F +GLIBC_2.40 exp10m1f128 F +GLIBC_2.40 exp10m1f32 F +GLIBC_2.40 exp10m1f32x F +GLIBC_2.40 exp10m1f64 F +GLIBC_2.40 exp10m1f64x F +GLIBC_2.40 exp10m1l F +GLIBC_2.40 exp2m1 F +GLIBC_2.40 exp2m1f F +GLIBC_2.40 exp2m1f128 F +GLIBC_2.40 exp2m1f32 F +GLIBC_2.40 exp2m1f32x F +GLIBC_2.40 exp2m1f64 F +GLIBC_2.40 exp2m1f64x F +GLIBC_2.40 exp2m1l F GLIBC_2.40 log10p1 F GLIBC_2.40 log10p1f F GLIBC_2.40 log10p1f128 F diff --git a/sysdeps/unix/sysv/linux/alpha/libm.abilist b/sysdeps/unix/sysv/linux/alpha/libm.abilist index f0e96fb..4b7f756 100644 --- a/sysdeps/unix/sysv/linux/alpha/libm.abilist +++ b/sysdeps/unix/sysv/linux/alpha/libm.abilist @@ -1308,6 +1308,22 @@ GLIBC_2.4 truncl F GLIBC_2.4 y0l F GLIBC_2.4 y1l F GLIBC_2.4 ynl F +GLIBC_2.40 exp10m1 F +GLIBC_2.40 exp10m1f F +GLIBC_2.40 exp10m1f128 F +GLIBC_2.40 exp10m1f32 F +GLIBC_2.40 exp10m1f32x F +GLIBC_2.40 exp10m1f64 F +GLIBC_2.40 exp10m1f64x F +GLIBC_2.40 exp10m1l F +GLIBC_2.40 exp2m1 F +GLIBC_2.40 exp2m1f F +GLIBC_2.40 exp2m1f128 F +GLIBC_2.40 exp2m1f32 F +GLIBC_2.40 exp2m1f32x F +GLIBC_2.40 exp2m1f64 F +GLIBC_2.40 exp2m1f64x F +GLIBC_2.40 exp2m1l F GLIBC_2.40 log10p1 F GLIBC_2.40 log10p1f F GLIBC_2.40 log10p1f128 F diff --git a/sysdeps/unix/sysv/linux/arc/libm.abilist b/sysdeps/unix/sysv/linux/arc/libm.abilist index 315a453..f6eb7a5 100644 --- a/sysdeps/unix/sysv/linux/arc/libm.abilist +++ b/sysdeps/unix/sysv/linux/arc/libm.abilist @@ -757,6 +757,18 @@ GLIBC_2.35 fminimumf64 F GLIBC_2.35 fminimuml F GLIBC_2.35 fsqrt F GLIBC_2.35 fsqrtl F +GLIBC_2.40 exp10m1 F +GLIBC_2.40 exp10m1f F +GLIBC_2.40 exp10m1f32 F +GLIBC_2.40 exp10m1f32x F +GLIBC_2.40 exp10m1f64 F +GLIBC_2.40 exp10m1l F +GLIBC_2.40 exp2m1 F +GLIBC_2.40 exp2m1f F +GLIBC_2.40 exp2m1f32 F +GLIBC_2.40 exp2m1f32x F +GLIBC_2.40 exp2m1f64 F +GLIBC_2.40 exp2m1l F GLIBC_2.40 log10p1 F GLIBC_2.40 log10p1f F GLIBC_2.40 log10p1f32 F diff --git a/sysdeps/unix/sysv/linux/arm/be/libm.abilist b/sysdeps/unix/sysv/linux/arm/be/libm.abilist index 20da5b7..78540e9 100644 --- a/sysdeps/unix/sysv/linux/arm/be/libm.abilist +++ b/sysdeps/unix/sysv/linux/arm/be/libm.abilist @@ -848,6 +848,18 @@ GLIBC_2.4 y1l F GLIBC_2.4 yn F GLIBC_2.4 ynf F GLIBC_2.4 ynl F +GLIBC_2.40 exp10m1 F +GLIBC_2.40 exp10m1f F +GLIBC_2.40 exp10m1f32 F +GLIBC_2.40 exp10m1f32x F +GLIBC_2.40 exp10m1f64 F +GLIBC_2.40 exp10m1l F +GLIBC_2.40 exp2m1 F +GLIBC_2.40 exp2m1f F +GLIBC_2.40 exp2m1f32 F +GLIBC_2.40 exp2m1f32x F +GLIBC_2.40 exp2m1f64 F +GLIBC_2.40 exp2m1l F GLIBC_2.40 log10p1 F GLIBC_2.40 log10p1f F GLIBC_2.40 log10p1f32 F diff --git a/sysdeps/unix/sysv/linux/arm/le/libm.abilist b/sysdeps/unix/sysv/linux/arm/le/libm.abilist index 20da5b7..78540e9 100644 --- a/sysdeps/unix/sysv/linux/arm/le/libm.abilist +++ b/sysdeps/unix/sysv/linux/arm/le/libm.abilist @@ -848,6 +848,18 @@ GLIBC_2.4 y1l F GLIBC_2.4 yn F GLIBC_2.4 ynf F GLIBC_2.4 ynl F +GLIBC_2.40 exp10m1 F +GLIBC_2.40 exp10m1f F +GLIBC_2.40 exp10m1f32 F +GLIBC_2.40 exp10m1f32x F +GLIBC_2.40 exp10m1f64 F +GLIBC_2.40 exp10m1l F +GLIBC_2.40 exp2m1 F +GLIBC_2.40 exp2m1f F +GLIBC_2.40 exp2m1f32 F +GLIBC_2.40 exp2m1f32x F +GLIBC_2.40 exp2m1f64 F +GLIBC_2.40 exp2m1l F GLIBC_2.40 log10p1 F GLIBC_2.40 log10p1f F GLIBC_2.40 log10p1f32 F diff --git a/sysdeps/unix/sysv/linux/csky/libm.abilist b/sysdeps/unix/sysv/linux/csky/libm.abilist index a8181e8..7a68784 100644 --- a/sysdeps/unix/sysv/linux/csky/libm.abilist +++ b/sysdeps/unix/sysv/linux/csky/libm.abilist @@ -823,6 +823,18 @@ GLIBC_2.35 fminimumf64 F GLIBC_2.35 fminimuml F GLIBC_2.35 fsqrt F GLIBC_2.35 fsqrtl F +GLIBC_2.40 exp10m1 F +GLIBC_2.40 exp10m1f F +GLIBC_2.40 exp10m1f32 F +GLIBC_2.40 exp10m1f32x F +GLIBC_2.40 exp10m1f64 F +GLIBC_2.40 exp10m1l F +GLIBC_2.40 exp2m1 F +GLIBC_2.40 exp2m1f F +GLIBC_2.40 exp2m1f32 F +GLIBC_2.40 exp2m1f32x F +GLIBC_2.40 exp2m1f64 F +GLIBC_2.40 exp2m1l F GLIBC_2.40 log10p1 F GLIBC_2.40 log10p1f F GLIBC_2.40 log10p1f32 F diff --git a/sysdeps/unix/sysv/linux/hppa/libm.abilist b/sysdeps/unix/sysv/linux/hppa/libm.abilist index b10d92f..d29139e 100644 --- a/sysdeps/unix/sysv/linux/hppa/libm.abilist +++ b/sysdeps/unix/sysv/linux/hppa/libm.abilist @@ -848,6 +848,18 @@ GLIBC_2.38 fmod F GLIBC_2.38 fmodf F GLIBC_2.39 exp10 F GLIBC_2.4 exp2l F +GLIBC_2.40 exp10m1 F +GLIBC_2.40 exp10m1f F +GLIBC_2.40 exp10m1f32 F +GLIBC_2.40 exp10m1f32x F +GLIBC_2.40 exp10m1f64 F +GLIBC_2.40 exp10m1l F +GLIBC_2.40 exp2m1 F +GLIBC_2.40 exp2m1f F +GLIBC_2.40 exp2m1f32 F +GLIBC_2.40 exp2m1f32x F +GLIBC_2.40 exp2m1f64 F +GLIBC_2.40 exp2m1l F GLIBC_2.40 log10p1 F GLIBC_2.40 log10p1f F GLIBC_2.40 log10p1f32 F diff --git a/sysdeps/unix/sysv/linux/i386/libm.abilist b/sysdeps/unix/sysv/linux/i386/libm.abilist index e760f73..0797f3f 100644 --- a/sysdeps/unix/sysv/linux/i386/libm.abilist +++ b/sysdeps/unix/sysv/linux/i386/libm.abilist @@ -1188,6 +1188,22 @@ GLIBC_2.35 fsqrt F GLIBC_2.35 fsqrtl F GLIBC_2.35 hypot F GLIBC_2.35 hypotf F +GLIBC_2.40 exp10m1 F +GLIBC_2.40 exp10m1f F +GLIBC_2.40 exp10m1f128 F +GLIBC_2.40 exp10m1f32 F +GLIBC_2.40 exp10m1f32x F +GLIBC_2.40 exp10m1f64 F +GLIBC_2.40 exp10m1f64x F +GLIBC_2.40 exp10m1l F +GLIBC_2.40 exp2m1 F +GLIBC_2.40 exp2m1f F +GLIBC_2.40 exp2m1f128 F +GLIBC_2.40 exp2m1f32 F +GLIBC_2.40 exp2m1f32x F +GLIBC_2.40 exp2m1f64 F +GLIBC_2.40 exp2m1f64x F +GLIBC_2.40 exp2m1l F GLIBC_2.40 log10p1 F GLIBC_2.40 log10p1f F GLIBC_2.40 log10p1f128 F diff --git a/sysdeps/unix/sysv/linux/loongarch/lp64/libm.abilist b/sysdeps/unix/sysv/linux/loongarch/lp64/libm.abilist index 1b3f5df..16bde43 100644 --- a/sysdeps/unix/sysv/linux/loongarch/lp64/libm.abilist +++ b/sysdeps/unix/sysv/linux/loongarch/lp64/libm.abilist @@ -1028,6 +1028,22 @@ GLIBC_2.36 ynf32x F GLIBC_2.36 ynf64 F GLIBC_2.36 ynf64x F GLIBC_2.36 ynl F +GLIBC_2.40 exp10m1 F +GLIBC_2.40 exp10m1f F +GLIBC_2.40 exp10m1f128 F +GLIBC_2.40 exp10m1f32 F +GLIBC_2.40 exp10m1f32x F +GLIBC_2.40 exp10m1f64 F +GLIBC_2.40 exp10m1f64x F +GLIBC_2.40 exp10m1l F +GLIBC_2.40 exp2m1 F +GLIBC_2.40 exp2m1f F +GLIBC_2.40 exp2m1f128 F +GLIBC_2.40 exp2m1f32 F +GLIBC_2.40 exp2m1f32x F +GLIBC_2.40 exp2m1f64 F +GLIBC_2.40 exp2m1f64x F +GLIBC_2.40 exp2m1l F GLIBC_2.40 log10p1 F GLIBC_2.40 log10p1f F GLIBC_2.40 log10p1f128 F diff --git a/sysdeps/unix/sysv/linux/m68k/coldfire/libm.abilist b/sysdeps/unix/sysv/linux/m68k/coldfire/libm.abilist index 20da5b7..78540e9 100644 --- a/sysdeps/unix/sysv/linux/m68k/coldfire/libm.abilist +++ b/sysdeps/unix/sysv/linux/m68k/coldfire/libm.abilist @@ -848,6 +848,18 @@ GLIBC_2.4 y1l F GLIBC_2.4 yn F GLIBC_2.4 ynf F GLIBC_2.4 ynl F +GLIBC_2.40 exp10m1 F +GLIBC_2.40 exp10m1f F +GLIBC_2.40 exp10m1f32 F +GLIBC_2.40 exp10m1f32x F +GLIBC_2.40 exp10m1f64 F +GLIBC_2.40 exp10m1l F +GLIBC_2.40 exp2m1 F +GLIBC_2.40 exp2m1f F +GLIBC_2.40 exp2m1f32 F +GLIBC_2.40 exp2m1f32x F +GLIBC_2.40 exp2m1f64 F +GLIBC_2.40 exp2m1l F GLIBC_2.40 log10p1 F GLIBC_2.40 log10p1f F GLIBC_2.40 log10p1f32 F diff --git a/sysdeps/unix/sysv/linux/m68k/m680x0/libm.abilist b/sysdeps/unix/sysv/linux/m68k/m680x0/libm.abilist index 89069d5..6fd32e7 100644 --- a/sysdeps/unix/sysv/linux/m68k/m680x0/libm.abilist +++ b/sysdeps/unix/sysv/linux/m68k/m680x0/libm.abilist @@ -884,6 +884,18 @@ GLIBC_2.35 fsqrt F GLIBC_2.35 fsqrtl F GLIBC_2.35 hypot F GLIBC_2.35 hypotf F +GLIBC_2.40 exp10m1 F +GLIBC_2.40 exp10m1f F +GLIBC_2.40 exp10m1f32 F +GLIBC_2.40 exp10m1f32x F +GLIBC_2.40 exp10m1f64 F +GLIBC_2.40 exp10m1l F +GLIBC_2.40 exp2m1 F +GLIBC_2.40 exp2m1f F +GLIBC_2.40 exp2m1f32 F +GLIBC_2.40 exp2m1f32x F +GLIBC_2.40 exp2m1f64 F +GLIBC_2.40 exp2m1l F GLIBC_2.40 log10p1 F GLIBC_2.40 log10p1f F GLIBC_2.40 log10p1f32 F diff --git a/sysdeps/unix/sysv/linux/microblaze/be/libm.abilist b/sysdeps/unix/sysv/linux/microblaze/be/libm.abilist index bcd47e7..d2c2cdb 100644 --- a/sysdeps/unix/sysv/linux/microblaze/be/libm.abilist +++ b/sysdeps/unix/sysv/linux/microblaze/be/libm.abilist @@ -848,6 +848,18 @@ GLIBC_2.35 hypotf F GLIBC_2.38 fmod F GLIBC_2.38 fmodf F GLIBC_2.39 exp10 F +GLIBC_2.40 exp10m1 F +GLIBC_2.40 exp10m1f F +GLIBC_2.40 exp10m1f32 F +GLIBC_2.40 exp10m1f32x F +GLIBC_2.40 exp10m1f64 F +GLIBC_2.40 exp10m1l F +GLIBC_2.40 exp2m1 F +GLIBC_2.40 exp2m1f F +GLIBC_2.40 exp2m1f32 F +GLIBC_2.40 exp2m1f32x F +GLIBC_2.40 exp2m1f64 F +GLIBC_2.40 exp2m1l F GLIBC_2.40 log10p1 F GLIBC_2.40 log10p1f F GLIBC_2.40 log10p1f32 F diff --git a/sysdeps/unix/sysv/linux/microblaze/le/libm.abilist b/sysdeps/unix/sysv/linux/microblaze/le/libm.abilist index bcd47e7..d2c2cdb 100644 --- a/sysdeps/unix/sysv/linux/microblaze/le/libm.abilist +++ b/sysdeps/unix/sysv/linux/microblaze/le/libm.abilist @@ -848,6 +848,18 @@ GLIBC_2.35 hypotf F GLIBC_2.38 fmod F GLIBC_2.38 fmodf F GLIBC_2.39 exp10 F +GLIBC_2.40 exp10m1 F +GLIBC_2.40 exp10m1f F +GLIBC_2.40 exp10m1f32 F +GLIBC_2.40 exp10m1f32x F +GLIBC_2.40 exp10m1f64 F +GLIBC_2.40 exp10m1l F +GLIBC_2.40 exp2m1 F +GLIBC_2.40 exp2m1f F +GLIBC_2.40 exp2m1f32 F +GLIBC_2.40 exp2m1f32x F +GLIBC_2.40 exp2m1f64 F +GLIBC_2.40 exp2m1l F GLIBC_2.40 log10p1 F GLIBC_2.40 log10p1f F GLIBC_2.40 log10p1f32 F diff --git a/sysdeps/unix/sysv/linux/mips/mips32/libm.abilist b/sysdeps/unix/sysv/linux/mips/mips32/libm.abilist index f21b04a..a7c8ca0 100644 --- a/sysdeps/unix/sysv/linux/mips/mips32/libm.abilist +++ b/sysdeps/unix/sysv/linux/mips/mips32/libm.abilist @@ -848,6 +848,18 @@ GLIBC_2.38 fmod F GLIBC_2.38 fmodf F GLIBC_2.39 exp10 F GLIBC_2.4 exp2l F +GLIBC_2.40 exp10m1 F +GLIBC_2.40 exp10m1f F +GLIBC_2.40 exp10m1f32 F +GLIBC_2.40 exp10m1f32x F +GLIBC_2.40 exp10m1f64 F +GLIBC_2.40 exp10m1l F +GLIBC_2.40 exp2m1 F +GLIBC_2.40 exp2m1f F +GLIBC_2.40 exp2m1f32 F +GLIBC_2.40 exp2m1f32x F +GLIBC_2.40 exp2m1f64 F +GLIBC_2.40 exp2m1l F GLIBC_2.40 log10p1 F GLIBC_2.40 log10p1f F GLIBC_2.40 log10p1f32 F diff --git a/sysdeps/unix/sysv/linux/mips/mips64/libm.abilist b/sysdeps/unix/sysv/linux/mips/mips64/libm.abilist index 4af7729..8e36e16 100644 --- a/sysdeps/unix/sysv/linux/mips/mips64/libm.abilist +++ b/sysdeps/unix/sysv/linux/mips/mips64/libm.abilist @@ -1149,6 +1149,22 @@ GLIBC_2.35 hypotf F GLIBC_2.38 fmod F GLIBC_2.38 fmodf F GLIBC_2.39 exp10 F +GLIBC_2.40 exp10m1 F +GLIBC_2.40 exp10m1f F +GLIBC_2.40 exp10m1f128 F +GLIBC_2.40 exp10m1f32 F +GLIBC_2.40 exp10m1f32x F +GLIBC_2.40 exp10m1f64 F +GLIBC_2.40 exp10m1f64x F +GLIBC_2.40 exp10m1l F +GLIBC_2.40 exp2m1 F +GLIBC_2.40 exp2m1f F +GLIBC_2.40 exp2m1f128 F +GLIBC_2.40 exp2m1f32 F +GLIBC_2.40 exp2m1f32x F +GLIBC_2.40 exp2m1f64 F +GLIBC_2.40 exp2m1f64x F +GLIBC_2.40 exp2m1l F GLIBC_2.40 log10p1 F GLIBC_2.40 log10p1f F GLIBC_2.40 log10p1f128 F diff --git a/sysdeps/unix/sysv/linux/nios2/libm.abilist b/sysdeps/unix/sysv/linux/nios2/libm.abilist index 95c654f..c0df77f 100644 --- a/sysdeps/unix/sysv/linux/nios2/libm.abilist +++ b/sysdeps/unix/sysv/linux/nios2/libm.abilist @@ -848,6 +848,18 @@ GLIBC_2.35 hypotf F GLIBC_2.38 fmod F GLIBC_2.38 fmodf F GLIBC_2.39 exp10 F +GLIBC_2.40 exp10m1 F +GLIBC_2.40 exp10m1f F +GLIBC_2.40 exp10m1f32 F +GLIBC_2.40 exp10m1f32x F +GLIBC_2.40 exp10m1f64 F +GLIBC_2.40 exp10m1l F +GLIBC_2.40 exp2m1 F +GLIBC_2.40 exp2m1f F +GLIBC_2.40 exp2m1f32 F +GLIBC_2.40 exp2m1f32x F +GLIBC_2.40 exp2m1f64 F +GLIBC_2.40 exp2m1l F GLIBC_2.40 log10p1 F GLIBC_2.40 log10p1f F GLIBC_2.40 log10p1f32 F diff --git a/sysdeps/unix/sysv/linux/or1k/libm.abilist b/sysdeps/unix/sysv/linux/or1k/libm.abilist index edcd206..4db8702 100644 --- a/sysdeps/unix/sysv/linux/or1k/libm.abilist +++ b/sysdeps/unix/sysv/linux/or1k/libm.abilist @@ -757,6 +757,18 @@ GLIBC_2.35 ynf32 F GLIBC_2.35 ynf32x F GLIBC_2.35 ynf64 F GLIBC_2.35 ynl F +GLIBC_2.40 exp10m1 F +GLIBC_2.40 exp10m1f F +GLIBC_2.40 exp10m1f32 F +GLIBC_2.40 exp10m1f32x F +GLIBC_2.40 exp10m1f64 F +GLIBC_2.40 exp10m1l F +GLIBC_2.40 exp2m1 F +GLIBC_2.40 exp2m1f F +GLIBC_2.40 exp2m1f32 F +GLIBC_2.40 exp2m1f32x F +GLIBC_2.40 exp2m1f64 F +GLIBC_2.40 exp2m1l F GLIBC_2.40 log10p1 F GLIBC_2.40 log10p1f F GLIBC_2.40 log10p1f32 F diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/libm.abilist b/sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/libm.abilist index f56a507..cbadcef 100644 --- a/sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/libm.abilist +++ b/sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/libm.abilist @@ -995,6 +995,18 @@ GLIBC_2.4 truncl F GLIBC_2.4 y0l F GLIBC_2.4 y1l F GLIBC_2.4 ynl F +GLIBC_2.40 exp10m1 F +GLIBC_2.40 exp10m1f F +GLIBC_2.40 exp10m1f32 F +GLIBC_2.40 exp10m1f32x F +GLIBC_2.40 exp10m1f64 F +GLIBC_2.40 exp10m1l F +GLIBC_2.40 exp2m1 F +GLIBC_2.40 exp2m1f F +GLIBC_2.40 exp2m1f32 F +GLIBC_2.40 exp2m1f32x F +GLIBC_2.40 exp2m1f64 F +GLIBC_2.40 exp2m1l F GLIBC_2.40 log10p1 F GLIBC_2.40 log10p1f F GLIBC_2.40 log10p1f32 F diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/libm.abilist b/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/libm.abilist index be9e896..d0078a4 100644 --- a/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/libm.abilist +++ b/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/libm.abilist @@ -994,6 +994,18 @@ GLIBC_2.4 truncl F GLIBC_2.4 y0l F GLIBC_2.4 y1l F GLIBC_2.4 ynl F +GLIBC_2.40 exp10m1 F +GLIBC_2.40 exp10m1f F +GLIBC_2.40 exp10m1f32 F +GLIBC_2.40 exp10m1f32x F +GLIBC_2.40 exp10m1f64 F +GLIBC_2.40 exp10m1l F +GLIBC_2.40 exp2m1 F +GLIBC_2.40 exp2m1f F +GLIBC_2.40 exp2m1f32 F +GLIBC_2.40 exp2m1f32x F +GLIBC_2.40 exp2m1f64 F +GLIBC_2.40 exp2m1l F GLIBC_2.40 log10p1 F GLIBC_2.40 log10p1f F GLIBC_2.40 log10p1f32 F diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc64/be/libm.abilist b/sysdeps/unix/sysv/linux/powerpc/powerpc64/be/libm.abilist index 70eea29..86fdb9f 100644 --- a/sysdeps/unix/sysv/linux/powerpc/powerpc64/be/libm.abilist +++ b/sysdeps/unix/sysv/linux/powerpc/powerpc64/be/libm.abilist @@ -988,6 +988,18 @@ GLIBC_2.4 truncl F GLIBC_2.4 y0l F GLIBC_2.4 y1l F GLIBC_2.4 ynl F +GLIBC_2.40 exp10m1 F +GLIBC_2.40 exp10m1f F +GLIBC_2.40 exp10m1f32 F +GLIBC_2.40 exp10m1f32x F +GLIBC_2.40 exp10m1f64 F +GLIBC_2.40 exp10m1l F +GLIBC_2.40 exp2m1 F +GLIBC_2.40 exp2m1f F +GLIBC_2.40 exp2m1f32 F +GLIBC_2.40 exp2m1f32x F +GLIBC_2.40 exp2m1f64 F +GLIBC_2.40 exp2m1l F GLIBC_2.40 log10p1 F GLIBC_2.40 log10p1f F GLIBC_2.40 log10p1f32 F diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc64/le/libm.abilist b/sysdeps/unix/sysv/linux/powerpc/powerpc64/le/libm.abilist index 4f9aa4c..34568bd 100644 --- a/sysdeps/unix/sysv/linux/powerpc/powerpc64/le/libm.abilist +++ b/sysdeps/unix/sysv/linux/powerpc/powerpc64/le/libm.abilist @@ -1321,9 +1321,27 @@ GLIBC_2.35 hypotf F GLIBC_2.38 fmod F GLIBC_2.38 fmodf F GLIBC_2.39 exp10 F +GLIBC_2.40 __exp10m1ieee128 F +GLIBC_2.40 __exp2m1ieee128 F GLIBC_2.40 __log10p1ieee128 F GLIBC_2.40 __log2p1ieee128 F GLIBC_2.40 __logp1ieee128 F +GLIBC_2.40 exp10m1 F +GLIBC_2.40 exp10m1f F +GLIBC_2.40 exp10m1f128 F +GLIBC_2.40 exp10m1f32 F +GLIBC_2.40 exp10m1f32x F +GLIBC_2.40 exp10m1f64 F +GLIBC_2.40 exp10m1f64x F +GLIBC_2.40 exp10m1l F +GLIBC_2.40 exp2m1 F +GLIBC_2.40 exp2m1f F +GLIBC_2.40 exp2m1f128 F +GLIBC_2.40 exp2m1f32 F +GLIBC_2.40 exp2m1f32x F +GLIBC_2.40 exp2m1f64 F +GLIBC_2.40 exp2m1f64x F +GLIBC_2.40 exp2m1l F GLIBC_2.40 log10p1 F GLIBC_2.40 log10p1f F GLIBC_2.40 log10p1f128 F diff --git a/sysdeps/unix/sysv/linux/riscv/rv32/libm.abilist b/sysdeps/unix/sysv/linux/riscv/rv32/libm.abilist index ef575d0..248ca38 100644 --- a/sysdeps/unix/sysv/linux/riscv/rv32/libm.abilist +++ b/sysdeps/unix/sysv/linux/riscv/rv32/libm.abilist @@ -1028,6 +1028,22 @@ GLIBC_2.35 fminimumf64x F GLIBC_2.35 fminimuml F GLIBC_2.35 fsqrt F GLIBC_2.35 fsqrtl F +GLIBC_2.40 exp10m1 F +GLIBC_2.40 exp10m1f F +GLIBC_2.40 exp10m1f128 F +GLIBC_2.40 exp10m1f32 F +GLIBC_2.40 exp10m1f32x F +GLIBC_2.40 exp10m1f64 F +GLIBC_2.40 exp10m1f64x F +GLIBC_2.40 exp10m1l F +GLIBC_2.40 exp2m1 F +GLIBC_2.40 exp2m1f F +GLIBC_2.40 exp2m1f128 F +GLIBC_2.40 exp2m1f32 F +GLIBC_2.40 exp2m1f32x F +GLIBC_2.40 exp2m1f64 F +GLIBC_2.40 exp2m1f64x F +GLIBC_2.40 exp2m1l F GLIBC_2.40 log10p1 F GLIBC_2.40 log10p1f F GLIBC_2.40 log10p1f128 F diff --git a/sysdeps/unix/sysv/linux/riscv/rv64/libm.abilist b/sysdeps/unix/sysv/linux/riscv/rv64/libm.abilist index 9e647f7..c8f976c 100644 --- a/sysdeps/unix/sysv/linux/riscv/rv64/libm.abilist +++ b/sysdeps/unix/sysv/linux/riscv/rv64/libm.abilist @@ -1125,6 +1125,22 @@ GLIBC_2.35 fminimumf64x F GLIBC_2.35 fminimuml F GLIBC_2.35 fsqrt F GLIBC_2.35 fsqrtl F +GLIBC_2.40 exp10m1 F +GLIBC_2.40 exp10m1f F +GLIBC_2.40 exp10m1f128 F +GLIBC_2.40 exp10m1f32 F +GLIBC_2.40 exp10m1f32x F +GLIBC_2.40 exp10m1f64 F +GLIBC_2.40 exp10m1f64x F +GLIBC_2.40 exp10m1l F +GLIBC_2.40 exp2m1 F +GLIBC_2.40 exp2m1f F +GLIBC_2.40 exp2m1f128 F +GLIBC_2.40 exp2m1f32 F +GLIBC_2.40 exp2m1f32x F +GLIBC_2.40 exp2m1f64 F +GLIBC_2.40 exp2m1f64x F +GLIBC_2.40 exp2m1l F GLIBC_2.40 log10p1 F GLIBC_2.40 log10p1f F GLIBC_2.40 log10p1f128 F diff --git a/sysdeps/unix/sysv/linux/s390/s390-32/libm.abilist b/sysdeps/unix/sysv/linux/s390/s390-32/libm.abilist index 022cb27..81f186f 100644 --- a/sysdeps/unix/sysv/linux/s390/s390-32/libm.abilist +++ b/sysdeps/unix/sysv/linux/s390/s390-32/libm.abilist @@ -1252,6 +1252,22 @@ GLIBC_2.4 truncl F GLIBC_2.4 y0l F GLIBC_2.4 y1l F GLIBC_2.4 ynl F +GLIBC_2.40 exp10m1 F +GLIBC_2.40 exp10m1f F +GLIBC_2.40 exp10m1f128 F +GLIBC_2.40 exp10m1f32 F +GLIBC_2.40 exp10m1f32x F +GLIBC_2.40 exp10m1f64 F +GLIBC_2.40 exp10m1f64x F +GLIBC_2.40 exp10m1l F +GLIBC_2.40 exp2m1 F +GLIBC_2.40 exp2m1f F +GLIBC_2.40 exp2m1f128 F +GLIBC_2.40 exp2m1f32 F +GLIBC_2.40 exp2m1f32x F +GLIBC_2.40 exp2m1f64 F +GLIBC_2.40 exp2m1f64x F +GLIBC_2.40 exp2m1l F GLIBC_2.40 log10p1 F GLIBC_2.40 log10p1f F GLIBC_2.40 log10p1f128 F diff --git a/sysdeps/unix/sysv/linux/s390/s390-64/libm.abilist b/sysdeps/unix/sysv/linux/s390/s390-64/libm.abilist index 1453d09..ee54f8d 100644 --- a/sysdeps/unix/sysv/linux/s390/s390-64/libm.abilist +++ b/sysdeps/unix/sysv/linux/s390/s390-64/libm.abilist @@ -1252,6 +1252,22 @@ GLIBC_2.4 truncl F GLIBC_2.4 y0l F GLIBC_2.4 y1l F GLIBC_2.4 ynl F +GLIBC_2.40 exp10m1 F +GLIBC_2.40 exp10m1f F +GLIBC_2.40 exp10m1f128 F +GLIBC_2.40 exp10m1f32 F +GLIBC_2.40 exp10m1f32x F +GLIBC_2.40 exp10m1f64 F +GLIBC_2.40 exp10m1f64x F +GLIBC_2.40 exp10m1l F +GLIBC_2.40 exp2m1 F +GLIBC_2.40 exp2m1f F +GLIBC_2.40 exp2m1f128 F +GLIBC_2.40 exp2m1f32 F +GLIBC_2.40 exp2m1f32x F +GLIBC_2.40 exp2m1f64 F +GLIBC_2.40 exp2m1f64x F +GLIBC_2.40 exp2m1l F GLIBC_2.40 log10p1 F GLIBC_2.40 log10p1f F GLIBC_2.40 log10p1f128 F diff --git a/sysdeps/unix/sysv/linux/sh/be/libm.abilist b/sysdeps/unix/sysv/linux/sh/be/libm.abilist index 044945d..b21a3ba 100644 --- a/sysdeps/unix/sysv/linux/sh/be/libm.abilist +++ b/sysdeps/unix/sysv/linux/sh/be/libm.abilist @@ -848,6 +848,18 @@ GLIBC_2.38 fmod F GLIBC_2.38 fmodf F GLIBC_2.39 exp10 F GLIBC_2.4 exp2l F +GLIBC_2.40 exp10m1 F +GLIBC_2.40 exp10m1f F +GLIBC_2.40 exp10m1f32 F +GLIBC_2.40 exp10m1f32x F +GLIBC_2.40 exp10m1f64 F +GLIBC_2.40 exp10m1l F +GLIBC_2.40 exp2m1 F +GLIBC_2.40 exp2m1f F +GLIBC_2.40 exp2m1f32 F +GLIBC_2.40 exp2m1f32x F +GLIBC_2.40 exp2m1f64 F +GLIBC_2.40 exp2m1l F GLIBC_2.40 log10p1 F GLIBC_2.40 log10p1f F GLIBC_2.40 log10p1f32 F diff --git a/sysdeps/unix/sysv/linux/sh/le/libm.abilist b/sysdeps/unix/sysv/linux/sh/le/libm.abilist index 044945d..b21a3ba 100644 --- a/sysdeps/unix/sysv/linux/sh/le/libm.abilist +++ b/sysdeps/unix/sysv/linux/sh/le/libm.abilist @@ -848,6 +848,18 @@ GLIBC_2.38 fmod F GLIBC_2.38 fmodf F GLIBC_2.39 exp10 F GLIBC_2.4 exp2l F +GLIBC_2.40 exp10m1 F +GLIBC_2.40 exp10m1f F +GLIBC_2.40 exp10m1f32 F +GLIBC_2.40 exp10m1f32x F +GLIBC_2.40 exp10m1f64 F +GLIBC_2.40 exp10m1l F +GLIBC_2.40 exp2m1 F +GLIBC_2.40 exp2m1f F +GLIBC_2.40 exp2m1f32 F +GLIBC_2.40 exp2m1f32x F +GLIBC_2.40 exp2m1f64 F +GLIBC_2.40 exp2m1l F GLIBC_2.40 log10p1 F GLIBC_2.40 log10p1f F GLIBC_2.40 log10p1f32 F diff --git a/sysdeps/unix/sysv/linux/sparc/sparc32/libm.abilist b/sysdeps/unix/sysv/linux/sparc/sparc32/libm.abilist index 92b6a77..15c958e 100644 --- a/sysdeps/unix/sysv/linux/sparc/sparc32/libm.abilist +++ b/sysdeps/unix/sysv/linux/sparc/sparc32/libm.abilist @@ -1259,6 +1259,22 @@ GLIBC_2.4 truncl F GLIBC_2.4 y0l F GLIBC_2.4 y1l F GLIBC_2.4 ynl F +GLIBC_2.40 exp10m1 F +GLIBC_2.40 exp10m1f F +GLIBC_2.40 exp10m1f128 F +GLIBC_2.40 exp10m1f32 F +GLIBC_2.40 exp10m1f32x F +GLIBC_2.40 exp10m1f64 F +GLIBC_2.40 exp10m1f64x F +GLIBC_2.40 exp10m1l F +GLIBC_2.40 exp2m1 F +GLIBC_2.40 exp2m1f F +GLIBC_2.40 exp2m1f128 F +GLIBC_2.40 exp2m1f32 F +GLIBC_2.40 exp2m1f32x F +GLIBC_2.40 exp2m1f64 F +GLIBC_2.40 exp2m1f64x F +GLIBC_2.40 exp2m1l F GLIBC_2.40 log10p1 F GLIBC_2.40 log10p1f F GLIBC_2.40 log10p1f128 F diff --git a/sysdeps/unix/sysv/linux/sparc/sparc64/libm.abilist b/sysdeps/unix/sysv/linux/sparc/sparc64/libm.abilist index 258058b..bf608f5 100644 --- a/sysdeps/unix/sysv/linux/sparc/sparc64/libm.abilist +++ b/sysdeps/unix/sysv/linux/sparc/sparc64/libm.abilist @@ -1149,6 +1149,22 @@ GLIBC_2.35 hypotf F GLIBC_2.38 fmod F GLIBC_2.38 fmodf F GLIBC_2.39 exp10 F +GLIBC_2.40 exp10m1 F +GLIBC_2.40 exp10m1f F +GLIBC_2.40 exp10m1f128 F +GLIBC_2.40 exp10m1f32 F +GLIBC_2.40 exp10m1f32x F +GLIBC_2.40 exp10m1f64 F +GLIBC_2.40 exp10m1f64x F +GLIBC_2.40 exp10m1l F +GLIBC_2.40 exp2m1 F +GLIBC_2.40 exp2m1f F +GLIBC_2.40 exp2m1f128 F +GLIBC_2.40 exp2m1f32 F +GLIBC_2.40 exp2m1f32x F +GLIBC_2.40 exp2m1f64 F +GLIBC_2.40 exp2m1f64x F +GLIBC_2.40 exp2m1l F GLIBC_2.40 log10p1 F GLIBC_2.40 log10p1f F GLIBC_2.40 log10p1f128 F diff --git a/sysdeps/unix/sysv/linux/x86_64/64/libm.abilist b/sysdeps/unix/sysv/linux/x86_64/64/libm.abilist index 66f264d..0ba4ef5 100644 --- a/sysdeps/unix/sysv/linux/x86_64/64/libm.abilist +++ b/sysdeps/unix/sysv/linux/x86_64/64/libm.abilist @@ -1182,6 +1182,22 @@ GLIBC_2.35 hypotf F GLIBC_2.38 fmod F GLIBC_2.38 fmodf F GLIBC_2.39 exp10 F +GLIBC_2.40 exp10m1 F +GLIBC_2.40 exp10m1f F +GLIBC_2.40 exp10m1f128 F +GLIBC_2.40 exp10m1f32 F +GLIBC_2.40 exp10m1f32x F +GLIBC_2.40 exp10m1f64 F +GLIBC_2.40 exp10m1f64x F +GLIBC_2.40 exp10m1l F +GLIBC_2.40 exp2m1 F +GLIBC_2.40 exp2m1f F +GLIBC_2.40 exp2m1f128 F +GLIBC_2.40 exp2m1f32 F +GLIBC_2.40 exp2m1f32x F +GLIBC_2.40 exp2m1f64 F +GLIBC_2.40 exp2m1f64x F +GLIBC_2.40 exp2m1l F GLIBC_2.40 log10p1 F GLIBC_2.40 log10p1f F GLIBC_2.40 log10p1f128 F diff --git a/sysdeps/unix/sysv/linux/x86_64/x32/libm.abilist b/sysdeps/unix/sysv/linux/x86_64/x32/libm.abilist index 877d64a..4057115 100644 --- a/sysdeps/unix/sysv/linux/x86_64/x32/libm.abilist +++ b/sysdeps/unix/sysv/linux/x86_64/x32/libm.abilist @@ -1182,6 +1182,22 @@ GLIBC_2.35 hypotf F GLIBC_2.38 fmod F GLIBC_2.38 fmodf F GLIBC_2.39 exp10 F +GLIBC_2.40 exp10m1 F +GLIBC_2.40 exp10m1f F +GLIBC_2.40 exp10m1f128 F +GLIBC_2.40 exp10m1f32 F +GLIBC_2.40 exp10m1f32x F +GLIBC_2.40 exp10m1f64 F +GLIBC_2.40 exp10m1f64x F +GLIBC_2.40 exp10m1l F +GLIBC_2.40 exp2m1 F +GLIBC_2.40 exp2m1f F +GLIBC_2.40 exp2m1f128 F +GLIBC_2.40 exp2m1f32 F +GLIBC_2.40 exp2m1f32x F +GLIBC_2.40 exp2m1f64 F +GLIBC_2.40 exp2m1f64x F +GLIBC_2.40 exp2m1l F GLIBC_2.40 log10p1 F GLIBC_2.40 log10p1f F GLIBC_2.40 log10p1f128 F diff --git a/sysdeps/x86_64/fpu/libm-test-ulps b/sysdeps/x86_64/fpu/libm-test-ulps index f46ac59..3592dfa 100644 --- a/sysdeps/x86_64/fpu/libm-test-ulps +++ b/sysdeps/x86_64/fpu/libm-test-ulps @@ -1429,6 +1429,30 @@ float: 1 Function: "exp10_vlen8_avx2": float: 1 +Function: "exp10m1": +double: 2 +float: 1 +float128: 1 +ldouble: 1 + +Function: "exp10m1_downward": +double: 1 +float: 1 +float128: 3 +ldouble: 2 + +Function: "exp10m1_towardzero": +double: 1 +float: 1 +float128: 3 +ldouble: 2 + +Function: "exp10m1_upward": +double: 3 +float: 1 +float128: 3 +ldouble: 2 + Function: "exp2": double: 1 float: 1 @@ -1473,6 +1497,30 @@ float: 1 Function: "exp2_vlen8_avx2": float: 1 +Function: "exp2m1": +double: 1 +float: 1 +float128: 1 +ldouble: 1 + +Function: "exp2m1_downward": +double: 2 +float: 1 +float128: 2 +ldouble: 3 + +Function: "exp2m1_towardzero": +double: 2 +float: 1 +float128: 2 +ldouble: 3 + +Function: "exp2m1_upward": +double: 1 +float: 1 +float128: 2 +ldouble: 3 + Function: "exp_downward": double: 1 float: 1 |