]> git.ipfire.org Git - thirdparty/glibc.git/commitdiff
math: Add feclearexcept internal alias
authorAdhemerval Zanella <adhemerval.zanella@linaro.org>
Mon, 25 Aug 2025 16:38:26 +0000 (13:38 -0300)
committerAdhemerval Zanella <adhemerval.zanella@linaro.org>
Thu, 11 Sep 2025 17:46:07 +0000 (14:46 -0300)
To avoid linknamespace issues on old standards.  It is required
if the fallback fma implementation is used if/when it is also
used internally for other implementation.
Reviewed-by: DJ Delorie <dj@redhat.com>
20 files changed:
include/fenv.h
math/fclrexcpt.c
sysdeps/aarch64/fpu/fclrexcpt.c
sysdeps/alpha/fpu/fclrexcpt.c
sysdeps/arc/fpu/fclrexcpt.c
sysdeps/arm/fclrexcpt.c
sysdeps/csky/fpu/fclrexcpt.c
sysdeps/hppa/fpu/fclrexcpt.c
sysdeps/i386/fpu/fclrexcpt.c
sysdeps/loongarch/fpu/fclrexcpt.c
sysdeps/m68k/fpu/fclrexcpt.c
sysdeps/mips/fpu/fclrexcpt.c
sysdeps/or1k/fpu/fclrexcpt.c
sysdeps/powerpc/fpu/fclrexcpt.c
sysdeps/powerpc/nofpu/fclrexcpt.c
sysdeps/riscv/rvf/fclrexcpt.c
sysdeps/s390/fpu/fclrexcpt.c
sysdeps/sh/sh4/fpu/fclrexcpt.c
sysdeps/sparc/fpu/fclrexcpt.c
sysdeps/x86_64/fpu/fclrexcpt.c

index 0b32f80964c8634715d838b46787bbacab795710..b03d816a7a9853c711935cadfaf94d086e2c18be 100644 (file)
@@ -33,6 +33,7 @@ libm_hidden_proto (feupdateenv)
 libm_hidden_proto (__feupdateenv)
 libm_hidden_proto (fetestexcept)
 libm_hidden_proto (feclearexcept)
+libm_hidden_proto (__feclearexcept)
 
 /* Rounding mode context.  This allows functions to set/restore rounding mode
    only when the desired rounding mode is different from the current rounding
index cd24c2536baa32200271556b1068aeaa3a025ec9..7ab92f4801aae0db3facfb01a67a35af02014752 100644 (file)
@@ -25,6 +25,7 @@ __feclearexcept (int excepts)
   /* This always fails unless nothing needs to be done.  */
   return (excepts != 0);
 }
+libm_hidden_def (__feclearexcept)
 #if SHLIB_COMPAT (libm, GLIBC_2_1, GLIBC_2_2)
 strong_alias (__feclearexcept, __old_feclearexcept)
 compat_symbol (libm, __old_feclearexcept, feclearexcept, GLIBC_2_1);
index 841794a764f214c6b550a1deffcab54b6159371d..21eb731e2921b0ddf567a1aad6a37450ae10af73 100644 (file)
@@ -20,7 +20,7 @@
 #include <fpu_control.h>
 
 int
-feclearexcept (int excepts)
+__feclearexcept (int excepts)
 {
   fpu_fpsr_t fpsr;
   fpu_fpsr_t fpsr_new;
@@ -35,4 +35,6 @@ feclearexcept (int excepts)
 
   return 0;
 }
+weak_alias (__feclearexcept, feclearexcept)
+libm_hidden_def (__feclearexcept)
 libm_hidden_def (feclearexcept)
index e3a8d4b48d0fe359b3514ddad44855317e54ad81..cef1ec95f662bf7c7e7f0b361165cfafe0275948 100644 (file)
@@ -35,6 +35,7 @@ __feclearexcept (int excepts)
   /* Success.  */
   return 0;
 }
+libm_hidden_def (__feclearexcept)
 
 #include <shlib-compat.h>
 #if SHLIB_COMPAT (libm, GLIBC_2_1, GLIBC_2_2)
index 96cd84e329a1ec2f572d5eb9c4cf42856bf43841..5fc49e607d5d77da08b6c5f804fb8e9577f9de6d 100644 (file)
@@ -20,7 +20,7 @@
 #include <fpu_control.h>
 
 int
-feclearexcept (int excepts)
+__feclearexcept (int excepts)
 {
   unsigned int fpsr;
 
@@ -33,4 +33,6 @@ feclearexcept (int excepts)
 
   return 0;
 }
+libm_hidden_def (__feclearexcept)
+weak_alias (__feclearexcept, feclearexcept)
 libm_hidden_def (feclearexcept)
index 91c8cb67d3b58d9ce4f6691fdd2163ab0fa0319b..3c565ab3519d514c7cebf8875dd16b3bccf50ec5 100644 (file)
@@ -22,7 +22,7 @@
 
 
 int
-feclearexcept (int excepts)
+__feclearexcept (int excepts)
 {
   fpu_control_t fpscr, new_fpscr;
 
@@ -40,4 +40,6 @@ feclearexcept (int excepts)
 
   return 0;
 }
+libm_hidden_def (__feclearexcept)
+weak_alias (__feclearexcept, feclearexcept)
 libm_hidden_def (feclearexcept)
index 47969f8dcaa7aefdc56db704a8e712b8499bd153..a4933f36a2b8a390a75dc6c6f35a7686c7941a63 100644 (file)
@@ -21,7 +21,7 @@
 #include <fpu_control.h>
 
 int
-feclearexcept (int excepts)
+__feclearexcept (int excepts)
 {
   int fpsr;
 
@@ -39,4 +39,6 @@ feclearexcept (int excepts)
 
   return 0;
 }
+libm_hidden_def (__feclearexcept)
+weak_alias (__feclearexcept, feclearexcept)
 libm_hidden_def (feclearexcept)
index 454aeee415f7b31bb1c9ca68a4b68e364430ef76..f71411826b599887852e3fbd1bdd4d284fe9e13f 100644 (file)
@@ -19,7 +19,7 @@
 #include <fenv.h>
 
 int
-feclearexcept (int excepts)
+__feclearexcept (int excepts)
 {
   union { unsigned long long l; unsigned int sw[2]; } s;
 
@@ -32,4 +32,6 @@ feclearexcept (int excepts)
   /* Success.  */
   return 0;
 }
+libm_hidden_def (__feclearexcept)
+weak_alias (__feclearexcept, feclearexcept)
 libm_hidden_def (feclearexcept)
index f7a2ed2be1c8cd629c81563251ed5f3baec4f339..713bc036690741694899620abc66690321aa650b 100644 (file)
@@ -56,6 +56,7 @@ __feclearexcept (int excepts)
   /* Success.  */
   return 0;
 }
+libm_hidden_def (__feclearexcept)
 
 #include <shlib-compat.h>
 #if SHLIB_COMPAT (libm, GLIBC_2_1, GLIBC_2_2)
index 8bd2cf2a93e9cc67487f3abf404dd6f93968bfd3..9ee376f8537f25422cd32e527b93a5f3b6ebb0ef 100644 (file)
@@ -21,7 +21,7 @@
 #include <fpu_control.h>
 
 int
-feclearexcept (int excepts)
+__feclearexcept (int excepts)
 {
   int cw;
 
@@ -43,4 +43,6 @@ feclearexcept (int excepts)
   /* Success.  */
   return 0;
 }
+libm_hidden_def (__feclearexcept)
+weak_alias (__feclearexcept, feclearexcept)
 libm_hidden_def (feclearexcept)
index 0df111f44e463fd6f2d5a92256e99d96fe81423e..0681d0934ac35d1e638a2980e0dca6ac4b9e7f06 100644 (file)
@@ -38,6 +38,7 @@ __feclearexcept (int excepts)
   /* Success.  */
   return 0;
 }
+libm_hidden_def (__feclearexcept)
 
 #include <shlib-compat.h>
 #if SHLIB_COMPAT (libm, GLIBC_2_1, GLIBC_2_2)
index a9ab82af3b9740c3bc5a2cbcb131708067b820fa..abfe059996e8680247bef78760250a26f2e22c6c 100644 (file)
@@ -21,7 +21,7 @@
 #include <fpu_control.h>
 
 int
-feclearexcept (int excepts)
+__feclearexcept (int excepts)
 {
   int cw;
 
@@ -43,4 +43,6 @@ feclearexcept (int excepts)
   /* Success.  */
   return 0;
 }
+libm_hidden_def (__feclearexcept)
+weak_alias (__feclearexcept, feclearexcept)
 libm_hidden_def (feclearexcept)
index 57aa9e5a600d5a3bb5da8300b097a8498f5eb936..f1f4f064b72d7ffc9c57b5c2980b8de008e38afc 100644 (file)
@@ -21,7 +21,7 @@
 #include <fpu_control.h>
 
 int
-feclearexcept (int excepts)
+__feclearexcept (int excepts)
 {
   fpu_control_t cw;
   fpu_control_t cw_new;
@@ -41,4 +41,6 @@ feclearexcept (int excepts)
   /* Success.  */
   return 0;
 }
+libm_hidden_def (__feclearexcept)
+weak_alias (__feclearexcept, feclearexcept)
 libm_hidden_def (feclearexcept)
index d9bab95bb2210a846b1fb509cc45b7d527c73323..c02f5fad5dc12df2a31e100382b78b5872914d9d 100644 (file)
@@ -38,6 +38,7 @@ __feclearexcept (int excepts)
   /* Success.  */
   return 0;
 }
+libm_hidden_def (__feclearexcept)
 
 #include <shlib-compat.h>
 #if SHLIB_COMPAT (libm, GLIBC_2_1, GLIBC_2_2)
index baea127e1101659fcc5a2802721f204c65740018..66be5ea00efaed0123de859a02f9872d284bdad1 100644 (file)
@@ -26,6 +26,7 @@ __feclearexcept (int x)
   SIM_SET_GLOBAL (__sim_exceptions_global, __sim_exceptions_thread);
   return 0;
 }
+libm_hidden_def (__feclearexcept)
 
 #include <shlib-compat.h>
 #if SHLIB_COMPAT (libm, GLIBC_2_1, GLIBC_2_2)
index 661aa799a960bac78992bbcc516fbee2d927989d..29509a9f20b0ab3fdf28fba1bc9c70eccf2d7ca8 100644 (file)
 #include <fpu_control.h>
 
 int
-feclearexcept (int excepts)
+__feclearexcept (int excepts)
 {
   asm volatile ("csrc fflags, %0" : : "r" (excepts));
   return 0;
 }
+libm_hidden_def (__feclearexcept)
+weak_alias (__feclearexcept, feclearexcept)
 libm_hidden_def (feclearexcept)
index b8e3e8f814ec2e09ba40d0107a912a9125cecacb..30623f63708a6326120381ad3ada5c982ae23c75 100644 (file)
@@ -20,7 +20,7 @@
 #include <fpu_control.h>
 
 int
-feclearexcept (int excepts)
+__feclearexcept (int excepts)
 {
   fexcept_t temp;
 
@@ -42,4 +42,6 @@ feclearexcept (int excepts)
   /* Success.  */
   return 0;
 }
+libm_hidden_def (__feclearexcept)
+weak_alias (__feclearexcept, feclearexcept)
 libm_hidden_def (feclearexcept)
index 49361d9110b6757940fa0c316dcf512e7c01f978..410a140463b4ced306a3da601774d453bbbb03e0 100644 (file)
@@ -20,7 +20,7 @@
 #include <fpu_control.h>
 
 int
-feclearexcept (int excepts)
+__feclearexcept (int excepts)
 {
   fpu_control_t cw;
 
@@ -38,4 +38,6 @@ feclearexcept (int excepts)
 
   return 0;
 }
+libm_hidden_def (__feclearexcept)
+weak_alias (__feclearexcept, feclearexcept)
 libm_hidden_def (feclearexcept)
index c1f2cdfdf7a47d7bc9b4efeeb28baca0d042a5c9..368c9eaa9947c869d3c8f609eb3f1060035e287b 100644 (file)
@@ -34,6 +34,7 @@ __feclearexcept (int excepts)
   /* Success.  */
   return 0;
 }
+libm_hidden_def (__feclearexcept)
 
 #if SHLIB_COMPAT (libm, GLIBC_2_1, GLIBC_2_2)
 strong_alias (__feclearexcept, __old_feclearexcept)
index ba784666af49c88d223b46ac282313d6ea186206..3bbb5a2b4847b6da0aa8f8cbae38023c7765ccef 100644 (file)
@@ -19,7 +19,7 @@
 #include <fenv.h>
 
 int
-feclearexcept (int excepts)
+__feclearexcept (int excepts)
 {
   fenv_t temp;
   unsigned int mxcsr;
@@ -49,4 +49,6 @@ feclearexcept (int excepts)
   /* Success.  */
   return 0;
 }
+libm_hidden_def (__feclearexcept)
+weak_alias (__feclearexcept, feclearexcept)
 libm_hidden_def (feclearexcept)