about summary refs log tree commit diff
path: root/sysdeps/ieee754/dbl-64/k_rem_pio2.c
diff options
context:
space:
mode:
Diffstat (limited to 'sysdeps/ieee754/dbl-64/k_rem_pio2.c')
-rw-r--r--sysdeps/ieee754/dbl-64/k_rem_pio2.c19
1 files changed, 5 insertions, 14 deletions
diff --git a/sysdeps/ieee754/dbl-64/k_rem_pio2.c b/sysdeps/ieee754/dbl-64/k_rem_pio2.c
index 047c6c2886..e58c9e854c 100644
--- a/sysdeps/ieee754/dbl-64/k_rem_pio2.c
+++ b/sysdeps/ieee754/dbl-64/k_rem_pio2.c
@@ -315,34 +315,25 @@ recompute:
       break;
     case 1:
     case 2:;
-#if __FLT_EVAL_METHOD__ != 0
-      volatile
-#endif
       double fv = 0.0;
       for (i = jz; i >= 0; i--)
-	fv += fq[i];
+	fv = math_narrow_eval (fv + fq[i]);
       y[0] = (ih == 0) ? fv : -fv;
-      fv = fq[0] - fv;
+      fv = math_narrow_eval (fq[0] - fv);
       for (i = 1; i <= jz; i++)
-	fv += fq[i];
+	fv = math_narrow_eval (fv + fq[i]);
       y[1] = (ih == 0) ? fv : -fv;
       break;
     case 3:             /* painful */
       for (i = jz; i > 0; i--)
 	{
-#if __FLT_EVAL_METHOD__ != 0
-	  volatile
-#endif
-	  double fv = (double) (fq[i - 1] + fq[i]);
+	  double fv = math_narrow_eval (fq[i - 1] + fq[i]);
 	  fq[i] += fq[i - 1] - fv;
 	  fq[i - 1] = fv;
 	}
       for (i = jz; i > 1; i--)
 	{
-#if __FLT_EVAL_METHOD__ != 0
-	  volatile
-#endif
-	  double fv = (double) (fq[i - 1] + fq[i]);
+	  double fv = math_narrow_eval (fq[i - 1] + fq[i]);
 	  fq[i] += fq[i - 1] - fv;
 	  fq[i - 1] = fv;
 	}