]> git.ipfire.org Git - thirdparty/glibc.git/commitdiff
math: Remove erfcf fma usage master
authorAdhemerval Zanella <adhemerval.zanella@linaro.org>
Fri, 10 Oct 2025 17:49:23 +0000 (14:49 -0300)
committerAdhemerval Zanella <adhemerval.zanella@linaro.org>
Tue, 14 Oct 2025 11:46:06 +0000 (08:46 -0300)
The fma is not required to provide correctly rounded and it helps
on !__FP_FAST_FMA ISAs.
Reviewed-by: Paul Zimmermann <Paul.Zimmermann@inria.fr>
sysdeps/ieee754/flt-32/s_erfcf.c

index 955f129148dbe92bd7c71cd33c34af26d7e17c20..7d77eceb9cb17496f4cdb26d9e45bdb640ab1fde 100644 (file)
@@ -140,7 +140,7 @@ __erfcf (float xf)
   const double iln2 = 0x1.71547652b82fep+0;
   const double ln2h = 0x1.62e42fefap-8;
   const double ln2l = 0x1.cf79abd6f5dc8p-47;
-  uint64_t jt = asuint64 (fma (x2, iln2, -(1024 + 0x1p-8)));
+  uint64_t jt = asuint64 (x2 * iln2 + -(1024 + 0x1p-8));
   int64_t j = (int64_t) (jt << 12) >> 48;
   double S = asdouble ((uint64_t)((j >> 7) + (0x3ff | sgn << 11)) << 52);
   static const double ch[] =