[PATCH v5 5/7] math: Remove the SVID error handling from sinhf
Adhemerval Zanella
adhemerval.zanella@linaro.org
Fri Oct 31 16:08:54 GMT 2025
It improves latency for about 3-10% and throughput for about 5-15%.
Tested on x86_64-linux-gnu and i686-linux-gnu.
---
math/Versions | 1 +
math/w_sinhf_compat.c | 11 ++++++++---
sysdeps/ieee754/flt-32/e_sinhf.c | 16 ++++++++++++----
sysdeps/ieee754/flt-32/w_sinhf.c | 1 +
sysdeps/m68k/m680x0/fpu/w_sinhf_compat.c | 8 ++++++++
sysdeps/mach/hurd/i386/libm.abilist | 1 +
sysdeps/unix/sysv/linux/aarch64/libm.abilist | 1 +
sysdeps/unix/sysv/linux/alpha/libm.abilist | 1 +
sysdeps/unix/sysv/linux/arm/be/libm.abilist | 1 +
sysdeps/unix/sysv/linux/arm/le/libm.abilist | 1 +
sysdeps/unix/sysv/linux/hppa/libm.abilist | 1 +
sysdeps/unix/sysv/linux/i386/libm.abilist | 1 +
.../unix/sysv/linux/m68k/coldfire/libm.abilist | 1 +
.../unix/sysv/linux/microblaze/be/libm.abilist | 1 +
.../unix/sysv/linux/microblaze/le/libm.abilist | 1 +
sysdeps/unix/sysv/linux/mips/mips32/libm.abilist | 1 +
sysdeps/unix/sysv/linux/mips/mips64/libm.abilist | 1 +
.../linux/powerpc/powerpc32/fpu/libm.abilist | 1 +
.../linux/powerpc/powerpc32/nofpu/libm.abilist | 1 +
.../sysv/linux/powerpc/powerpc64/be/libm.abilist | 1 +
.../sysv/linux/powerpc/powerpc64/le/libm.abilist | 1 +
.../unix/sysv/linux/s390/s390-32/libm.abilist | 1 +
.../unix/sysv/linux/s390/s390-64/libm.abilist | 1 +
sysdeps/unix/sysv/linux/sh/be/libm.abilist | 1 +
sysdeps/unix/sysv/linux/sh/le/libm.abilist | 1 +
.../unix/sysv/linux/sparc/sparc32/libm.abilist | 1 +
.../unix/sysv/linux/sparc/sparc64/libm.abilist | 1 +
sysdeps/unix/sysv/linux/x86_64/64/libm.abilist | 1 +
sysdeps/unix/sysv/linux/x86_64/x32/libm.abilist | 1 +
29 files changed, 54 insertions(+), 7 deletions(-)
create mode 100644 sysdeps/ieee754/flt-32/w_sinhf.c
create mode 100644 sysdeps/m68k/m680x0/fpu/w_sinhf_compat.c
diff --git a/math/Versions b/math/Versions
index 03e1d941368..307f74f6ba4 100644
--- a/math/Versions
+++ b/math/Versions
@@ -702,6 +702,7 @@ libm {
log10f;
remainder;
remainderf;
+ sinhf;
y0f;
y1f;
ynf;
diff --git a/math/w_sinhf_compat.c b/math/w_sinhf_compat.c
index e8de6675af4..77c7cefb55b 100644
--- a/math/w_sinhf_compat.c
+++ b/math/w_sinhf_compat.c
@@ -21,9 +21,9 @@
#include <math-svid-compat.h>
#include <libm-alias-float.h>
-#if LIBM_SVID_COMPAT
+#if LIBM_SVID_COMPAT && SHLIB_COMPAT (libm, GLIBC_2_0, GLIBC_2_43)
float
-__sinhf (float x)
+__sinh_compatf (float x)
{
float z = __ieee754_sinhf (x);
if (__builtin_expect (!isfinite (z), 0) && isfinite (x)
@@ -32,5 +32,10 @@ __sinhf (float x)
return z;
}
-libm_alias_float (__sinh, sinh)
+# ifdef NO_COMPAT_NEEDED
+strong_alias (__sinh_compatf, __sinhf)
+libm_alias_float (__sinh_compat, sinh)
+# else
+compat_symbol (libm, __sinh_compatf, sinhf, GLIBC_2_0);
+# endif
#endif
diff --git a/sysdeps/ieee754/flt-32/e_sinhf.c b/sysdeps/ieee754/flt-32/e_sinhf.c
index 5e812c35afe..a5a9c024931 100644
--- a/sysdeps/ieee754/flt-32/e_sinhf.c
+++ b/sysdeps/ieee754/flt-32/e_sinhf.c
@@ -24,15 +24,18 @@ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.
*/
+#include <errno.h>
#include <math.h>
#include <stdint.h>
#include <libm-alias-finite.h>
+#include <libm-alias-float.h>
+#include <math-svid-compat.h>
#include <math-narrow-eval.h>
#include "math_config.h"
#include "e_sincoshf_data.h"
float
-__ieee754_sinhf (float x)
+__sinhf (float x)
{
static const struct
{
@@ -44,15 +47,13 @@ __ieee754_sinhf (float x)
uint32_t ux = asuint (x) << 1;
if (__glibc_unlikely (ux > 0x8565a9f8u))
{ /* |x| >~ 89.4 */
- float sgn = copysignf (2.0f, x);
if (ux >= 0xff000000u)
{
if (ux << 8)
return x + x; /* nan */
return copysignf (INFINITY, x); /* +-inf */
}
- float r = math_narrow_eval (sgn * 0x1.fffffep127f);
- return r;
+ return __math_oflowf (x < 0);
}
if (__glibc_unlikely (ux < 0x7c000000u))
{ /* |x| < 0.125 */
@@ -105,4 +106,11 @@ __ieee754_sinhf (float x)
}
return ub;
}
+strong_alias (__sinhf, __ieee754_sinhf)
+#if LIBM_SVID_COMPAT
+versioned_symbol (libm, __sinhf, sinhf, GLIBC_2_43);
+libm_alias_float_other (__sinh, sinh)
+#else
+libm_alias_float (__sinh, sinh)
+#endif
libm_alias_finite (__ieee754_sinhf, __sinhf)
diff --git a/sysdeps/ieee754/flt-32/w_sinhf.c b/sysdeps/ieee754/flt-32/w_sinhf.c
new file mode 100644
index 00000000000..1cc89317007
--- /dev/null
+++ b/sysdeps/ieee754/flt-32/w_sinhf.c
@@ -0,0 +1 @@
+/* Not needed. */
diff --git a/sysdeps/m68k/m680x0/fpu/w_sinhf_compat.c b/sysdeps/m68k/m680x0/fpu/w_sinhf_compat.c
new file mode 100644
index 00000000000..e8e4bc93264
--- /dev/null
+++ b/sysdeps/m68k/m680x0/fpu/w_sinhf_compat.c
@@ -0,0 +1,8 @@
+/* m68k provides an optimized __ieee754_sinhhf. */
+#ifdef SHARED
+# define NO_COMPAT_NEEDED 1
+# include <math/w_sinhf_compat.c>
+#else
+# include <math-type-macros-float.h>
+# include <w_sinh_template.c>
+#endif
diff --git a/sysdeps/mach/hurd/i386/libm.abilist b/sysdeps/mach/hurd/i386/libm.abilist
index e3381a14878..acfbe67aacd 100644
--- a/sysdeps/mach/hurd/i386/libm.abilist
+++ b/sysdeps/mach/hurd/i386/libm.abilist
@@ -1333,6 +1333,7 @@ GLIBC_2.43 lgammaf_r F
GLIBC_2.43 log10f F
GLIBC_2.43 remainder F
GLIBC_2.43 remainderf F
+GLIBC_2.43 sinhf F
GLIBC_2.43 y0f F
GLIBC_2.43 y1f F
GLIBC_2.43 ynf F
diff --git a/sysdeps/unix/sysv/linux/aarch64/libm.abilist b/sysdeps/unix/sysv/linux/aarch64/libm.abilist
index 36a2275a6d2..ffd518644ec 100644
--- a/sysdeps/unix/sysv/linux/aarch64/libm.abilist
+++ b/sysdeps/unix/sysv/linux/aarch64/libm.abilist
@@ -1299,6 +1299,7 @@ GLIBC_2.43 lgammaf_r F
GLIBC_2.43 log10f F
GLIBC_2.43 remainder F
GLIBC_2.43 remainderf F
+GLIBC_2.43 sinhf F
GLIBC_2.43 y0f F
GLIBC_2.43 y1f F
GLIBC_2.43 ynf F
diff --git a/sysdeps/unix/sysv/linux/alpha/libm.abilist b/sysdeps/unix/sysv/linux/alpha/libm.abilist
index bee8a6c6198..191ea9e1323 100644
--- a/sysdeps/unix/sysv/linux/alpha/libm.abilist
+++ b/sysdeps/unix/sysv/linux/alpha/libm.abilist
@@ -1458,6 +1458,7 @@ GLIBC_2.43 lgammaf_r F
GLIBC_2.43 log10f F
GLIBC_2.43 remainder F
GLIBC_2.43 remainderf F
+GLIBC_2.43 sinhf F
GLIBC_2.43 y0f F
GLIBC_2.43 y1f F
GLIBC_2.43 ynf F
diff --git a/sysdeps/unix/sysv/linux/arm/be/libm.abilist b/sysdeps/unix/sysv/linux/arm/be/libm.abilist
index 169ef57561f..4390dbbb9a6 100644
--- a/sysdeps/unix/sysv/linux/arm/be/libm.abilist
+++ b/sysdeps/unix/sysv/linux/arm/be/libm.abilist
@@ -964,6 +964,7 @@ GLIBC_2.43 lgammaf_r F
GLIBC_2.43 log10f F
GLIBC_2.43 remainder F
GLIBC_2.43 remainderf F
+GLIBC_2.43 sinhf F
GLIBC_2.43 y0f F
GLIBC_2.43 y1f F
GLIBC_2.43 ynf F
diff --git a/sysdeps/unix/sysv/linux/arm/le/libm.abilist b/sysdeps/unix/sysv/linux/arm/le/libm.abilist
index 169ef57561f..4390dbbb9a6 100644
--- a/sysdeps/unix/sysv/linux/arm/le/libm.abilist
+++ b/sysdeps/unix/sysv/linux/arm/le/libm.abilist
@@ -964,6 +964,7 @@ GLIBC_2.43 lgammaf_r F
GLIBC_2.43 log10f F
GLIBC_2.43 remainder F
GLIBC_2.43 remainderf F
+GLIBC_2.43 sinhf F
GLIBC_2.43 y0f F
GLIBC_2.43 y1f F
GLIBC_2.43 ynf F
diff --git a/sysdeps/unix/sysv/linux/hppa/libm.abilist b/sysdeps/unix/sysv/linux/hppa/libm.abilist
index ab937b52329..8d7fe33087b 100644
--- a/sysdeps/unix/sysv/linux/hppa/libm.abilist
+++ b/sysdeps/unix/sysv/linux/hppa/libm.abilist
@@ -964,6 +964,7 @@ GLIBC_2.43 lgammaf_r F
GLIBC_2.43 log10f F
GLIBC_2.43 remainder F
GLIBC_2.43 remainderf F
+GLIBC_2.43 sinhf F
GLIBC_2.43 y0f F
GLIBC_2.43 y1f F
GLIBC_2.43 ynf F
diff --git a/sysdeps/unix/sysv/linux/i386/libm.abilist b/sysdeps/unix/sysv/linux/i386/libm.abilist
index e3712e4f4e5..2ee0fb5e3b9 100644
--- a/sysdeps/unix/sysv/linux/i386/libm.abilist
+++ b/sysdeps/unix/sysv/linux/i386/libm.abilist
@@ -1340,6 +1340,7 @@ GLIBC_2.43 lgammaf_r F
GLIBC_2.43 log10f F
GLIBC_2.43 remainder F
GLIBC_2.43 remainderf F
+GLIBC_2.43 sinhf F
GLIBC_2.43 y0f F
GLIBC_2.43 y1f F
GLIBC_2.43 ynf F
diff --git a/sysdeps/unix/sysv/linux/m68k/coldfire/libm.abilist b/sysdeps/unix/sysv/linux/m68k/coldfire/libm.abilist
index 169ef57561f..4390dbbb9a6 100644
--- a/sysdeps/unix/sysv/linux/m68k/coldfire/libm.abilist
+++ b/sysdeps/unix/sysv/linux/m68k/coldfire/libm.abilist
@@ -964,6 +964,7 @@ GLIBC_2.43 lgammaf_r F
GLIBC_2.43 log10f F
GLIBC_2.43 remainder F
GLIBC_2.43 remainderf F
+GLIBC_2.43 sinhf F
GLIBC_2.43 y0f F
GLIBC_2.43 y1f F
GLIBC_2.43 ynf F
diff --git a/sysdeps/unix/sysv/linux/microblaze/be/libm.abilist b/sysdeps/unix/sysv/linux/microblaze/be/libm.abilist
index 0286fc995d2..2bbc4fb5c25 100644
--- a/sysdeps/unix/sysv/linux/microblaze/be/libm.abilist
+++ b/sysdeps/unix/sysv/linux/microblaze/be/libm.abilist
@@ -964,6 +964,7 @@ GLIBC_2.43 lgammaf_r F
GLIBC_2.43 log10f F
GLIBC_2.43 remainder F
GLIBC_2.43 remainderf F
+GLIBC_2.43 sinhf F
GLIBC_2.43 y0f F
GLIBC_2.43 y1f F
GLIBC_2.43 ynf F
diff --git a/sysdeps/unix/sysv/linux/microblaze/le/libm.abilist b/sysdeps/unix/sysv/linux/microblaze/le/libm.abilist
index 0286fc995d2..2bbc4fb5c25 100644
--- a/sysdeps/unix/sysv/linux/microblaze/le/libm.abilist
+++ b/sysdeps/unix/sysv/linux/microblaze/le/libm.abilist
@@ -964,6 +964,7 @@ GLIBC_2.43 lgammaf_r F
GLIBC_2.43 log10f F
GLIBC_2.43 remainder F
GLIBC_2.43 remainderf F
+GLIBC_2.43 sinhf F
GLIBC_2.43 y0f F
GLIBC_2.43 y1f F
GLIBC_2.43 ynf F
diff --git a/sysdeps/unix/sysv/linux/mips/mips32/libm.abilist b/sysdeps/unix/sysv/linux/mips/mips32/libm.abilist
index a4c887667af..1c67aa9eb6a 100644
--- a/sysdeps/unix/sysv/linux/mips/mips32/libm.abilist
+++ b/sysdeps/unix/sysv/linux/mips/mips32/libm.abilist
@@ -964,6 +964,7 @@ GLIBC_2.43 lgammaf_r F
GLIBC_2.43 log10f F
GLIBC_2.43 remainder F
GLIBC_2.43 remainderf F
+GLIBC_2.43 sinhf F
GLIBC_2.43 y0f F
GLIBC_2.43 y1f F
GLIBC_2.43 ynf F
diff --git a/sysdeps/unix/sysv/linux/mips/mips64/libm.abilist b/sysdeps/unix/sysv/linux/mips/mips64/libm.abilist
index 2df458fd3ec..922d0ba9537 100644
--- a/sysdeps/unix/sysv/linux/mips/mips64/libm.abilist
+++ b/sysdeps/unix/sysv/linux/mips/mips64/libm.abilist
@@ -1299,6 +1299,7 @@ GLIBC_2.43 lgammaf_r F
GLIBC_2.43 log10f F
GLIBC_2.43 remainder F
GLIBC_2.43 remainderf F
+GLIBC_2.43 sinhf F
GLIBC_2.43 y0f F
GLIBC_2.43 y1f F
GLIBC_2.43 ynf F
diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/libm.abilist b/sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/libm.abilist
index b4e0f2bd6ec..6e86c2cadb3 100644
--- a/sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/libm.abilist
+++ b/sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/libm.abilist
@@ -1111,6 +1111,7 @@ GLIBC_2.43 lgammaf_r F
GLIBC_2.43 log10f F
GLIBC_2.43 remainder F
GLIBC_2.43 remainderf F
+GLIBC_2.43 sinhf F
GLIBC_2.43 y0f F
GLIBC_2.43 y1f F
GLIBC_2.43 ynf F
diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/libm.abilist b/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/libm.abilist
index c058176fc5b..e895d6b0c43 100644
--- a/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/libm.abilist
+++ b/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/libm.abilist
@@ -1109,6 +1109,7 @@ GLIBC_2.43 lgammaf_r F
GLIBC_2.43 log10f F
GLIBC_2.43 remainder F
GLIBC_2.43 remainderf F
+GLIBC_2.43 sinhf F
GLIBC_2.43 y0f F
GLIBC_2.43 y1f F
GLIBC_2.43 ynf F
diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc64/be/libm.abilist b/sysdeps/unix/sysv/linux/powerpc/powerpc64/be/libm.abilist
index 44cae8ed783..3e3e095e12b 100644
--- a/sysdeps/unix/sysv/linux/powerpc/powerpc64/be/libm.abilist
+++ b/sysdeps/unix/sysv/linux/powerpc/powerpc64/be/libm.abilist
@@ -1104,6 +1104,7 @@ GLIBC_2.43 lgammaf_r F
GLIBC_2.43 log10f F
GLIBC_2.43 remainder F
GLIBC_2.43 remainderf F
+GLIBC_2.43 sinhf F
GLIBC_2.43 y0f F
GLIBC_2.43 y1f F
GLIBC_2.43 ynf F
diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc64/le/libm.abilist b/sysdeps/unix/sysv/linux/powerpc/powerpc64/le/libm.abilist
index b5f3ff3564f..4bfcfc7abff 100644
--- a/sysdeps/unix/sysv/linux/powerpc/powerpc64/le/libm.abilist
+++ b/sysdeps/unix/sysv/linux/powerpc/powerpc64/le/libm.abilist
@@ -1488,6 +1488,7 @@ GLIBC_2.43 lgammaf_r F
GLIBC_2.43 log10f F
GLIBC_2.43 remainder F
GLIBC_2.43 remainderf F
+GLIBC_2.43 sinhf F
GLIBC_2.43 y0f F
GLIBC_2.43 y1f F
GLIBC_2.43 ynf F
diff --git a/sysdeps/unix/sysv/linux/s390/s390-32/libm.abilist b/sysdeps/unix/sysv/linux/s390/s390-32/libm.abilist
index c84a7a7e315..579c925705c 100644
--- a/sysdeps/unix/sysv/linux/s390/s390-32/libm.abilist
+++ b/sysdeps/unix/sysv/linux/s390/s390-32/libm.abilist
@@ -1402,6 +1402,7 @@ GLIBC_2.43 lgammaf_r F
GLIBC_2.43 log10f F
GLIBC_2.43 remainder F
GLIBC_2.43 remainderf F
+GLIBC_2.43 sinhf F
GLIBC_2.43 y0f F
GLIBC_2.43 y1f F
GLIBC_2.43 ynf F
diff --git a/sysdeps/unix/sysv/linux/s390/s390-64/libm.abilist b/sysdeps/unix/sysv/linux/s390/s390-64/libm.abilist
index 3f1d3574fe1..627dc7cc2df 100644
--- a/sysdeps/unix/sysv/linux/s390/s390-64/libm.abilist
+++ b/sysdeps/unix/sysv/linux/s390/s390-64/libm.abilist
@@ -1402,6 +1402,7 @@ GLIBC_2.43 lgammaf_r F
GLIBC_2.43 log10f F
GLIBC_2.43 remainder F
GLIBC_2.43 remainderf F
+GLIBC_2.43 sinhf F
GLIBC_2.43 y0f F
GLIBC_2.43 y1f F
GLIBC_2.43 ynf F
diff --git a/sysdeps/unix/sysv/linux/sh/be/libm.abilist b/sysdeps/unix/sysv/linux/sh/be/libm.abilist
index bd0c0a255d8..f2947818369 100644
--- a/sysdeps/unix/sysv/linux/sh/be/libm.abilist
+++ b/sysdeps/unix/sysv/linux/sh/be/libm.abilist
@@ -964,6 +964,7 @@ GLIBC_2.43 lgammaf_r F
GLIBC_2.43 log10f F
GLIBC_2.43 remainder F
GLIBC_2.43 remainderf F
+GLIBC_2.43 sinhf F
GLIBC_2.43 y0f F
GLIBC_2.43 y1f F
GLIBC_2.43 ynf F
diff --git a/sysdeps/unix/sysv/linux/sh/le/libm.abilist b/sysdeps/unix/sysv/linux/sh/le/libm.abilist
index bd0c0a255d8..f2947818369 100644
--- a/sysdeps/unix/sysv/linux/sh/le/libm.abilist
+++ b/sysdeps/unix/sysv/linux/sh/le/libm.abilist
@@ -964,6 +964,7 @@ GLIBC_2.43 lgammaf_r F
GLIBC_2.43 log10f F
GLIBC_2.43 remainder F
GLIBC_2.43 remainderf F
+GLIBC_2.43 sinhf F
GLIBC_2.43 y0f F
GLIBC_2.43 y1f F
GLIBC_2.43 ynf F
diff --git a/sysdeps/unix/sysv/linux/sparc/sparc32/libm.abilist b/sysdeps/unix/sysv/linux/sparc/sparc32/libm.abilist
index 26c77caa31c..125d15436e8 100644
--- a/sysdeps/unix/sysv/linux/sparc/sparc32/libm.abilist
+++ b/sysdeps/unix/sysv/linux/sparc/sparc32/libm.abilist
@@ -1409,6 +1409,7 @@ GLIBC_2.43 lgammaf_r F
GLIBC_2.43 log10f F
GLIBC_2.43 remainder F
GLIBC_2.43 remainderf F
+GLIBC_2.43 sinhf F
GLIBC_2.43 y0f F
GLIBC_2.43 y1f F
GLIBC_2.43 ynf F
diff --git a/sysdeps/unix/sysv/linux/sparc/sparc64/libm.abilist b/sysdeps/unix/sysv/linux/sparc/sparc64/libm.abilist
index 0c56589e204..3288af27afc 100644
--- a/sysdeps/unix/sysv/linux/sparc/sparc64/libm.abilist
+++ b/sysdeps/unix/sysv/linux/sparc/sparc64/libm.abilist
@@ -1299,6 +1299,7 @@ GLIBC_2.43 lgammaf_r F
GLIBC_2.43 log10f F
GLIBC_2.43 remainder F
GLIBC_2.43 remainderf F
+GLIBC_2.43 sinhf F
GLIBC_2.43 y0f F
GLIBC_2.43 y1f F
GLIBC_2.43 ynf F
diff --git a/sysdeps/unix/sysv/linux/x86_64/64/libm.abilist b/sysdeps/unix/sysv/linux/x86_64/64/libm.abilist
index b0a77f545e2..4ed2cccd2d1 100644
--- a/sysdeps/unix/sysv/linux/x86_64/64/libm.abilist
+++ b/sysdeps/unix/sysv/linux/x86_64/64/libm.abilist
@@ -1332,6 +1332,7 @@ GLIBC_2.43 lgammaf_r F
GLIBC_2.43 log10f F
GLIBC_2.43 remainder F
GLIBC_2.43 remainderf F
+GLIBC_2.43 sinhf F
GLIBC_2.43 y0f F
GLIBC_2.43 y1f F
GLIBC_2.43 ynf F
diff --git a/sysdeps/unix/sysv/linux/x86_64/x32/libm.abilist b/sysdeps/unix/sysv/linux/x86_64/x32/libm.abilist
index 2d31c232739..ef26213e436 100644
--- a/sysdeps/unix/sysv/linux/x86_64/x32/libm.abilist
+++ b/sysdeps/unix/sysv/linux/x86_64/x32/libm.abilist
@@ -1332,6 +1332,7 @@ GLIBC_2.43 lgammaf_r F
GLIBC_2.43 log10f F
GLIBC_2.43 remainder F
GLIBC_2.43 remainderf F
+GLIBC_2.43 sinhf F
GLIBC_2.43 y0f F
GLIBC_2.43 y1f F
GLIBC_2.43 ynf F
--
2.43.0
More information about the Libc-alpha
mailing list