[BZ #16824] Fix failing y1 due to too large ulps in downward/upward rounding mode.
authorStefan Liebler <stli@linux.vnet.ibm.com>
Wed, 16 Apr 2014 10:52:52 +0000 (12:52 +0200)
committerAndreas Krebbel <krebbel@linux.vnet.ibm.com>
Wed, 16 Apr 2014 11:03:46 +0000 (13:03 +0200)
ChangeLog
NEWS
sysdeps/ieee754/ldbl-128/e_j1l.c

index 4a71410..a4eba04 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,9 @@
+2014-04-16  Stefan Liebler  <stli@linux.vnet.ibm.com>
+
+       [BZ #16824]
+       * sysdeps/ieee754/ldbl-128/e_j1l.c (__ieee754_y1l):
+       Set round-to-nearest internally to reduce error accumulation.
+
 2014-04-16  Alan Modra  <amodra@gmail.com>
 
        [BZ #16740]
diff --git a/NEWS b/NEWS
index 867a3d6..6a65809 100644 (file)
--- a/NEWS
+++ b/NEWS
@@ -14,7 +14,7 @@ Version 2.20
   16610, 16611, 16613, 16619, 16623, 16632, 16634, 16639, 16642, 16648,
   16649, 16670, 16674, 16677, 16680, 16683, 16689, 16695, 16701, 16706,
   16707, 16712, 16713, 16714, 16731, 16739, 16740, 16743, 16758, 16759,
-  16760, 16770, 16786, 16789, 16799, 16800, 16815, 16831, 16838.
+  16760, 16770, 16786, 16789, 16799, 16800, 16815, 16824, 16831, 16838.
 
 * Running the testsuite no longer terminates as soon as a test fails.
   Instead, a file tests.sum (xtests.sum from "make xcheck") is generated,
index 70a1c86..1264c95 100644 (file)
@@ -856,6 +856,7 @@ __ieee754_y1l (long double x)
   if (xx <= 2.0L)
     {
       /* 0 <= x <= 2 */
+      SET_RESTORE_ROUNDL (FE_TONEAREST);
       z = xx * xx;
       p = xx * neval (z, Y0_2N, NY0_2N) / deval (z, Y0_2D, NY0_2D);
       p = -TWOOPI / xx + p;