Message ID | 20250130163024.2032523-7-adhemerval.zanella@linaro.org |
---|---|
State | New |
Headers | show |
Series | Remove the SVID wrapper from CORE-MATH functions. | expand |
diff --git a/math/Versions b/math/Versions index 565be955b0..a576097c50 100644 --- a/math/Versions +++ b/math/Versions @@ -677,5 +677,6 @@ libm { lgammaf; lgammaf_r; acosf; asinf; + acoshf; } } diff --git a/math/w_acoshf.c b/math/w_acoshf.c new file mode 100644 index 0000000000..1e5b4a75ac --- /dev/null +++ b/math/w_acoshf.c @@ -0,0 +1,8 @@ +#include <math-type-macros-float.h> +#undef __USE_WRAPPER_TEMPLATE +#define __USE_WRAPPER_TEMPLATE 1 +#undef declare_mgen_alias +#define declare_mgen_alias(a, b) +#include <w_acosh_template.c> +versioned_symbol (libm, __acoshf, acoshf, GLIBC_2_42); +libm_alias_float_other (__acoshf, acoshf) diff --git a/math/w_acoshf_compat.c b/math/w_acoshf_compat.c index aa5da5c436..77f97cb767 100644 --- a/math/w_acoshf_compat.c +++ b/math/w_acoshf_compat.c @@ -21,10 +21,10 @@ #include <libm-alias-float.h> -#if LIBM_SVID_COMPAT +#if LIBM_SVID_COMPAT && SHLIB_COMPAT (libm, GLIBC_2_0, GLIBC_2_42) /* wrapper acoshf */ float -__acoshf (float x) +__acosh_compatf (float x) { if (__builtin_expect (isless (x, 1.0f), 0) && _LIB_VERSION != _IEEE_) /* acosh(x<1) */ @@ -32,5 +32,5 @@ __acoshf (float x) return __ieee754_acoshf (x); } -libm_alias_float (__acosh, acosh) +compat_symbol (libm, __acosh_compatf, acoshf, GLIBC_2_0); #endif diff --git a/sysdeps/ieee754/flt-32/e_acoshf.c b/sysdeps/ieee754/flt-32/e_acoshf.c index a0a0abc2dd..56d36b5679 100644 --- a/sysdeps/ieee754/flt-32/e_acoshf.c +++ b/sysdeps/ieee754/flt-32/e_acoshf.c @@ -27,6 +27,8 @@ SOFTWARE. #include <math.h> #include <stdint.h> #include <libm-alias-finite.h> +#include <libm-alias-float.h> +#include <math-svid-compat.h> #include "math_config.h" static __attribute__ ((noinline)) float @@ -43,7 +45,7 @@ as_special (float x) } float -__ieee754_acoshf (float x) +__acoshf (float x) { static const double ix[] = { @@ -198,4 +200,11 @@ __ieee754_acoshf (float x) else return as_special (x); } +strong_alias (__acoshf, __ieee754_acoshf) +#if LIBM_SVID_COMPAT +versioned_symbol (libm, __acoshf, acoshf, GLIBC_2_42); +libm_alias_float_other (__acosh, acosh) +#else +libm_alias_float (__acosh, acosh) +#endif libm_alias_finite (__ieee754_acoshf, __acoshf) diff --git a/sysdeps/ieee754/flt-32/w_acoshf.c b/sysdeps/ieee754/flt-32/w_acoshf.c new file mode 100644 index 0000000000..1cc8931700 --- /dev/null +++ b/sysdeps/ieee754/flt-32/w_acoshf.c @@ -0,0 +1 @@ +/* Not needed. */ diff --git a/sysdeps/mach/hurd/i386/libm.abilist b/sysdeps/mach/hurd/i386/libm.abilist index 3063ff1980..b6f55e1e85 100644 --- a/sysdeps/mach/hurd/i386/libm.abilist +++ b/sysdeps/mach/hurd/i386/libm.abilist @@ -1278,6 +1278,7 @@ GLIBC_2.41 tanpif64 F GLIBC_2.41 tanpif64x F GLIBC_2.41 tanpil F GLIBC_2.42 acosf F +GLIBC_2.42 acoshf F GLIBC_2.42 asinf F GLIBC_2.42 lgammaf F GLIBC_2.42 lgammaf_r F diff --git a/sysdeps/unix/sysv/linux/aarch64/libm.abilist b/sysdeps/unix/sysv/linux/aarch64/libm.abilist index 4f3e67b163..c939ada587 100644 --- a/sysdeps/unix/sysv/linux/aarch64/libm.abilist +++ b/sysdeps/unix/sysv/linux/aarch64/libm.abilist @@ -1246,6 +1246,7 @@ GLIBC_2.41 tanpif64 F GLIBC_2.41 tanpif64x F GLIBC_2.41 tanpil F GLIBC_2.42 acosf F +GLIBC_2.42 acoshf F GLIBC_2.42 asinf F GLIBC_2.42 lgammaf F GLIBC_2.42 lgammaf_r F diff --git a/sysdeps/unix/sysv/linux/alpha/libm.abilist b/sysdeps/unix/sysv/linux/alpha/libm.abilist index 6ee87e7ca8..7e1d0cef30 100644 --- a/sysdeps/unix/sysv/linux/alpha/libm.abilist +++ b/sysdeps/unix/sysv/linux/alpha/libm.abilist @@ -1405,6 +1405,7 @@ GLIBC_2.41 tanpif64 F GLIBC_2.41 tanpif64x F GLIBC_2.41 tanpil F GLIBC_2.42 acosf F +GLIBC_2.42 acoshf F GLIBC_2.42 asinf F GLIBC_2.42 lgammaf F GLIBC_2.42 lgammaf_r F diff --git a/sysdeps/unix/sysv/linux/arm/be/libm.abilist b/sysdeps/unix/sysv/linux/arm/be/libm.abilist index 1a8843e044..c6ef147356 100644 --- a/sysdeps/unix/sysv/linux/arm/be/libm.abilist +++ b/sysdeps/unix/sysv/linux/arm/be/libm.abilist @@ -921,6 +921,7 @@ GLIBC_2.41 tanpif32x F GLIBC_2.41 tanpif64 F GLIBC_2.41 tanpil F GLIBC_2.42 acosf F +GLIBC_2.42 acoshf F GLIBC_2.42 asinf F GLIBC_2.42 lgammaf F GLIBC_2.42 lgammaf_r F diff --git a/sysdeps/unix/sysv/linux/arm/le/libm.abilist b/sysdeps/unix/sysv/linux/arm/le/libm.abilist index 1a8843e044..c6ef147356 100644 --- a/sysdeps/unix/sysv/linux/arm/le/libm.abilist +++ b/sysdeps/unix/sysv/linux/arm/le/libm.abilist @@ -921,6 +921,7 @@ GLIBC_2.41 tanpif32x F GLIBC_2.41 tanpif64 F GLIBC_2.41 tanpil F GLIBC_2.42 acosf F +GLIBC_2.42 acoshf F GLIBC_2.42 asinf F GLIBC_2.42 lgammaf F GLIBC_2.42 lgammaf_r F diff --git a/sysdeps/unix/sysv/linux/hppa/libm.abilist b/sysdeps/unix/sysv/linux/hppa/libm.abilist index fd14c2106a..40050fbb6a 100644 --- a/sysdeps/unix/sysv/linux/hppa/libm.abilist +++ b/sysdeps/unix/sysv/linux/hppa/libm.abilist @@ -921,6 +921,7 @@ GLIBC_2.41 tanpif32x F GLIBC_2.41 tanpif64 F GLIBC_2.41 tanpil F GLIBC_2.42 acosf F +GLIBC_2.42 acoshf F GLIBC_2.42 asinf F GLIBC_2.42 lgammaf F GLIBC_2.42 lgammaf_r F diff --git a/sysdeps/unix/sysv/linux/i386/libm.abilist b/sysdeps/unix/sysv/linux/i386/libm.abilist index d8e64a9096..7b63fa103c 100644 --- a/sysdeps/unix/sysv/linux/i386/libm.abilist +++ b/sysdeps/unix/sysv/linux/i386/libm.abilist @@ -1285,6 +1285,7 @@ GLIBC_2.41 tanpif64 F GLIBC_2.41 tanpif64x F GLIBC_2.41 tanpil F GLIBC_2.42 acosf F +GLIBC_2.42 acoshf F GLIBC_2.42 asinf F GLIBC_2.42 lgammaf F GLIBC_2.42 lgammaf_r F diff --git a/sysdeps/unix/sysv/linux/m68k/coldfire/libm.abilist b/sysdeps/unix/sysv/linux/m68k/coldfire/libm.abilist index 1a8843e044..c6ef147356 100644 --- a/sysdeps/unix/sysv/linux/m68k/coldfire/libm.abilist +++ b/sysdeps/unix/sysv/linux/m68k/coldfire/libm.abilist @@ -921,6 +921,7 @@ GLIBC_2.41 tanpif32x F GLIBC_2.41 tanpif64 F GLIBC_2.41 tanpil F GLIBC_2.42 acosf F +GLIBC_2.42 acoshf F GLIBC_2.42 asinf F GLIBC_2.42 lgammaf F GLIBC_2.42 lgammaf_r F diff --git a/sysdeps/unix/sysv/linux/m68k/m680x0/libm.abilist b/sysdeps/unix/sysv/linux/m68k/m680x0/libm.abilist index 197e85b7bb..ad1f9b20dc 100644 --- a/sysdeps/unix/sysv/linux/m68k/m680x0/libm.abilist +++ b/sysdeps/unix/sysv/linux/m68k/m680x0/libm.abilist @@ -956,5 +956,6 @@ GLIBC_2.41 tanpif32 F GLIBC_2.41 tanpif32x F GLIBC_2.41 tanpif64 F GLIBC_2.41 tanpil F +GLIBC_2.42 acoshf F GLIBC_2.42 lgammaf F GLIBC_2.42 lgammaf_r F diff --git a/sysdeps/unix/sysv/linux/microblaze/be/libm.abilist b/sysdeps/unix/sysv/linux/microblaze/be/libm.abilist index fa421fe3d7..a5f5762406 100644 --- a/sysdeps/unix/sysv/linux/microblaze/be/libm.abilist +++ b/sysdeps/unix/sysv/linux/microblaze/be/libm.abilist @@ -921,6 +921,7 @@ GLIBC_2.41 tanpif32x F GLIBC_2.41 tanpif64 F GLIBC_2.41 tanpil F GLIBC_2.42 acosf F +GLIBC_2.42 acoshf F GLIBC_2.42 asinf F GLIBC_2.42 lgammaf F GLIBC_2.42 lgammaf_r F diff --git a/sysdeps/unix/sysv/linux/microblaze/le/libm.abilist b/sysdeps/unix/sysv/linux/microblaze/le/libm.abilist index fa421fe3d7..a5f5762406 100644 --- a/sysdeps/unix/sysv/linux/microblaze/le/libm.abilist +++ b/sysdeps/unix/sysv/linux/microblaze/le/libm.abilist @@ -921,6 +921,7 @@ GLIBC_2.41 tanpif32x F GLIBC_2.41 tanpif64 F GLIBC_2.41 tanpil F GLIBC_2.42 acosf F +GLIBC_2.42 acoshf F GLIBC_2.42 asinf F GLIBC_2.42 lgammaf F GLIBC_2.42 lgammaf_r F diff --git a/sysdeps/unix/sysv/linux/mips/mips32/libm.abilist b/sysdeps/unix/sysv/linux/mips/mips32/libm.abilist index bf398cac63..ce75033ac7 100644 --- a/sysdeps/unix/sysv/linux/mips/mips32/libm.abilist +++ b/sysdeps/unix/sysv/linux/mips/mips32/libm.abilist @@ -921,6 +921,7 @@ GLIBC_2.41 tanpif32x F GLIBC_2.41 tanpif64 F GLIBC_2.41 tanpil F GLIBC_2.42 acosf F +GLIBC_2.42 acoshf F GLIBC_2.42 asinf F GLIBC_2.42 lgammaf F GLIBC_2.42 lgammaf_r F diff --git a/sysdeps/unix/sysv/linux/mips/mips64/libm.abilist b/sysdeps/unix/sysv/linux/mips/mips64/libm.abilist index 35c239ebb9..b10a87aa26 100644 --- a/sysdeps/unix/sysv/linux/mips/mips64/libm.abilist +++ b/sysdeps/unix/sysv/linux/mips/mips64/libm.abilist @@ -1246,6 +1246,7 @@ GLIBC_2.41 tanpif64 F GLIBC_2.41 tanpif64x F GLIBC_2.41 tanpil F GLIBC_2.42 acosf F +GLIBC_2.42 acoshf F GLIBC_2.42 asinf F GLIBC_2.42 lgammaf F GLIBC_2.42 lgammaf_r F diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/libm.abilist b/sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/libm.abilist index 6c0390ed0a..36ce6efc66 100644 --- a/sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/libm.abilist +++ b/sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/libm.abilist @@ -1068,6 +1068,7 @@ GLIBC_2.41 tanpif32x F GLIBC_2.41 tanpif64 F GLIBC_2.41 tanpil F GLIBC_2.42 acosf F +GLIBC_2.42 acoshf F GLIBC_2.42 asinf F GLIBC_2.42 lgammaf F GLIBC_2.42 lgammaf_r F diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/libm.abilist b/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/libm.abilist index 98a0aef13a..b9dc71ae16 100644 --- a/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/libm.abilist +++ b/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/libm.abilist @@ -1067,6 +1067,7 @@ GLIBC_2.41 tanpif32x F GLIBC_2.41 tanpif64 F GLIBC_2.41 tanpil F GLIBC_2.42 acosf F +GLIBC_2.42 acoshf F GLIBC_2.42 asinf F GLIBC_2.42 lgammaf F GLIBC_2.42 lgammaf_r F diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc64/be/libm.abilist b/sysdeps/unix/sysv/linux/powerpc/powerpc64/be/libm.abilist index e2604bce61..ae997f0052 100644 --- a/sysdeps/unix/sysv/linux/powerpc/powerpc64/be/libm.abilist +++ b/sysdeps/unix/sysv/linux/powerpc/powerpc64/be/libm.abilist @@ -1061,6 +1061,7 @@ GLIBC_2.41 tanpif32x F GLIBC_2.41 tanpif64 F GLIBC_2.41 tanpil F GLIBC_2.42 acosf F +GLIBC_2.42 acoshf F GLIBC_2.42 asinf F GLIBC_2.42 lgammaf F GLIBC_2.42 lgammaf_r F diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc64/le/libm.abilist b/sysdeps/unix/sysv/linux/powerpc/powerpc64/le/libm.abilist index f00ae13045..68a2bad6df 100644 --- a/sysdeps/unix/sysv/linux/powerpc/powerpc64/le/libm.abilist +++ b/sysdeps/unix/sysv/linux/powerpc/powerpc64/le/libm.abilist @@ -1430,6 +1430,7 @@ GLIBC_2.41 tanpif64 F GLIBC_2.41 tanpif64x F GLIBC_2.41 tanpil F GLIBC_2.42 acosf F +GLIBC_2.42 acoshf F GLIBC_2.42 asinf F GLIBC_2.42 lgammaf F GLIBC_2.42 lgammaf_r F diff --git a/sysdeps/unix/sysv/linux/s390/s390-32/libm.abilist b/sysdeps/unix/sysv/linux/s390/s390-32/libm.abilist index bd81a6f4b7..0331713c1a 100644 --- a/sysdeps/unix/sysv/linux/s390/s390-32/libm.abilist +++ b/sysdeps/unix/sysv/linux/s390/s390-32/libm.abilist @@ -1349,6 +1349,7 @@ GLIBC_2.41 tanpif64 F GLIBC_2.41 tanpif64x F GLIBC_2.41 tanpil F GLIBC_2.42 acosf F +GLIBC_2.42 acoshf F GLIBC_2.42 asinf F GLIBC_2.42 lgammaf F GLIBC_2.42 lgammaf_r F diff --git a/sysdeps/unix/sysv/linux/s390/s390-64/libm.abilist b/sysdeps/unix/sysv/linux/s390/s390-64/libm.abilist index 29a7da583b..da49e189f5 100644 --- a/sysdeps/unix/sysv/linux/s390/s390-64/libm.abilist +++ b/sysdeps/unix/sysv/linux/s390/s390-64/libm.abilist @@ -1349,6 +1349,7 @@ GLIBC_2.41 tanpif64 F GLIBC_2.41 tanpif64x F GLIBC_2.41 tanpil F GLIBC_2.42 acosf F +GLIBC_2.42 acoshf F GLIBC_2.42 asinf F GLIBC_2.42 lgammaf F GLIBC_2.42 lgammaf_r F diff --git a/sysdeps/unix/sysv/linux/sh/be/libm.abilist b/sysdeps/unix/sysv/linux/sh/be/libm.abilist index 14f765b302..a3fc39e3cb 100644 --- a/sysdeps/unix/sysv/linux/sh/be/libm.abilist +++ b/sysdeps/unix/sysv/linux/sh/be/libm.abilist @@ -921,6 +921,7 @@ GLIBC_2.41 tanpif32x F GLIBC_2.41 tanpif64 F GLIBC_2.41 tanpil F GLIBC_2.42 acosf F +GLIBC_2.42 acoshf F GLIBC_2.42 asinf F GLIBC_2.42 lgammaf F GLIBC_2.42 lgammaf_r F diff --git a/sysdeps/unix/sysv/linux/sh/le/libm.abilist b/sysdeps/unix/sysv/linux/sh/le/libm.abilist index 14f765b302..a3fc39e3cb 100644 --- a/sysdeps/unix/sysv/linux/sh/le/libm.abilist +++ b/sysdeps/unix/sysv/linux/sh/le/libm.abilist @@ -921,6 +921,7 @@ GLIBC_2.41 tanpif32x F GLIBC_2.41 tanpif64 F GLIBC_2.41 tanpil F GLIBC_2.42 acosf F +GLIBC_2.42 acoshf F GLIBC_2.42 asinf F GLIBC_2.42 lgammaf F GLIBC_2.42 lgammaf_r F diff --git a/sysdeps/unix/sysv/linux/sparc/sparc32/libm.abilist b/sysdeps/unix/sysv/linux/sparc/sparc32/libm.abilist index bcaf43a7b8..42bce13b21 100644 --- a/sysdeps/unix/sysv/linux/sparc/sparc32/libm.abilist +++ b/sysdeps/unix/sysv/linux/sparc/sparc32/libm.abilist @@ -1356,6 +1356,7 @@ GLIBC_2.41 tanpif64 F GLIBC_2.41 tanpif64x F GLIBC_2.41 tanpil F GLIBC_2.42 acosf F +GLIBC_2.42 acoshf F GLIBC_2.42 asinf F GLIBC_2.42 lgammaf F GLIBC_2.42 lgammaf_r F diff --git a/sysdeps/unix/sysv/linux/sparc/sparc64/libm.abilist b/sysdeps/unix/sysv/linux/sparc/sparc64/libm.abilist index 39174aca28..2f2a699b6c 100644 --- a/sysdeps/unix/sysv/linux/sparc/sparc64/libm.abilist +++ b/sysdeps/unix/sysv/linux/sparc/sparc64/libm.abilist @@ -1246,6 +1246,7 @@ GLIBC_2.41 tanpif64 F GLIBC_2.41 tanpif64x F GLIBC_2.41 tanpil F GLIBC_2.42 acosf F +GLIBC_2.42 acoshf F GLIBC_2.42 asinf F GLIBC_2.42 lgammaf F GLIBC_2.42 lgammaf_r F diff --git a/sysdeps/unix/sysv/linux/x86_64/64/libm.abilist b/sysdeps/unix/sysv/linux/x86_64/64/libm.abilist index babc57384c..4291327fce 100644 --- a/sysdeps/unix/sysv/linux/x86_64/64/libm.abilist +++ b/sysdeps/unix/sysv/linux/x86_64/64/libm.abilist @@ -1279,6 +1279,7 @@ GLIBC_2.41 tanpif64 F GLIBC_2.41 tanpif64x F GLIBC_2.41 tanpil F GLIBC_2.42 acosf F +GLIBC_2.42 acoshf F GLIBC_2.42 asinf F GLIBC_2.42 lgammaf F GLIBC_2.42 lgammaf_r F diff --git a/sysdeps/unix/sysv/linux/x86_64/x32/libm.abilist b/sysdeps/unix/sysv/linux/x86_64/x32/libm.abilist index bd871170d6..9a3c7fb596 100644 --- a/sysdeps/unix/sysv/linux/x86_64/x32/libm.abilist +++ b/sysdeps/unix/sysv/linux/x86_64/x32/libm.abilist @@ -1279,6 +1279,7 @@ GLIBC_2.41 tanpif64 F GLIBC_2.41 tanpif64x F GLIBC_2.41 tanpil F GLIBC_2.42 acosf F +GLIBC_2.42 acoshf F GLIBC_2.42 asinf F GLIBC_2.42 lgammaf F GLIBC_2.42 lgammaf_r F