about summary refs log tree commit diff
path: root/sysdeps/ieee754/dbl-64/e_j1.c
diff options
context:
space:
mode:
Diffstat (limited to 'sysdeps/ieee754/dbl-64/e_j1.c')
-rw-r--r--sysdeps/ieee754/dbl-64/e_j1.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/sysdeps/ieee754/dbl-64/e_j1.c b/sysdeps/ieee754/dbl-64/e_j1.c
index 260492ae67..8a3b2ffd19 100644
--- a/sysdeps/ieee754/dbl-64/e_j1.c
+++ b/sysdeps/ieee754/dbl-64/e_j1.c
@@ -190,8 +190,8 @@ static double V0[5] = {
         ix = 0x7fffffff&hx;
     /* if Y1(NaN) is NaN, Y1(-inf) is NaN, Y1(inf) is 0 */
 	if(ix>=0x7ff00000) return  one/(x+x*x);
-        if((ix|lx)==0) return -one/zero;
-        if(hx<0) return zero/zero;
+        if((ix|lx)==0) return -HUGE_VAL+x; /* -inf and overflow exception.  */;
+        if(hx<0) return zero/(zero*x);
         if(ix >= 0x40000000) {  /* |x| >= 2.0 */
 		__sincos (x, &s, &c);
                 ss = -s-c;