[PATCH 12/25] math: Use internal fetestexcept alias on fma

Adhemerval Zanella adhemerval.zanella@linaro.org
Mon Aug 25 16:38:31 GMT 2025


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.
---
 sysdeps/ieee754/ldbl-128/s_fma.c  | 2 +-
 sysdeps/ieee754/ldbl-128/s_fmal.c | 8 ++++----
 sysdeps/ieee754/ldbl-96/s_fma.c   | 2 +-
 sysdeps/ieee754/ldbl-96/s_fmal.c  | 8 ++++----
 4 files changed, 10 insertions(+), 10 deletions(-)

diff --git a/sysdeps/ieee754/ldbl-128/s_fma.c b/sysdeps/ieee754/ldbl-128/s_fma.c
index bfbc03d308..a5466b67c5 100644
--- a/sysdeps/ieee754/ldbl-128/s_fma.c
+++ b/sysdeps/ieee754/ldbl-128/s_fma.c
@@ -55,7 +55,7 @@ __fma (double x, double y, double z)
   /* Perform addition with round to odd.  */
   u.d = temp + (long double) z;
   if ((u.ieee.mantissa3 & 1) == 0 && u.ieee.exponent != 0x7fff)
-    u.ieee.mantissa3 |= fetestexcept (FE_INEXACT) != 0;
+    u.ieee.mantissa3 |= __fetestexcept (FE_INEXACT) != 0;
   __feupdateenv (&env);
   /* And finally truncation with round to nearest.  */
   return (double) u.d;
diff --git a/sysdeps/ieee754/ldbl-128/s_fmal.c b/sysdeps/ieee754/ldbl-128/s_fmal.c
index 09f90b6e6e..f52a21306d 100644
--- a/sysdeps/ieee754/ldbl-128/s_fmal.c
+++ b/sysdeps/ieee754/ldbl-128/s_fmal.c
@@ -236,7 +236,7 @@ __fmal (_Float128 x, _Float128 y, _Float128 z)
   if (__glibc_likely (adjust == 0))
     {
       if ((u.ieee.mantissa3 & 1) == 0 && u.ieee.exponent != 0x7fff)
-	u.ieee.mantissa3 |= fetestexcept (FE_INEXACT) != 0;
+	u.ieee.mantissa3 |= __fetestexcept (FE_INEXACT) != 0;
       __feupdateenv (&env);
       /* Result is a1 + u.d.  */
       return a1 + u.d;
@@ -244,7 +244,7 @@ __fmal (_Float128 x, _Float128 y, _Float128 z)
   else if (__glibc_likely (adjust > 0))
     {
       if ((u.ieee.mantissa3 & 1) == 0 && u.ieee.exponent != 0x7fff)
-	u.ieee.mantissa3 |= fetestexcept (FE_INEXACT) != 0;
+	u.ieee.mantissa3 |= __fetestexcept (FE_INEXACT) != 0;
       __feupdateenv (&env);
       /* Result is a1 + u.d, scaled up.  */
       return (a1 + u.d) * L(0x1p113);
@@ -252,11 +252,11 @@ __fmal (_Float128 x, _Float128 y, _Float128 z)
   else
     {
       if ((u.ieee.mantissa3 & 1) == 0)
-	u.ieee.mantissa3 |= fetestexcept (FE_INEXACT) != 0;
+	u.ieee.mantissa3 |= __fetestexcept (FE_INEXACT) != 0;
       v.d = a1 + u.d;
       /* Ensure the addition is not scheduled after fetestexcept call.  */
       math_force_eval (v.d);
-      int j = fetestexcept (FE_INEXACT) != 0;
+      int j = __fetestexcept (FE_INEXACT) != 0;
       __feupdateenv (&env);
       /* Ensure the following computations are performed in default rounding
 	 mode instead of just reusing the round to zero computation.  */
diff --git a/sysdeps/ieee754/ldbl-96/s_fma.c b/sysdeps/ieee754/ldbl-96/s_fma.c
index de8f38212b..9723c5a797 100644
--- a/sysdeps/ieee754/ldbl-96/s_fma.c
+++ b/sysdeps/ieee754/ldbl-96/s_fma.c
@@ -94,7 +94,7 @@ __fma (double x, double y, double z)
   union ieee854_long_double u;
   u.d = a1 + a2;
   if ((u.ieee.mantissa1 & 1) == 0 && u.ieee.exponent != 0x7fff)
-    u.ieee.mantissa1 |= fetestexcept (FE_INEXACT) != 0;
+    u.ieee.mantissa1 |= __fetestexcept (FE_INEXACT) != 0;
   __feupdateenv (&env);
 
   /* Add finally round to double precision.  */
diff --git a/sysdeps/ieee754/ldbl-96/s_fmal.c b/sysdeps/ieee754/ldbl-96/s_fmal.c
index 920531e248..c923bc9fff 100644
--- a/sysdeps/ieee754/ldbl-96/s_fmal.c
+++ b/sysdeps/ieee754/ldbl-96/s_fmal.c
@@ -226,7 +226,7 @@ __fmal (long double x, long double y, long double z)
   if (__glibc_likely (adjust == 0))
     {
       if ((u.ieee.mantissa1 & 1) == 0 && u.ieee.exponent != 0x7fff)
-	u.ieee.mantissa1 |= fetestexcept (FE_INEXACT) != 0;
+	u.ieee.mantissa1 |= __fetestexcept (FE_INEXACT) != 0;
       __feupdateenv (&env);
       /* Result is a1 + u.d.  */
       return a1 + u.d;
@@ -234,7 +234,7 @@ __fmal (long double x, long double y, long double z)
   else if (__glibc_likely (adjust > 0))
     {
       if ((u.ieee.mantissa1 & 1) == 0 && u.ieee.exponent != 0x7fff)
-	u.ieee.mantissa1 |= fetestexcept (FE_INEXACT) != 0;
+	u.ieee.mantissa1 |= __fetestexcept (FE_INEXACT) != 0;
       __feupdateenv (&env);
       /* Result is a1 + u.d, scaled up.  */
       return (a1 + u.d) * 0x1p64L;
@@ -242,11 +242,11 @@ __fmal (long double x, long double y, long double z)
   else
     {
       if ((u.ieee.mantissa1 & 1) == 0)
-	u.ieee.mantissa1 |= fetestexcept (FE_INEXACT) != 0;
+	u.ieee.mantissa1 |= __fetestexcept (FE_INEXACT) != 0;
       v.d = a1 + u.d;
       /* Ensure the addition is not scheduled after fetestexcept call.  */
       math_force_eval (v.d);
-      int j = fetestexcept (FE_INEXACT) != 0;
+      int j = __fetestexcept (FE_INEXACT) != 0;
       __feupdateenv (&env);
       /* Ensure the following computations are performed in default rounding
 	 mode instead of just reusing the round to zero computation.  */
-- 
2.43.0



More information about the Libc-alpha mailing list