[PATCH v7 1/2] math: Remove the SVID error handling from lgammaf/lgammaf_r
Adhemerval Zanella
adhemerval.zanella@linaro.org
Wed Nov 5 11:10:00 GMT 2025
It improves latency throughput for about 2%.
Tested on x86_64-linux-gnu and i686-linux-gnu.
---
math/Versions | 2 ++
math/lgamma-compat.h | 15 +++++++++---
math/w_lgammaf_compat2.c | 2 +-
math/w_lgammaf_main.c | 7 +-----
math/w_lgammaf_r_compat.c | 5 ++--
sysdeps/ieee754/flt-32/e_lgammaf_r.c | 24 ++++++++++++++-----
sysdeps/ieee754/flt-32/w_lgammaf.c | 17 +++++++++++++
sysdeps/ieee754/flt-32/w_lgammaf_r.c | 1 +
sysdeps/mach/hurd/i386/libm.abilist | 2 ++
sysdeps/unix/sysv/linux/aarch64/libm.abilist | 2 ++
sysdeps/unix/sysv/linux/alpha/libm.abilist | 2 ++
sysdeps/unix/sysv/linux/arm/be/libm.abilist | 2 ++
sysdeps/unix/sysv/linux/arm/le/libm.abilist | 2 ++
sysdeps/unix/sysv/linux/hppa/libm.abilist | 2 ++
sysdeps/unix/sysv/linux/i386/libm.abilist | 2 ++
.../sysv/linux/m68k/coldfire/libm.abilist | 2 ++
.../unix/sysv/linux/m68k/m680x0/libm.abilist | 2 ++
.../sysv/linux/microblaze/be/libm.abilist | 2 ++
.../sysv/linux/microblaze/le/libm.abilist | 2 ++
.../unix/sysv/linux/mips/mips32/libm.abilist | 2 ++
.../unix/sysv/linux/mips/mips64/libm.abilist | 2 ++
.../linux/powerpc/powerpc32/fpu/libm.abilist | 2 ++
.../powerpc/powerpc32/nofpu/libm.abilist | 1 +
.../linux/powerpc/powerpc64/be/libm.abilist | 2 ++
.../linux/powerpc/powerpc64/le/libm.abilist | 2 ++
.../unix/sysv/linux/s390/s390-32/libm.abilist | 2 ++
.../unix/sysv/linux/s390/s390-64/libm.abilist | 2 ++
sysdeps/unix/sysv/linux/sh/be/libm.abilist | 2 ++
sysdeps/unix/sysv/linux/sh/le/libm.abilist | 2 ++
.../sysv/linux/sparc/sparc32/libm.abilist | 2 ++
.../sysv/linux/sparc/sparc64/libm.abilist | 2 ++
.../unix/sysv/linux/x86_64/64/libm.abilist | 2 ++
.../unix/sysv/linux/x86_64/x32/libm.abilist | 2 ++
33 files changed, 104 insertions(+), 18 deletions(-)
create mode 100644 sysdeps/ieee754/flt-32/w_lgammaf.c
create mode 100644 sysdeps/ieee754/flt-32/w_lgammaf_r.c
diff --git a/math/Versions b/math/Versions
index bf57cc9176..3afbc427b9 100644
--- a/math/Versions
+++ b/math/Versions
@@ -697,6 +697,8 @@ libm {
j0f;
j1f;
jnf;
+ lgammaf;
+ lgammaf_r;
log10f;
remainder;
remainderf;
diff --git a/math/lgamma-compat.h b/math/lgamma-compat.h
index bf4acef559..795e97d5a0 100644
--- a/math/lgamma-compat.h
+++ b/math/lgamma-compat.h
@@ -34,10 +34,17 @@
old glibc.
Users of this file define USE_AS_COMPAT to 0 when building the main
- version of lgamma, 1 when building the compatibility version. */
+ version of lgamma, 1 when building the compatibility version that
+ handles signgam visibility, and 2 when building the compatibility
+ that handles SVID support). */
+#if USE_AS_COMPAT <= 1
#define LGAMMA_OLD_VER GLIBC_2_0
#define LGAMMA_NEW_VER GLIBC_2_23
+#elif USE_AS_COMPAT == 2
+#define LGAMMA_OLD_VER GLIBC_2_23
+#define LGAMMA_NEW_VER GLIBC_2_43
+#endif
#define HAVE_LGAMMA_COMPAT SHLIB_COMPAT (libm, LGAMMA_OLD_VER, LGAMMA_NEW_VER)
/* Whether to build this version at all. */
@@ -45,8 +52,10 @@
(LIBM_SVID_COMPAT && (HAVE_LGAMMA_COMPAT || !USE_AS_COMPAT))
/* The name to use for this version. */
-#if USE_AS_COMPAT
+#if USE_AS_COMPAT == 1
# define LGFUNC(FUNC) FUNC ## _compat
+#elif USE_AS_COMPAT == 2
+# define LGFUNC(FUNC) FUNC ## _compat2
#else
# define LGFUNC(FUNC) FUNC
#endif
@@ -54,7 +63,7 @@
/* If there is a compatibility version, gamma (not an ISO C function,
so never a problem for it to set signgam) points directly to it
rather than having separate versions. */
-#define GAMMA_ALIAS (USE_AS_COMPAT ? HAVE_LGAMMA_COMPAT : !HAVE_LGAMMA_COMPAT)
+#define GAMMA_ALIAS (USE_AS_COMPAT == 1 ? HAVE_LGAMMA_COMPAT : !HAVE_LGAMMA_COMPAT)
/* How to call the underlying lgamma_r function. */
#define CALL_LGAMMA(TYPE, FUNC, ARG) \
diff --git a/math/w_lgammaf_compat2.c b/math/w_lgammaf_compat2.c
index 5fc402260c..3a942dbe04 100644
--- a/math/w_lgammaf_compat2.c
+++ b/math/w_lgammaf_compat2.c
@@ -1,2 +1,2 @@
-#define USE_AS_COMPAT 0
+#define USE_AS_COMPAT 2
#include <w_lgammaf_main.c>
diff --git a/math/w_lgammaf_main.c b/math/w_lgammaf_main.c
index 22b7f8fc53..8d475d3a6c 100644
--- a/math/w_lgammaf_main.c
+++ b/math/w_lgammaf_main.c
@@ -33,12 +33,7 @@ LGFUNC (__lgammaf) (float x)
return y;
}
-# if USE_AS_COMPAT
-compat_symbol (libm, __lgammaf_compat, lgammaf, LGAMMA_OLD_VER);
-# else
-versioned_symbol (libm, __lgammaf, lgammaf, LGAMMA_NEW_VER);
-libm_alias_float_other (__lgamma, lgamma)
-# endif
+compat_symbol (libm, LGFUNC (__lgammaf), lgammaf, LGAMMA_OLD_VER);
# if GAMMA_ALIAS
strong_alias (LGFUNC (__lgammaf), __gammaf)
weak_alias (__gammaf, gammaf)
diff --git a/math/w_lgammaf_r_compat.c b/math/w_lgammaf_r_compat.c
index be01b6daac..524f9901d3 100644
--- a/math/w_lgammaf_r_compat.c
+++ b/math/w_lgammaf_r_compat.c
@@ -20,11 +20,12 @@
#include <math_private.h>
#include <math-svid-compat.h>
#include <libm-alias-float.h>
+#include <shlib-compat.h>
#if LIBM_SVID_COMPAT
float
-__lgammaf_r(float x, int *signgamp)
+__lgammaf_r_svidf(float x, int *signgamp)
{
float y = __ieee754_lgammaf_r(x,signgamp);
if(__builtin_expect(!isfinite(y), 0)
@@ -36,5 +37,5 @@ __lgammaf_r(float x, int *signgamp)
return y;
}
-libm_alias_float_r (__lgamma, lgamma, _r)
+compat_symbol (libm, __lgammaf_r_svidf, lgammaf_r, GLIBC_2_0);
#endif
diff --git a/sysdeps/ieee754/flt-32/e_lgammaf_r.c b/sysdeps/ieee754/flt-32/e_lgammaf_r.c
index 059afa86c6..2fb4784b59 100644
--- a/sysdeps/ieee754/flt-32/e_lgammaf_r.c
+++ b/sysdeps/ieee754/flt-32/e_lgammaf_r.c
@@ -36,6 +36,8 @@ SOFTWARE.
#include <math.h>
#include <libm-alias-finite.h>
#include <limits.h>
+#include <libm-alias-float.h>
+#include <math-svid-compat.h>
#include <math-narrow-eval.h>
#include "math_config.h"
@@ -108,7 +110,7 @@ as_ln (double x)
}
float
-__ieee754_lgammaf_r (float x, int *signgamp)
+__lgammaf_r (float x, int *signgamp)
{
static const struct
{
@@ -161,7 +163,7 @@ __ieee754_lgammaf_r (float x, int *signgamp)
if (x <= 0.0f)
{
*signgamp = asuint (x) >> 31 ? -1 : 1;
- return 1.0f / 0.0f;
+ return __math_divzerof (0);
}
if (x == 1.0f || x == 2.0f)
{
@@ -206,10 +208,11 @@ __ieee754_lgammaf_r (float x, int *signgamp)
if (ax > 0x1.afc1ap+1f)
{
if (__glibc_unlikely (x > 0x1.895f1cp+121f))
- return math_narrow_eval (0x1p127f * 0x1p127f);
+ return __math_oflowf (0);
+
/* |x|>=2**23, must be -integer */
if (__glibc_unlikely (x < 0.0f && ax > 0x1p+23f))
- return ax / 0.0f;
+ return __math_divzerof (0);
double lz = as_ln (z);
f = (z - 0.5) * (lz - 1) + 0x1.acfe390c97d69p-2;
if (ax < 0x1.0p+20f)
@@ -271,7 +274,7 @@ __ieee754_lgammaf_r (float x, int *signgamp)
{
int ni = floorf (-2 * x);
if ((ni & 1) == 0 && ni == -2 * x)
- return 1.0f / 0.0f;
+ return __math_divzerof (0);
}
const double c0 = 0x1.3cc0e6a0106b3p+2;
static const double rd[] =
@@ -363,4 +366,13 @@ __ieee754_lgammaf_r (float x, int *signgamp)
}
return r;
}
-libm_alias_finite (__ieee754_lgammaf_r, __lgammaf_r)
+strong_alias (__lgammaf_r, __ieee754_lgammaf_r)
+libm_alias_finite (__lgammaf_r, __lgammaf_r)
+#if LIBM_SVID_COMPAT
+versioned_symbol (libm, __lgammaf_r, lgammaf_r, GLIBC_2_43);
+# if __HAVE_FLOAT32 && !__HAVE_DISTINCT_FLOAT32
+weak_alias (__lgammaf_r, lgammaf32_r)
+# endif
+#else
+libm_alias_float_r (__lgamma, lgamma, _r)
+#endif
diff --git a/sysdeps/ieee754/flt-32/w_lgammaf.c b/sysdeps/ieee754/flt-32/w_lgammaf.c
new file mode 100644
index 0000000000..5fc9b46866
--- /dev/null
+++ b/sysdeps/ieee754/flt-32/w_lgammaf.c
@@ -0,0 +1,17 @@
+#include <math-svid-compat.h>
+#include <math.h>
+#include <libm-alias-float.h>
+
+float
+__lgammaf (float x)
+{
+ return __lgammaf_r (x, &__signgam);
+}
+#if LIBM_SVID_COMPAT
+versioned_symbol (libm, __lgammaf, lgammaf, GLIBC_2_43);
+libm_alias_float_other (__lgamma, lgamma)
+#else
+libm_alias_float (__lgamma, lgamma)
+strong_alias (__lgammaf, __gammaf)
+weak_alias (__gammaf, gammaf)
+#endif
diff --git a/sysdeps/ieee754/flt-32/w_lgammaf_r.c b/sysdeps/ieee754/flt-32/w_lgammaf_r.c
new file mode 100644
index 0000000000..1cc8931700
--- /dev/null
+++ b/sysdeps/ieee754/flt-32/w_lgammaf_r.c
@@ -0,0 +1 @@
+/* Not needed. */
diff --git a/sysdeps/mach/hurd/i386/libm.abilist b/sysdeps/mach/hurd/i386/libm.abilist
index 024bc15fe5..95aeaacda6 100644
--- a/sysdeps/mach/hurd/i386/libm.abilist
+++ b/sysdeps/mach/hurd/i386/libm.abilist
@@ -1328,6 +1328,8 @@ GLIBC_2.43 fmodf F
GLIBC_2.43 j0f F
GLIBC_2.43 j1f F
GLIBC_2.43 jnf F
+GLIBC_2.43 lgammaf F
+GLIBC_2.43 lgammaf_r F
GLIBC_2.43 log10f F
GLIBC_2.43 remainder F
GLIBC_2.43 remainderf F
diff --git a/sysdeps/unix/sysv/linux/aarch64/libm.abilist b/sysdeps/unix/sysv/linux/aarch64/libm.abilist
index 9e803a74ac..4e203bf5a4 100644
--- a/sysdeps/unix/sysv/linux/aarch64/libm.abilist
+++ b/sysdeps/unix/sysv/linux/aarch64/libm.abilist
@@ -1294,6 +1294,8 @@ GLIBC_2.43 coshf F
GLIBC_2.43 j0f F
GLIBC_2.43 j1f F
GLIBC_2.43 jnf F
+GLIBC_2.43 lgammaf F
+GLIBC_2.43 lgammaf_r F
GLIBC_2.43 log10f F
GLIBC_2.43 remainder F
GLIBC_2.43 remainderf F
diff --git a/sysdeps/unix/sysv/linux/alpha/libm.abilist b/sysdeps/unix/sysv/linux/alpha/libm.abilist
index dbbad3c8fb..3d587a92a6 100644
--- a/sysdeps/unix/sysv/linux/alpha/libm.abilist
+++ b/sysdeps/unix/sysv/linux/alpha/libm.abilist
@@ -1453,6 +1453,8 @@ GLIBC_2.43 coshf F
GLIBC_2.43 j0f F
GLIBC_2.43 j1f F
GLIBC_2.43 jnf F
+GLIBC_2.43 lgammaf F
+GLIBC_2.43 lgammaf_r F
GLIBC_2.43 log10f F
GLIBC_2.43 remainder F
GLIBC_2.43 remainderf F
diff --git a/sysdeps/unix/sysv/linux/arm/be/libm.abilist b/sysdeps/unix/sysv/linux/arm/be/libm.abilist
index b819f6d8d0..635490118f 100644
--- a/sysdeps/unix/sysv/linux/arm/be/libm.abilist
+++ b/sysdeps/unix/sysv/linux/arm/be/libm.abilist
@@ -959,6 +959,8 @@ GLIBC_2.43 coshf F
GLIBC_2.43 j0f F
GLIBC_2.43 j1f F
GLIBC_2.43 jnf F
+GLIBC_2.43 lgammaf F
+GLIBC_2.43 lgammaf_r F
GLIBC_2.43 log10f F
GLIBC_2.43 remainder F
GLIBC_2.43 remainderf F
diff --git a/sysdeps/unix/sysv/linux/arm/le/libm.abilist b/sysdeps/unix/sysv/linux/arm/le/libm.abilist
index b819f6d8d0..635490118f 100644
--- a/sysdeps/unix/sysv/linux/arm/le/libm.abilist
+++ b/sysdeps/unix/sysv/linux/arm/le/libm.abilist
@@ -959,6 +959,8 @@ GLIBC_2.43 coshf F
GLIBC_2.43 j0f F
GLIBC_2.43 j1f F
GLIBC_2.43 jnf F
+GLIBC_2.43 lgammaf F
+GLIBC_2.43 lgammaf_r F
GLIBC_2.43 log10f F
GLIBC_2.43 remainder F
GLIBC_2.43 remainderf F
diff --git a/sysdeps/unix/sysv/linux/hppa/libm.abilist b/sysdeps/unix/sysv/linux/hppa/libm.abilist
index 0091839d73..3e9cb9fd3e 100644
--- a/sysdeps/unix/sysv/linux/hppa/libm.abilist
+++ b/sysdeps/unix/sysv/linux/hppa/libm.abilist
@@ -959,6 +959,8 @@ GLIBC_2.43 coshf F
GLIBC_2.43 j0f F
GLIBC_2.43 j1f F
GLIBC_2.43 jnf F
+GLIBC_2.43 lgammaf F
+GLIBC_2.43 lgammaf_r F
GLIBC_2.43 log10f F
GLIBC_2.43 remainder F
GLIBC_2.43 remainderf F
diff --git a/sysdeps/unix/sysv/linux/i386/libm.abilist b/sysdeps/unix/sysv/linux/i386/libm.abilist
index 6fc86a9230..b76820ffad 100644
--- a/sysdeps/unix/sysv/linux/i386/libm.abilist
+++ b/sysdeps/unix/sysv/linux/i386/libm.abilist
@@ -1335,6 +1335,8 @@ GLIBC_2.43 fmodf F
GLIBC_2.43 j0f F
GLIBC_2.43 j1f F
GLIBC_2.43 jnf F
+GLIBC_2.43 lgammaf F
+GLIBC_2.43 lgammaf_r F
GLIBC_2.43 log10f F
GLIBC_2.43 remainder F
GLIBC_2.43 remainderf F
diff --git a/sysdeps/unix/sysv/linux/m68k/coldfire/libm.abilist b/sysdeps/unix/sysv/linux/m68k/coldfire/libm.abilist
index b819f6d8d0..635490118f 100644
--- a/sysdeps/unix/sysv/linux/m68k/coldfire/libm.abilist
+++ b/sysdeps/unix/sysv/linux/m68k/coldfire/libm.abilist
@@ -959,6 +959,8 @@ GLIBC_2.43 coshf F
GLIBC_2.43 j0f F
GLIBC_2.43 j1f F
GLIBC_2.43 jnf F
+GLIBC_2.43 lgammaf F
+GLIBC_2.43 lgammaf_r F
GLIBC_2.43 log10f F
GLIBC_2.43 remainder F
GLIBC_2.43 remainderf F
diff --git a/sysdeps/unix/sysv/linux/m68k/m680x0/libm.abilist b/sysdeps/unix/sysv/linux/m68k/m680x0/libm.abilist
index 968c41a8bd..67156d74fa 100644
--- a/sysdeps/unix/sysv/linux/m68k/m680x0/libm.abilist
+++ b/sysdeps/unix/sysv/linux/m68k/m680x0/libm.abilist
@@ -992,6 +992,8 @@ GLIBC_2.43 fmodf F
GLIBC_2.43 j0f F
GLIBC_2.43 j1f F
GLIBC_2.43 jnf F
+GLIBC_2.43 lgammaf F
+GLIBC_2.43 lgammaf_r F
GLIBC_2.43 remainder F
GLIBC_2.43 remainderf F
GLIBC_2.43 sqrtf F
diff --git a/sysdeps/unix/sysv/linux/microblaze/be/libm.abilist b/sysdeps/unix/sysv/linux/microblaze/be/libm.abilist
index 2f6ac7784d..86744483ed 100644
--- a/sysdeps/unix/sysv/linux/microblaze/be/libm.abilist
+++ b/sysdeps/unix/sysv/linux/microblaze/be/libm.abilist
@@ -959,6 +959,8 @@ GLIBC_2.43 coshf F
GLIBC_2.43 j0f F
GLIBC_2.43 j1f F
GLIBC_2.43 jnf F
+GLIBC_2.43 lgammaf F
+GLIBC_2.43 lgammaf_r F
GLIBC_2.43 log10f F
GLIBC_2.43 remainder F
GLIBC_2.43 remainderf F
diff --git a/sysdeps/unix/sysv/linux/microblaze/le/libm.abilist b/sysdeps/unix/sysv/linux/microblaze/le/libm.abilist
index 2f6ac7784d..86744483ed 100644
--- a/sysdeps/unix/sysv/linux/microblaze/le/libm.abilist
+++ b/sysdeps/unix/sysv/linux/microblaze/le/libm.abilist
@@ -959,6 +959,8 @@ GLIBC_2.43 coshf F
GLIBC_2.43 j0f F
GLIBC_2.43 j1f F
GLIBC_2.43 jnf F
+GLIBC_2.43 lgammaf F
+GLIBC_2.43 lgammaf_r F
GLIBC_2.43 log10f F
GLIBC_2.43 remainder F
GLIBC_2.43 remainderf F
diff --git a/sysdeps/unix/sysv/linux/mips/mips32/libm.abilist b/sysdeps/unix/sysv/linux/mips/mips32/libm.abilist
index 92eaa36b8d..24e19f31f7 100644
--- a/sysdeps/unix/sysv/linux/mips/mips32/libm.abilist
+++ b/sysdeps/unix/sysv/linux/mips/mips32/libm.abilist
@@ -959,6 +959,8 @@ GLIBC_2.43 coshf F
GLIBC_2.43 j0f F
GLIBC_2.43 j1f F
GLIBC_2.43 jnf F
+GLIBC_2.43 lgammaf F
+GLIBC_2.43 lgammaf_r F
GLIBC_2.43 log10f F
GLIBC_2.43 remainder F
GLIBC_2.43 remainderf F
diff --git a/sysdeps/unix/sysv/linux/mips/mips64/libm.abilist b/sysdeps/unix/sysv/linux/mips/mips64/libm.abilist
index 13f0831083..0e2c6c6464 100644
--- a/sysdeps/unix/sysv/linux/mips/mips64/libm.abilist
+++ b/sysdeps/unix/sysv/linux/mips/mips64/libm.abilist
@@ -1294,6 +1294,8 @@ GLIBC_2.43 coshf F
GLIBC_2.43 j0f F
GLIBC_2.43 j1f F
GLIBC_2.43 jnf F
+GLIBC_2.43 lgammaf F
+GLIBC_2.43 lgammaf_r F
GLIBC_2.43 log10f F
GLIBC_2.43 remainder F
GLIBC_2.43 remainderf F
diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/libm.abilist b/sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/libm.abilist
index 80a5aaf8b8..1dfe3281c2 100644
--- a/sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/libm.abilist
+++ b/sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/libm.abilist
@@ -1106,6 +1106,8 @@ GLIBC_2.43 coshf F
GLIBC_2.43 j0f F
GLIBC_2.43 j1f F
GLIBC_2.43 jnf F
+GLIBC_2.43 lgammaf F
+GLIBC_2.43 lgammaf_r F
GLIBC_2.43 log10f F
GLIBC_2.43 remainder F
GLIBC_2.43 remainderf F
diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/libm.abilist b/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/libm.abilist
index 2a876cae98..bc167e6424 100644
--- a/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/libm.abilist
+++ b/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/libm.abilist
@@ -1105,6 +1105,7 @@ GLIBC_2.43 coshf F
GLIBC_2.43 j0f F
GLIBC_2.43 j1f F
GLIBC_2.43 jnf F
+GLIBC_2.43 lgammaf_r F
GLIBC_2.43 log10f F
GLIBC_2.43 remainder F
GLIBC_2.43 remainderf F
diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc64/be/libm.abilist b/sysdeps/unix/sysv/linux/powerpc/powerpc64/be/libm.abilist
index 4cbec9212f..d123eeef26 100644
--- a/sysdeps/unix/sysv/linux/powerpc/powerpc64/be/libm.abilist
+++ b/sysdeps/unix/sysv/linux/powerpc/powerpc64/be/libm.abilist
@@ -1099,6 +1099,8 @@ GLIBC_2.43 coshf F
GLIBC_2.43 j0f F
GLIBC_2.43 j1f F
GLIBC_2.43 jnf F
+GLIBC_2.43 lgammaf F
+GLIBC_2.43 lgammaf_r F
GLIBC_2.43 log10f F
GLIBC_2.43 remainder F
GLIBC_2.43 remainderf F
diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc64/le/libm.abilist b/sysdeps/unix/sysv/linux/powerpc/powerpc64/le/libm.abilist
index 55b3fa1906..ca9f3cd4b9 100644
--- a/sysdeps/unix/sysv/linux/powerpc/powerpc64/le/libm.abilist
+++ b/sysdeps/unix/sysv/linux/powerpc/powerpc64/le/libm.abilist
@@ -1483,6 +1483,8 @@ GLIBC_2.43 coshf F
GLIBC_2.43 j0f F
GLIBC_2.43 j1f F
GLIBC_2.43 jnf F
+GLIBC_2.43 lgammaf F
+GLIBC_2.43 lgammaf_r F
GLIBC_2.43 log10f F
GLIBC_2.43 remainder F
GLIBC_2.43 remainderf F
diff --git a/sysdeps/unix/sysv/linux/s390/s390-32/libm.abilist b/sysdeps/unix/sysv/linux/s390/s390-32/libm.abilist
index 61cc0a5ba1..f36d31952b 100644
--- a/sysdeps/unix/sysv/linux/s390/s390-32/libm.abilist
+++ b/sysdeps/unix/sysv/linux/s390/s390-32/libm.abilist
@@ -1397,6 +1397,8 @@ GLIBC_2.43 coshf F
GLIBC_2.43 j0f F
GLIBC_2.43 j1f F
GLIBC_2.43 jnf F
+GLIBC_2.43 lgammaf F
+GLIBC_2.43 lgammaf_r F
GLIBC_2.43 log10f F
GLIBC_2.43 remainder F
GLIBC_2.43 remainderf F
diff --git a/sysdeps/unix/sysv/linux/s390/s390-64/libm.abilist b/sysdeps/unix/sysv/linux/s390/s390-64/libm.abilist
index 1b4db358a4..355df9f489 100644
--- a/sysdeps/unix/sysv/linux/s390/s390-64/libm.abilist
+++ b/sysdeps/unix/sysv/linux/s390/s390-64/libm.abilist
@@ -1397,6 +1397,8 @@ GLIBC_2.43 coshf F
GLIBC_2.43 j0f F
GLIBC_2.43 j1f F
GLIBC_2.43 jnf F
+GLIBC_2.43 lgammaf F
+GLIBC_2.43 lgammaf_r F
GLIBC_2.43 log10f F
GLIBC_2.43 remainder F
GLIBC_2.43 remainderf F
diff --git a/sysdeps/unix/sysv/linux/sh/be/libm.abilist b/sysdeps/unix/sysv/linux/sh/be/libm.abilist
index 32857b8b54..9b626d9580 100644
--- a/sysdeps/unix/sysv/linux/sh/be/libm.abilist
+++ b/sysdeps/unix/sysv/linux/sh/be/libm.abilist
@@ -959,6 +959,8 @@ GLIBC_2.43 coshf F
GLIBC_2.43 j0f F
GLIBC_2.43 j1f F
GLIBC_2.43 jnf F
+GLIBC_2.43 lgammaf F
+GLIBC_2.43 lgammaf_r F
GLIBC_2.43 log10f F
GLIBC_2.43 remainder F
GLIBC_2.43 remainderf F
diff --git a/sysdeps/unix/sysv/linux/sh/le/libm.abilist b/sysdeps/unix/sysv/linux/sh/le/libm.abilist
index 32857b8b54..9b626d9580 100644
--- a/sysdeps/unix/sysv/linux/sh/le/libm.abilist
+++ b/sysdeps/unix/sysv/linux/sh/le/libm.abilist
@@ -959,6 +959,8 @@ GLIBC_2.43 coshf F
GLIBC_2.43 j0f F
GLIBC_2.43 j1f F
GLIBC_2.43 jnf F
+GLIBC_2.43 lgammaf F
+GLIBC_2.43 lgammaf_r F
GLIBC_2.43 log10f F
GLIBC_2.43 remainder F
GLIBC_2.43 remainderf F
diff --git a/sysdeps/unix/sysv/linux/sparc/sparc32/libm.abilist b/sysdeps/unix/sysv/linux/sparc/sparc32/libm.abilist
index 364f51b035..7ddd3c4b5e 100644
--- a/sysdeps/unix/sysv/linux/sparc/sparc32/libm.abilist
+++ b/sysdeps/unix/sysv/linux/sparc/sparc32/libm.abilist
@@ -1404,6 +1404,8 @@ GLIBC_2.43 coshf F
GLIBC_2.43 j0f F
GLIBC_2.43 j1f F
GLIBC_2.43 jnf F
+GLIBC_2.43 lgammaf F
+GLIBC_2.43 lgammaf_r F
GLIBC_2.43 log10f F
GLIBC_2.43 remainder F
GLIBC_2.43 remainderf F
diff --git a/sysdeps/unix/sysv/linux/sparc/sparc64/libm.abilist b/sysdeps/unix/sysv/linux/sparc/sparc64/libm.abilist
index 49e898d5eb..5cd12dfb19 100644
--- a/sysdeps/unix/sysv/linux/sparc/sparc64/libm.abilist
+++ b/sysdeps/unix/sysv/linux/sparc/sparc64/libm.abilist
@@ -1294,6 +1294,8 @@ GLIBC_2.43 coshf F
GLIBC_2.43 j0f F
GLIBC_2.43 j1f F
GLIBC_2.43 jnf F
+GLIBC_2.43 lgammaf F
+GLIBC_2.43 lgammaf_r F
GLIBC_2.43 log10f F
GLIBC_2.43 remainder F
GLIBC_2.43 remainderf F
diff --git a/sysdeps/unix/sysv/linux/x86_64/64/libm.abilist b/sysdeps/unix/sysv/linux/x86_64/64/libm.abilist
index 73b55ae4dd..eb267367f1 100644
--- a/sysdeps/unix/sysv/linux/x86_64/64/libm.abilist
+++ b/sysdeps/unix/sysv/linux/x86_64/64/libm.abilist
@@ -1327,6 +1327,8 @@ GLIBC_2.43 coshf F
GLIBC_2.43 j0f F
GLIBC_2.43 j1f F
GLIBC_2.43 jnf F
+GLIBC_2.43 lgammaf F
+GLIBC_2.43 lgammaf_r F
GLIBC_2.43 log10f F
GLIBC_2.43 remainder F
GLIBC_2.43 remainderf F
diff --git a/sysdeps/unix/sysv/linux/x86_64/x32/libm.abilist b/sysdeps/unix/sysv/linux/x86_64/x32/libm.abilist
index a138d3e070..d1fea5ad56 100644
--- a/sysdeps/unix/sysv/linux/x86_64/x32/libm.abilist
+++ b/sysdeps/unix/sysv/linux/x86_64/x32/libm.abilist
@@ -1327,6 +1327,8 @@ GLIBC_2.43 coshf F
GLIBC_2.43 j0f F
GLIBC_2.43 j1f F
GLIBC_2.43 jnf F
+GLIBC_2.43 lgammaf F
+GLIBC_2.43 lgammaf_r F
GLIBC_2.43 log10f F
GLIBC_2.43 remainder F
GLIBC_2.43 remainderf F
--
2.43.0
More information about the Libc-alpha
mailing list