[PATCH 13/25] math: Use internal fesetround alias on fma
Adhemerval Zanella
adhemerval.zanella@linaro.org
Mon Aug 25 16:38:32 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 | 4 ++--
sysdeps/ieee754/ldbl-96/s_fma.c | 4 ++--
sysdeps/ieee754/ldbl-96/s_fmal.c | 4 ++--
4 files changed, 7 insertions(+), 7 deletions(-)
diff --git a/sysdeps/ieee754/ldbl-128/s_fma.c b/sysdeps/ieee754/ldbl-128/s_fma.c
index a5466b67c5..01ca556260 100644
--- a/sysdeps/ieee754/ldbl-128/s_fma.c
+++ b/sysdeps/ieee754/ldbl-128/s_fma.c
@@ -51,7 +51,7 @@ __fma (double x, double y, double z)
union ieee854_long_double u;
__feholdexcept (&env);
- fesetround (FE_TOWARDZERO);
+ __fesetround (FE_TOWARDZERO);
/* Perform addition with round to odd. */
u.d = temp + (long double) z;
if ((u.ieee.mantissa3 & 1) == 0 && u.ieee.exponent != 0x7fff)
diff --git a/sysdeps/ieee754/ldbl-128/s_fmal.c b/sysdeps/ieee754/ldbl-128/s_fmal.c
index f52a21306d..17ad90ca31 100644
--- a/sysdeps/ieee754/ldbl-128/s_fmal.c
+++ b/sysdeps/ieee754/ldbl-128/s_fmal.c
@@ -195,7 +195,7 @@ __fmal (_Float128 x, _Float128 y, _Float128 z)
fenv_t env;
__feholdexcept (&env);
- fesetround (FE_TONEAREST);
+ __fesetround (FE_TONEAREST);
/* Multiplication m1 + m2 = x * y using Dekker's algorithm. */
#define C ((1LL << (LDBL_MANT_DIG + 1) / 2) + 1)
@@ -229,7 +229,7 @@ __fmal (_Float128 x, _Float128 y, _Float128 z)
return z + m1;
}
- fesetround (FE_TOWARDZERO);
+ __fesetround (FE_TOWARDZERO);
/* Perform m2 + a2 addition with round to odd. */
u.d = a2 + m2;
diff --git a/sysdeps/ieee754/ldbl-96/s_fma.c b/sysdeps/ieee754/ldbl-96/s_fma.c
index 9723c5a797..a9abf8f1de 100644
--- a/sysdeps/ieee754/ldbl-96/s_fma.c
+++ b/sysdeps/ieee754/ldbl-96/s_fma.c
@@ -52,7 +52,7 @@ __fma (double x, double y, double z)
fenv_t env;
__feholdexcept (&env);
- fesetround (FE_TONEAREST);
+ __fesetround (FE_TONEAREST);
/* Multiplication m1 + m2 = x * y using Dekker's algorithm. */
#define C ((1ULL << (LDBL_MANT_DIG + 1) / 2) + 1)
@@ -86,7 +86,7 @@ __fma (double x, double y, double z)
return z + m1;
}
- fesetround (FE_TOWARDZERO);
+ __fesetround (FE_TOWARDZERO);
/* Perform m2 + a2 addition with round to odd. */
a2 = a2 + m2;
diff --git a/sysdeps/ieee754/ldbl-96/s_fmal.c b/sysdeps/ieee754/ldbl-96/s_fmal.c
index c923bc9fff..be5528d96b 100644
--- a/sysdeps/ieee754/ldbl-96/s_fmal.c
+++ b/sysdeps/ieee754/ldbl-96/s_fmal.c
@@ -185,7 +185,7 @@ __fmal (long double x, long double y, long double z)
fenv_t env;
__feholdexcept (&env);
- fesetround (FE_TONEAREST);
+ __fesetround (FE_TONEAREST);
/* Multiplication m1 + m2 = x * y using Dekker's algorithm. */
#define C ((1LL << (LDBL_MANT_DIG + 1) / 2) + 1)
@@ -219,7 +219,7 @@ __fmal (long double x, long double y, long double z)
return z + m1;
}
- fesetround (FE_TOWARDZERO);
+ __fesetround (FE_TOWARDZERO);
/* Perform m2 + a2 addition with round to odd. */
u.d = a2 + m2;
--
2.43.0
More information about the Libc-alpha
mailing list