]> git.ipfire.org Git - thirdparty/glibc.git/commitdiff
math: Add fetestexcept internal alias
authorAdhemerval Zanella <adhemerval.zanella@linaro.org>
Mon, 25 Aug 2025 16:38:30 +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>
21 files changed:
include/fenv.h
math/ftestexcept.c
sysdeps/aarch64/fpu/ftestexcept.c
sysdeps/alpha/fpu/ftestexcept.c
sysdeps/arc/fpu/ftestexcept.c
sysdeps/arm/ftestexcept.c
sysdeps/csky/fpu/ftestexcept.c
sysdeps/generic/fenv_private.h
sysdeps/hppa/fpu/ftestexcept.c
sysdeps/i386/fpu/ftestexcept.c
sysdeps/loongarch/fpu/ftestexcept.c
sysdeps/m68k/fpu/ftestexcept.c
sysdeps/mips/fpu/ftestexcept.c
sysdeps/or1k/fpu/ftestexcept.c
sysdeps/powerpc/fpu/ftestexcept.c
sysdeps/powerpc/nofpu/ftestexcept.c
sysdeps/riscv/rvf/ftestexcept.c
sysdeps/s390/fpu/ftestexcept.c
sysdeps/sh/sh4/fpu/ftestexcept.c
sysdeps/sparc/fpu/ftestexcept.c
sysdeps/x86_64/fpu/ftestexcept.c

index b03d816a7a9853c711935cadfaf94d086e2c18be..85938bb1c72fac64e75f12e777945cf79d5f09a0 100644 (file)
@@ -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)
 
index ba98df7f58fdda80813b8f4eaf687facd0e5a401..e0c4f2feab539db035e6008bb76037d79cd1f1e8 100644 (file)
 #include <fenv.h>
 
 int
-fetestexcept (int excepts)
+__fetestexcept (int excepts)
 {
   return 0;
 }
+libm_hidden_def (__fetestexcept)
+weak_alias (__fetestexcept, fetestexcept)
 libm_hidden_def (fetestexcept)
 stub_warning (fetestexcept)
index 1c709e863659afa9581f6bbe6ec84082530985a3..f057616f7f83f85a37dee64361101a7e326df10c 100644 (file)
 #include <fenv_private.h>
 
 int
-fetestexcept (int excepts)
+__fetestexcept (int excepts)
 {
   return libc_fetestexcept_aarch64 (excepts);
 }
+libm_hidden_def (__fetestexcept)
+weak_alias (__fetestexcept, fetestexcept)
 libm_hidden_def (fetestexcept)
index 183f68b7d0deb0ffdcdb8bb443a64afe6040d9b8..1395deee8d1020b30ab9f63eae49968b11b42e19 100644 (file)
@@ -19,7 +19,7 @@
 #include <fenv_libc.h>
 
 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)
index 74327e42f0056d8f2269adf93f19043b2c9c44da..c3cfe631a4074191494700c547dffd09db2111a1 100644 (file)
@@ -22,7 +22,7 @@
 #include <stdio.h>
 
 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)
index 603cbfcaa938e5a5a20cfe8b164ed358af443fef..a5d6db2d9393c83115985979026a6996d71fe1ce 100644 (file)
@@ -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)
index 135ddcaed02c4d4b026f7f09ffdd48e69f7876f4..ea16d691e5ae92a6b6ccf7f02071cccaf70c99e2 100644 (file)
 #include <stdio.h>
 
 int
-fetestexcept (int excepts)
+__fetestexcept (int excepts)
 {
   return libc_fetestexcept_vfp (excepts);
 }
+libm_hidden_def (__fetestexcept)
+weak_alias (__fetestexcept, fetestexcept)
 libm_hidden_def (fetestexcept)
index cf041ebf78fefe00a63beb815ba8882577c66beb..11aeb3be28cf28cf7d51d74185bc99fa69dbaf79 100644 (file)
@@ -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;
 }
index 0286230cc7758f18a9d427239052af850d5dcafc..032568ccefda10189a978997e3dd292a383c10a3 100644 (file)
@@ -19,7 +19,7 @@
 #include <fenv.h>
 
 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)
index 2d41ba22acac742ffec8fca23b8adfbe9e529e0c..09a673e1ab6846cfee5760ce434db1f9b9d85d33 100644 (file)
@@ -21,7 +21,7 @@
 #include <ldsodefs.h>
 
 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)
index 14e1857879c4c5babe88e031cd53a63bc98b0cd6..3d5b6de76023fcea69479cf2648b878b145a7b8c 100644 (file)
@@ -20,7 +20,7 @@
 #include <fpu_control.h>
 
 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)
index cbe0205833889639c327e9ff7b527ec86b94700c..cfa659e182b08e8ad96cf8aaa32fd80d9977d6ba 100644 (file)
@@ -19,7 +19,7 @@
 #include <fenv.h>
 
 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)
index 58e2c555db7bfb8c8a89a5f45c9e046f05fd2bce..3cb45a590bf25ec93ab4f17d3bd0ccff926287a2 100644 (file)
@@ -20,7 +20,7 @@
 #include <fpu_control.h>
 
 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)
index e199bcdf1adde448024d188c52f672b6ed5a1261..004a414eda8c36e3ed163dd12b973c2c25bedd89 100644 (file)
 #include <fenv_private.h>
 
 int
-fetestexcept (int excepts)
+__fetestexcept (int excepts)
 {
   return libc_fetestexcept_or1k (excepts);
 }
+libm_hidden_def (__fetestexcept)
+weak_alias (__fetestexcept, fetestexcept)
 libm_hidden_def (fetestexcept)
index c295156d55adba3c04d16923ceb77c18d60c0d9d..0c30823fa8a0abfc0df480adbc575493f6026dfa 100644 (file)
@@ -19,7 +19,7 @@
 #include <fenv_libc.h>
 
 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)
index b042c0f4d55b819749c9af12dec288b441b4cf18..11bb1a5dd549ce4c0dfbe513e343773b51545621 100644 (file)
 #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)
index ac4ae00555c1c3b12f6caca12769869fd675ef80..52099212b068608f526ac988151ebdcfe36b2090 100644 (file)
 #include <fenv_private.h>
 
 int
-fetestexcept (int excepts)
+__fetestexcept (int excepts)
 {
   return libc_fetestexcept_riscv (excepts);
 }
+libm_hidden_def (__fetestexcept)
+weak_alias (__fetestexcept, fetestexcept)
 libm_hidden_def (fetestexcept)
index 056aa097b1365df922de2a36cdb83d29a759b1b0..e9065399293362fc7f3d958a2f086054a074c507 100644 (file)
 #include <fenv_private.h>
 
 int
-fetestexcept (int excepts)
+__fetestexcept (int excepts)
 {
   return libc_fetestexcept_s390 (excepts);
 }
+libm_hidden_def (__fetestexcept)
+weak_alias (__fetestexcept, fetestexcept)
 libm_hidden_def (fetestexcept)
index 66441cfb3e10977bfdaedf88633a1d06528fb59d..39659a4566f59bfffad3c045b119d894dfa93fc0 100644 (file)
@@ -20,7 +20,7 @@
 #include <fpu_control.h>
 
 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)
index 77a3b2e39d795c70e45fd7be8b7df97b362e53ef..44f6767e8c16893eea8e266bfe3e433d7f5632df 100644 (file)
@@ -20,7 +20,7 @@
 #include <fenv_private.h>
 
 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)
index b6c617d985680311781ce168d2d7df65e60a0b63..87a851d4b45d9f28cd5a70b437146e9d2ce212ca 100644 (file)
@@ -19,7 +19,7 @@
 #include <fenv.h>
 
 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)