[PATCH v4 00/21] Remove the SVID wrapper from most of float functions.
Adhemerval Zanella
adhemerval.zanella@linaro.org
Wed Oct 8 13:55:00 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 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 (21):
i386: Remove the SVID error handling from fmod
i386: Remove the SVID error handling from fmodf
m68k: Remove the SVID error handling from fmodf
m68k: Avoid include e_fmod.c on fmod/remainder implementation
m68k: Remove SVID error handling on fmod
math: Remove the SVID error handling from remainderf
math: Remove the SVID error handling from remainder
math: Remove the SVID error handling from log10f
math: Remove the SVID error handling from lgammaf/lgammaf_r
math: Remove the SVID error handling from acosf
math: Remove the SVID error handling from asinf
math: Remove the SVID error handling from acoshf
math: Remove the SVID error handling from atan2f
math: Remove the SVID error handling from atanhf
math: Remove the SVID error handling from coshf
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
math: Remove the SVID error handling wrapper from y0/j0
math: Remove the SVID error handling wrapper from y1/j1
math: Remove the SVID error handling wrapper from yn/jn
include/math.h | 2 +-
math/Versions | 5 ++
math/lgamma-compat.h | 15 +++-
math/w_acosf_compat.c | 10 ++-
math/w_acoshf_compat.c | 6 +-
math/w_asinf.c | 8 ++
math/w_asinf_compat.c | 10 ++-
math/w_atan2f_compat.c | 11 ++-
math/w_atanhf_compat.c | 11 ++-
math/w_coshf_compat.c | 12 ++-
math/w_j0f_compat.c | 11 +--
math/w_j1f_compat.c | 10 +--
math/w_jnf_compat.c | 10 +--
math/w_lgammaf_compat2.c | 2 +-
math/w_lgammaf_main.c | 7 +-
math/w_lgammaf_r_compat.c | 5 +-
math/w_log10f_compat.c | 10 ++-
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/Versions | 4 +
sysdeps/i386/fpu/e_fmod.S | 18 ----
sysdeps/i386/fpu/e_fmod.c | 41 +++++++++
sysdeps/i386/fpu/e_fmodf.S | 18 ----
sysdeps/i386/fpu/e_fmodf.c | 41 +++++++++
sysdeps/i386/fpu/e_fmodf_ver.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/i386/fpu/w_fmod_compat.c | 15 ----
sysdeps/i386/fpu/w_fmodf_compat.c | 15 ----
sysdeps/ieee754/dbl-64/e_remainder.c | 27 ++++--
sysdeps/ieee754/dbl-64/w_remainder.c | 1 +
sysdeps/ieee754/flt-32/e_acosf.c | 11 ++-
sysdeps/ieee754/flt-32/e_acoshf.c | 11 ++-
sysdeps/ieee754/flt-32/e_asinf.c | 11 ++-
sysdeps/ieee754/flt-32/e_atan2f.c | 19 +++-
sysdeps/ieee754/flt-32/e_atanhf.c | 11 ++-
sysdeps/ieee754/flt-32/e_coshf.c | 11 ++-
sysdeps/ieee754/flt-32/e_gammaf_r.c | 43 +++++----
sysdeps/ieee754/flt-32/e_j0f.c | 34 +++++--
sysdeps/ieee754/flt-32/e_j1f.c | 34 +++++--
sysdeps/ieee754/flt-32/e_jnf.c | 34 +++++--
sysdeps/ieee754/flt-32/e_lgammaf_r.c | 25 +++++-
sysdeps/ieee754/flt-32/e_log10f.c | 11 ++-
sysdeps/ieee754/flt-32/e_remainderf.c | 19 +++-
sysdeps/ieee754/flt-32/e_sinhf.c | 13 ++-
sysdeps/ieee754/flt-32/e_sqrtf.c | 86 +++++-------------
sysdeps/ieee754/flt-32/e_sqrtf_impl.h | 90 +++++++++++++++++++
sysdeps/ieee754/flt-32/math_config.h | 1 +
sysdeps/ieee754/flt-32/math_errf.c | 6 ++
sysdeps/ieee754/flt-32/w_acosf.c | 1 +
sysdeps/ieee754/flt-32/w_acoshf.c | 1 +
sysdeps/ieee754/flt-32/w_asinf.c | 1 +
sysdeps/ieee754/flt-32/w_atan2f.c | 1 +
sysdeps/ieee754/flt-32/w_atanhf.c | 1 +
sysdeps/ieee754/flt-32/w_coshf.c | 1 +
sysdeps/ieee754/flt-32/w_j0f.c | 1 +
sysdeps/ieee754/flt-32/w_j1f.c | 1 +
sysdeps/ieee754/flt-32/w_jnf.c | 1 +
sysdeps/ieee754/flt-32/w_lgammaf.c | 17 ++++
sysdeps/ieee754/flt-32/w_lgammaf_r.c | 1 +
sysdeps/ieee754/flt-32/w_log10f.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/Versions | 6 ++
sysdeps/m68k/m680x0/fpu/e_fmod.c | 37 ++++----
sysdeps/m68k/m680x0/fpu/e_fmodf.c | 48 ++++++++--
sysdeps/m68k/m680x0/fpu/e_fmodl.c | 34 +++++--
sysdeps/m68k/m680x0/fpu/e_remainder.c | 45 +++++++++-
sysdeps/m68k/m680x0/fpu/e_remainderf.c | 46 +++++++++-
sysdeps/m68k/m680x0/fpu/e_remainderl.c | 32 ++++++-
sysdeps/m68k/m680x0/fpu/e_sqrtf.c | 3 -
sysdeps/m68k/m680x0/fpu/w_acosf_compat.c | 8 ++
sysdeps/m68k/m680x0/fpu/w_asinf_compat.c | 8 ++
sysdeps/m68k/m680x0/fpu/w_atan2f_compat.c | 8 ++
sysdeps/m68k/m680x0/fpu/w_atanhf_compat.c | 8 ++
sysdeps/m68k/m680x0/fpu/w_coshf_compat.c | 8 ++
sysdeps/m68k/m680x0/fpu/w_fmodf_compat.c | 15 ----
sysdeps/m68k/m680x0/fpu/w_log10f_compat.c | 8 ++
sysdeps/m68k/m680x0/fpu/w_sinhf_compat.c | 8 ++
sysdeps/mach/hurd/i386/libm.abilist | 22 +++++
.../powerpc/fpu/{e_sqrtf.c => e_sqrtf_impl.h} | 22 ++---
sysdeps/unix/sysv/linux/aarch64/libm.abilist | 20 +++++
sysdeps/unix/sysv/linux/alpha/libm.abilist | 20 +++++
sysdeps/unix/sysv/linux/arm/be/libm.abilist | 20 +++++
sysdeps/unix/sysv/linux/arm/le/libm.abilist | 20 +++++
sysdeps/unix/sysv/linux/hppa/libm.abilist | 20 +++++
sysdeps/unix/sysv/linux/i386/libm.abilist | 22 +++++
.../sysv/linux/m68k/coldfire/libm.abilist | 20 +++++
.../unix/sysv/linux/m68k/m680x0/libm.abilist | 15 ++++
.../sysv/linux/microblaze/be/libm.abilist | 20 +++++
.../sysv/linux/microblaze/le/libm.abilist | 20 +++++
.../unix/sysv/linux/mips/mips32/libm.abilist | 20 +++++
.../unix/sysv/linux/mips/mips64/libm.abilist | 20 +++++
.../linux/powerpc/powerpc32/fpu/libm.abilist | 20 +++++
.../powerpc/powerpc32/nofpu/libm.abilist | 20 +++++
.../linux/powerpc/powerpc64/be/libm.abilist | 20 +++++
.../linux/powerpc/powerpc64/le/libm.abilist | 20 +++++
.../unix/sysv/linux/s390/s390-32/libm.abilist | 20 +++++
.../unix/sysv/linux/s390/s390-64/libm.abilist | 20 +++++
sysdeps/unix/sysv/linux/sh/be/libm.abilist | 20 +++++
sysdeps/unix/sysv/linux/sh/le/libm.abilist | 20 +++++
.../sysv/linux/sparc/sparc32/libm.abilist | 20 +++++
.../sysv/linux/sparc/sparc64/libm.abilist | 20 +++++
.../unix/sysv/linux/x86_64/64/libm.abilist | 20 +++++
.../unix/sysv/linux/x86_64/x32/libm.abilist | 20 +++++
118 files changed, 1494 insertions(+), 381 deletions(-)
create mode 100644 math/w_asinf.c
delete mode 100644 sysdeps/i386/fpu/e_fmod.S
create mode 100644 sysdeps/i386/fpu/e_fmod.c
delete mode 100644 sysdeps/i386/fpu/e_fmodf.S
create mode 100644 sysdeps/i386/fpu/e_fmodf.c
create mode 100644 sysdeps/i386/fpu/e_fmodf_ver.h
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
delete mode 100644 sysdeps/i386/fpu/w_fmod_compat.c
delete mode 100644 sysdeps/i386/fpu/w_fmodf_compat.c
create mode 100644 sysdeps/ieee754/dbl-64/w_remainder.c
create mode 100644 sysdeps/ieee754/flt-32/e_sqrtf_impl.h
create mode 100644 sysdeps/ieee754/flt-32/w_acosf.c
create mode 100644 sysdeps/ieee754/flt-32/w_acoshf.c
create mode 100644 sysdeps/ieee754/flt-32/w_asinf.c
create mode 100644 sysdeps/ieee754/flt-32/w_atan2f.c
create mode 100644 sysdeps/ieee754/flt-32/w_atanhf.c
create mode 100644 sysdeps/ieee754/flt-32/w_coshf.c
create mode 100644 sysdeps/ieee754/flt-32/w_j0f.c
create mode 100644 sysdeps/ieee754/flt-32/w_j1f.c
create mode 100644 sysdeps/ieee754/flt-32/w_jnf.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_log10f.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
create mode 100644 sysdeps/m68k/m680x0/fpu/Versions
delete mode 100644 sysdeps/m68k/m680x0/fpu/e_sqrtf.c
create mode 100644 sysdeps/m68k/m680x0/fpu/w_acosf_compat.c
create mode 100644 sysdeps/m68k/m680x0/fpu/w_asinf_compat.c
create mode 100644 sysdeps/m68k/m680x0/fpu/w_atan2f_compat.c
create mode 100644 sysdeps/m68k/m680x0/fpu/w_atanhf_compat.c
create mode 100644 sysdeps/m68k/m680x0/fpu/w_coshf_compat.c
delete mode 100644 sysdeps/m68k/m680x0/fpu/w_fmodf_compat.c
create mode 100644 sysdeps/m68k/m680x0/fpu/w_log10f_compat.c
create mode 100644 sysdeps/m68k/m680x0/fpu/w_sinhf_compat.c
rename sysdeps/powerpc/fpu/{e_sqrtf.c => e_sqrtf_impl.h} (90%)
--
2.43.0
More information about the Libc-alpha
mailing list