diff --git a/include/fenv.h b/include/fenv.h index b03d816a7a..85938bb1c7 100644 --- a/include/fenv.h +++ b/include/fenv.h @@ -16,6 +16,7 @@ extern int __feupdateenv (const fenv_t *__envp); extern __typeof (fegetround) __fegetround __attribute_pure__; extern __typeof (feholdexcept) __feholdexcept; extern __typeof (fesetround) __fesetround; +extern __typeof (fetestexcept) __fetestexcept; libm_hidden_proto (feraiseexcept) libm_hidden_proto (__feraiseexcept) @@ -32,6 +33,7 @@ libm_hidden_proto (__feholdexcept) libm_hidden_proto (feupdateenv) libm_hidden_proto (__feupdateenv) libm_hidden_proto (fetestexcept) +libm_hidden_proto (__fetestexcept) libm_hidden_proto (feclearexcept) libm_hidden_proto (__feclearexcept) diff --git a/math/ftestexcept.c b/math/ftestexcept.c index ba98df7f58..e0c4f2feab 100644 --- a/math/ftestexcept.c +++ b/math/ftestexcept.c @@ -19,9 +19,11 @@ #include int -fetestexcept (int excepts) +__fetestexcept (int excepts) { return 0; } +libm_hidden_def (__fetestexcept) +weak_alias (__fetestexcept, fetestexcept) libm_hidden_def (fetestexcept) stub_warning (fetestexcept) diff --git a/sysdeps/aarch64/fpu/ftestexcept.c b/sysdeps/aarch64/fpu/ftestexcept.c index 1c709e8636..f057616f7f 100644 --- a/sysdeps/aarch64/fpu/ftestexcept.c +++ b/sysdeps/aarch64/fpu/ftestexcept.c @@ -20,8 +20,10 @@ #include int -fetestexcept (int excepts) +__fetestexcept (int excepts) { return libc_fetestexcept_aarch64 (excepts); } +libm_hidden_def (__fetestexcept) +weak_alias (__fetestexcept, fetestexcept) libm_hidden_def (fetestexcept) diff --git a/sysdeps/alpha/fpu/ftestexcept.c b/sysdeps/alpha/fpu/ftestexcept.c index 183f68b7d0..1395deee8d 100644 --- a/sysdeps/alpha/fpu/ftestexcept.c +++ b/sysdeps/alpha/fpu/ftestexcept.c @@ -19,7 +19,7 @@ #include int -fetestexcept (int excepts) +__fetestexcept (int excepts) { unsigned long tmp; @@ -28,4 +28,6 @@ fetestexcept (int excepts) return tmp & excepts & SWCR_STATUS_MASK; } +libm_hidden_def (__fetestexcept) +weak_alias (__fetestexcept, fetestexcept) libm_hidden_def (fetestexcept) diff --git a/sysdeps/arc/fpu/ftestexcept.c b/sysdeps/arc/fpu/ftestexcept.c index 74327e42f0..c3cfe631a4 100644 --- a/sysdeps/arc/fpu/ftestexcept.c +++ b/sysdeps/arc/fpu/ftestexcept.c @@ -22,7 +22,7 @@ #include int -fetestexcept (int excepts) +__fetestexcept (int excepts) { unsigned int fpsr; @@ -30,4 +30,6 @@ fetestexcept (int excepts) return fpsr & excepts; } +libm_hidden_def (__fetestexcept) +weak_alias (__fetestexcept, fetestexcept) libm_hidden_def (fetestexcept) diff --git a/sysdeps/arm/ftestexcept.c b/sysdeps/arm/ftestexcept.c index 603cbfcaa9..a5d6db2d93 100644 --- a/sysdeps/arm/ftestexcept.c +++ b/sysdeps/arm/ftestexcept.c @@ -21,7 +21,7 @@ int -fetestexcept (int excepts) +__fetestexcept (int excepts) { /* Return no exception flags if a VFP unit isn't present. */ if (!ARM_HAVE_VFP) @@ -29,4 +29,6 @@ fetestexcept (int excepts) return libc_fetestexcept_vfp (excepts); } +libm_hidden_def (__fetestexcept) +weak_alias (__fetestexcept, fetestexcept) libm_hidden_def (fetestexcept) diff --git a/sysdeps/csky/fpu/ftestexcept.c b/sysdeps/csky/fpu/ftestexcept.c index 135ddcaed0..ea16d691e5 100644 --- a/sysdeps/csky/fpu/ftestexcept.c +++ b/sysdeps/csky/fpu/ftestexcept.c @@ -23,8 +23,10 @@ #include int -fetestexcept (int excepts) +__fetestexcept (int excepts) { return libc_fetestexcept_vfp (excepts); } +libm_hidden_def (__fetestexcept) +weak_alias (__fetestexcept, fetestexcept) libm_hidden_def (fetestexcept) diff --git a/sysdeps/generic/fenv_private.h b/sysdeps/generic/fenv_private.h index cf041ebf78..11aeb3be28 100644 --- a/sysdeps/generic/fenv_private.h +++ b/sysdeps/generic/fenv_private.h @@ -82,13 +82,13 @@ default_libc_feholdexcept_setround (fenv_t *e, int r) #endif #ifndef libc_fetestexcept -# define libc_fetestexcept fetestexcept +# define libc_fetestexcept __fetestexcept #endif #ifndef libc_fetestexceptf -# define libc_fetestexceptf fetestexcept +# define libc_fetestexceptf __fetestexcept #endif #ifndef libc_fetestexceptl -# define libc_fetestexceptl fetestexcept +# define libc_fetestexceptl __fetestexcept #endif static __always_inline void @@ -130,7 +130,7 @@ default_libc_feupdateenv (fenv_t *e) static __always_inline int default_libc_feupdateenv_test (fenv_t *e, int ex) { - int ret = fetestexcept (ex); + int ret = __fetestexcept (ex); __feupdateenv (e); return ret; } diff --git a/sysdeps/hppa/fpu/ftestexcept.c b/sysdeps/hppa/fpu/ftestexcept.c index 0286230cc7..032568ccef 100644 --- a/sysdeps/hppa/fpu/ftestexcept.c +++ b/sysdeps/hppa/fpu/ftestexcept.c @@ -19,7 +19,7 @@ #include int -fetestexcept (int excepts) +__fetestexcept (int excepts) { union { unsigned long long l; unsigned int sw[2]; } s; @@ -30,4 +30,6 @@ fetestexcept (int excepts) return (s.sw[0] >> 27) & excepts & FE_ALL_EXCEPT; } +libm_hidden_def (__fetestexcept) +weak_alias (__fetestexcept, fetestexcept) libm_hidden_def (fetestexcept) diff --git a/sysdeps/i386/fpu/ftestexcept.c b/sysdeps/i386/fpu/ftestexcept.c index 2d41ba22ac..09a673e1ab 100644 --- a/sysdeps/i386/fpu/ftestexcept.c +++ b/sysdeps/i386/fpu/ftestexcept.c @@ -21,7 +21,7 @@ #include int -fetestexcept (int excepts) +__fetestexcept (int excepts) { short temp; int xtemp = 0; @@ -35,4 +35,6 @@ fetestexcept (int excepts) return (temp | xtemp) & excepts & FE_ALL_EXCEPT; } +libm_hidden_def (__fetestexcept) +weak_alias (__fetestexcept, fetestexcept) libm_hidden_def (fetestexcept) diff --git a/sysdeps/loongarch/fpu/ftestexcept.c b/sysdeps/loongarch/fpu/ftestexcept.c index 14e1857879..3d5b6de760 100644 --- a/sysdeps/loongarch/fpu/ftestexcept.c +++ b/sysdeps/loongarch/fpu/ftestexcept.c @@ -20,7 +20,7 @@ #include int -fetestexcept (int excepts) +__fetestexcept (int excepts) { int cw; @@ -29,4 +29,6 @@ fetestexcept (int excepts) return cw & excepts & FE_ALL_EXCEPT; } +libm_hidden_def (__fetestexcept) +weak_alias (__fetestexcept, fetestexcept) libm_hidden_def (fetestexcept) diff --git a/sysdeps/m68k/fpu/ftestexcept.c b/sysdeps/m68k/fpu/ftestexcept.c index cbe0205833..cfa659e182 100644 --- a/sysdeps/m68k/fpu/ftestexcept.c +++ b/sysdeps/m68k/fpu/ftestexcept.c @@ -19,7 +19,7 @@ #include int -fetestexcept (int excepts) +__fetestexcept (int excepts) { fexcept_t fpsr; @@ -28,4 +28,6 @@ fetestexcept (int excepts) return fpsr & excepts & FE_ALL_EXCEPT; } +libm_hidden_def (__fetestexcept) +weak_alias (__fetestexcept, fetestexcept) libm_hidden_def (fetestexcept) diff --git a/sysdeps/mips/fpu/ftestexcept.c b/sysdeps/mips/fpu/ftestexcept.c index 58e2c555db..3cb45a590b 100644 --- a/sysdeps/mips/fpu/ftestexcept.c +++ b/sysdeps/mips/fpu/ftestexcept.c @@ -20,7 +20,7 @@ #include int -fetestexcept (int excepts) +__fetestexcept (int excepts) { int cw; @@ -29,4 +29,6 @@ fetestexcept (int excepts) return cw & excepts & FE_ALL_EXCEPT; } +libm_hidden_def (__fetestexcept) +weak_alias (__fetestexcept, fetestexcept) libm_hidden_def (fetestexcept) diff --git a/sysdeps/or1k/fpu/ftestexcept.c b/sysdeps/or1k/fpu/ftestexcept.c index e199bcdf1a..004a414eda 100644 --- a/sysdeps/or1k/fpu/ftestexcept.c +++ b/sysdeps/or1k/fpu/ftestexcept.c @@ -20,8 +20,10 @@ #include int -fetestexcept (int excepts) +__fetestexcept (int excepts) { return libc_fetestexcept_or1k (excepts); } +libm_hidden_def (__fetestexcept) +weak_alias (__fetestexcept, fetestexcept) libm_hidden_def (fetestexcept) diff --git a/sysdeps/powerpc/fpu/ftestexcept.c b/sysdeps/powerpc/fpu/ftestexcept.c index c295156d55..0c30823fa8 100644 --- a/sysdeps/powerpc/fpu/ftestexcept.c +++ b/sysdeps/powerpc/fpu/ftestexcept.c @@ -19,7 +19,7 @@ #include int -fetestexcept (int excepts) +__fetestexcept (int excepts) { fenv_union_t u; @@ -30,4 +30,6 @@ fetestexcept (int excepts) just: */ return u.l & excepts; } +libm_hidden_def (__fetestexcept) +weak_alias (__fetestexcept, fetestexcept) libm_hidden_def (fetestexcept) diff --git a/sysdeps/powerpc/nofpu/ftestexcept.c b/sysdeps/powerpc/nofpu/ftestexcept.c index b042c0f4d5..11bb1a5dd5 100644 --- a/sysdeps/powerpc/nofpu/ftestexcept.c +++ b/sysdeps/powerpc/nofpu/ftestexcept.c @@ -20,8 +20,10 @@ #include "soft-supp.h" int -fetestexcept (int x) +__fetestexcept (int x) { return __sim_exceptions_thread & x; } +libm_hidden_def (__fetestexcept) +weak_alias (__fetestexcept, fetestexcept) libm_hidden_def (fetestexcept) diff --git a/sysdeps/riscv/rvf/ftestexcept.c b/sysdeps/riscv/rvf/ftestexcept.c index ac4ae00555..52099212b0 100644 --- a/sysdeps/riscv/rvf/ftestexcept.c +++ b/sysdeps/riscv/rvf/ftestexcept.c @@ -20,8 +20,10 @@ #include int -fetestexcept (int excepts) +__fetestexcept (int excepts) { return libc_fetestexcept_riscv (excepts); } +libm_hidden_def (__fetestexcept) +weak_alias (__fetestexcept, fetestexcept) libm_hidden_def (fetestexcept) diff --git a/sysdeps/s390/fpu/ftestexcept.c b/sysdeps/s390/fpu/ftestexcept.c index 056aa097b1..e906539929 100644 --- a/sysdeps/s390/fpu/ftestexcept.c +++ b/sysdeps/s390/fpu/ftestexcept.c @@ -19,8 +19,10 @@ #include int -fetestexcept (int excepts) +__fetestexcept (int excepts) { return libc_fetestexcept_s390 (excepts); } +libm_hidden_def (__fetestexcept) +weak_alias (__fetestexcept, fetestexcept) libm_hidden_def (fetestexcept) diff --git a/sysdeps/sh/sh4/fpu/ftestexcept.c b/sysdeps/sh/sh4/fpu/ftestexcept.c index 66441cfb3e..39659a4566 100644 --- a/sysdeps/sh/sh4/fpu/ftestexcept.c +++ b/sysdeps/sh/sh4/fpu/ftestexcept.c @@ -20,7 +20,7 @@ #include int -fetestexcept (int excepts) +__fetestexcept (int excepts) { fpu_control_t temp; @@ -29,4 +29,6 @@ fetestexcept (int excepts) return temp & excepts & FE_ALL_EXCEPT; } +libm_hidden_def (__fetestexcept) +weak_alias (__fetestexcept, fetestexcept) libm_hidden_def (fetestexcept) diff --git a/sysdeps/sparc/fpu/ftestexcept.c b/sysdeps/sparc/fpu/ftestexcept.c index 77a3b2e39d..44f6767e8c 100644 --- a/sysdeps/sparc/fpu/ftestexcept.c +++ b/sysdeps/sparc/fpu/ftestexcept.c @@ -20,7 +20,7 @@ #include int -fetestexcept (int excepts) +__fetestexcept (int excepts) { fenv_t tmp; @@ -28,4 +28,6 @@ fetestexcept (int excepts) return tmp & excepts & FE_ALL_EXCEPT; } +libm_hidden_def (__fetestexcept) +weak_alias (__fetestexcept, fetestexcept) libm_hidden_def (fetestexcept) diff --git a/sysdeps/x86_64/fpu/ftestexcept.c b/sysdeps/x86_64/fpu/ftestexcept.c index b6c617d985..87a851d4b4 100644 --- a/sysdeps/x86_64/fpu/ftestexcept.c +++ b/sysdeps/x86_64/fpu/ftestexcept.c @@ -19,7 +19,7 @@ #include int -fetestexcept (int excepts) +__fetestexcept (int excepts) { int temp; unsigned int mxscr; @@ -30,4 +30,6 @@ fetestexcept (int excepts) return (temp | mxscr) & excepts & FE_ALL_EXCEPT; } +libm_hidden_def (__fetestexcept) +weak_alias (__fetestexcept, fetestexcept) libm_hidden_def (fetestexcept)