[PATCH v5 0/7] Remove the SVID wrapper from most of float functions
Adhemerval Zanella
adhemerval.zanella@linaro.org
Fri Oct 31 16:08:49 GMT 2025
This patchset relocates SVID error handling support to compatibility
symbols for applicable ABIs. SVID handling remains for deprecated
symbols gammaf and dremf.
Changes from v4:
* Added Wilco's suggestions.
Changes from v3:
* Fixed lgamma that still used the SVID wrapper
* Remove wrong hurd abi additions
* Remove SVID handling from most float implementations
Changes from v2:
* Update symbol versions to 2.43.
Changes from v1:
* Update symbol versions to 2.42.
Adhemerval Zanella (7):
math: Remove the SVID error handling from remainderf
math: Remove the SVID error handling from remainder
math: Remove the SVID error handling from lgammaf/lgammaf_r
math: Remove the SVID error handling from atan2f
math: Remove the SVID error handling from sinhf
math: Remove the SVID error handling from tgammaf
math: Remove the SVID error handling wrapper from sqrt
include/math.h | 2 +-
math/Versions | 8 +
math/lgamma-compat.h | 15 +-
math/w_atan2f_compat.c | 11 +-
math/w_lgammaf_compat2.c | 2 +-
math/w_lgammaf_main.c | 7 +-
math/w_lgammaf_r_compat.c | 5 +-
math/w_remainder_compat.c | 21 ++-
math/w_remainderf_compat.c | 9 +-
math/w_sinhf_compat.c | 11 +-
math/w_sqrtf_compat.c | 8 +-
math/w_tgammaf_compat.c | 9 +-
sysdeps/alpha/fpu/e_sqrtf.c | 2 +-
sysdeps/generic/math_private_calls.h | 2 +
sysdeps/i386/fpu/e_remainder.S | 18 ---
sysdeps/i386/fpu/e_remainder.c | 41 +++++
sysdeps/i386/fpu/e_remainderf.S | 18 ---
sysdeps/i386/fpu/e_remainderf.c | 41 +++++
sysdeps/i386/fpu/e_sqrtf.S | 13 --
sysdeps/i386/fpu/math-use-builtins-sqrt.h | 4 +
sysdeps/ieee754/dbl-64/e_remainder.c | 31 ++--
sysdeps/ieee754/dbl-64/w_remainder.c | 1 +
sysdeps/ieee754/flt-32/e_atan2f.c | 25 ++-
sysdeps/ieee754/flt-32/e_gammaf_r.c | 58 +++----
sysdeps/ieee754/flt-32/e_lgammaf_r.c | 20 ++-
sysdeps/ieee754/flt-32/e_remainderf.c | 25 +--
sysdeps/ieee754/flt-32/e_sinhf.c | 16 +-
sysdeps/ieee754/flt-32/e_sqrtf.c | 142 ++++++++++--------
sysdeps/ieee754/flt-32/math_config.h | 1 +
sysdeps/ieee754/flt-32/math_errf.c | 6 +
sysdeps/ieee754/flt-32/w_atan2f.c | 1 +
sysdeps/ieee754/flt-32/w_lgammaf.c | 17 +++
sysdeps/ieee754/flt-32/w_lgammaf_r.c | 1 +
sysdeps/ieee754/flt-32/w_remainderf.c | 1 +
sysdeps/ieee754/flt-32/w_sinhf.c | 1 +
sysdeps/ieee754/flt-32/w_sqrtf.c | 1 +
sysdeps/ieee754/flt-32/w_tgammaf.c | 1 +
sysdeps/ieee754/ldbl-opt/w_remainder_compat.c | 2 +-
sysdeps/m68k/fpu/math-use-builtins-sqrt.h | 4 +
sysdeps/m68k/m680x0/fpu/e_remainder.c | 16 +-
sysdeps/m68k/m680x0/fpu/e_remainderf.c | 16 +-
sysdeps/m68k/m680x0/fpu/e_sqrtf.c | 3 -
sysdeps/m68k/m680x0/fpu/w_atan2f_compat.c | 8 +
sysdeps/m68k/m680x0/fpu/w_sinhf_compat.c | 8 +
sysdeps/mach/hurd/i386/libm.abilist | 8 +
sysdeps/powerpc/fpu/e_sqrtf.c | 128 ----------------
sysdeps/unix/sysv/linux/aarch64/libm.abilist | 8 +
sysdeps/unix/sysv/linux/alpha/libm.abilist | 8 +
sysdeps/unix/sysv/linux/arm/be/libm.abilist | 8 +
sysdeps/unix/sysv/linux/arm/le/libm.abilist | 8 +
sysdeps/unix/sysv/linux/hppa/libm.abilist | 8 +
sysdeps/unix/sysv/linux/i386/libm.abilist | 8 +
.../sysv/linux/m68k/coldfire/libm.abilist | 8 +
.../unix/sysv/linux/m68k/m680x0/libm.abilist | 6 +
.../sysv/linux/microblaze/be/libm.abilist | 8 +
.../sysv/linux/microblaze/le/libm.abilist | 8 +
.../unix/sysv/linux/mips/mips32/libm.abilist | 8 +
.../unix/sysv/linux/mips/mips64/libm.abilist | 8 +
.../linux/powerpc/powerpc32/fpu/libm.abilist | 8 +
.../powerpc/powerpc32/nofpu/libm.abilist | 7 +
.../linux/powerpc/powerpc64/be/libm.abilist | 8 +
.../linux/powerpc/powerpc64/le/libm.abilist | 8 +
.../unix/sysv/linux/s390/s390-32/libm.abilist | 8 +
.../unix/sysv/linux/s390/s390-64/libm.abilist | 8 +
sysdeps/unix/sysv/linux/sh/be/libm.abilist | 8 +
sysdeps/unix/sysv/linux/sh/le/libm.abilist | 8 +
.../sysv/linux/sparc/sparc32/libm.abilist | 8 +
.../sysv/linux/sparc/sparc64/libm.abilist | 8 +
.../unix/sysv/linux/x86_64/64/libm.abilist | 8 +
.../unix/sysv/linux/x86_64/x32/libm.abilist | 8 +
70 files changed, 635 insertions(+), 342 deletions(-)
delete mode 100644 sysdeps/i386/fpu/e_remainder.S
create mode 100644 sysdeps/i386/fpu/e_remainder.c
delete mode 100644 sysdeps/i386/fpu/e_remainderf.S
create mode 100644 sysdeps/i386/fpu/e_remainderf.c
delete mode 100644 sysdeps/i386/fpu/e_sqrtf.S
create mode 100644 sysdeps/i386/fpu/math-use-builtins-sqrt.h
create mode 100644 sysdeps/ieee754/dbl-64/w_remainder.c
create mode 100644 sysdeps/ieee754/flt-32/w_atan2f.c
create mode 100644 sysdeps/ieee754/flt-32/w_lgammaf.c
create mode 100644 sysdeps/ieee754/flt-32/w_lgammaf_r.c
create mode 100644 sysdeps/ieee754/flt-32/w_remainderf.c
create mode 100644 sysdeps/ieee754/flt-32/w_sinhf.c
create mode 100644 sysdeps/ieee754/flt-32/w_sqrtf.c
create mode 100644 sysdeps/ieee754/flt-32/w_tgammaf.c
create mode 100644 sysdeps/m68k/fpu/math-use-builtins-sqrt.h
delete mode 100644 sysdeps/m68k/m680x0/fpu/e_sqrtf.c
create mode 100644 sysdeps/m68k/m680x0/fpu/w_atan2f_compat.c
create mode 100644 sysdeps/m68k/m680x0/fpu/w_sinhf_compat.c
delete mode 100644 sysdeps/powerpc/fpu/e_sqrtf.c
--
2.43.0
More information about the Libc-alpha
mailing list