about summary refs log tree commit diff
path: root/sysdeps
diff options
context:
space:
mode:
authorUlrich Drepper <drepper@redhat.com>2001-04-05 17:47:09 +0000
committerUlrich Drepper <drepper@redhat.com>2001-04-05 17:47:09 +0000
commit96dd1a812a0aedb0f5df4ec4a5cb2fd67bb8876f (patch)
tree3600e7efbc6d3f1735ef52e8334062d76f15085f /sysdeps
parente2027cc35e95ef20321cd076bb2f50309e1d086f (diff)
downloadglibc-96dd1a812a0aedb0f5df4ec4a5cb2fd67bb8876f.tar.gz
glibc-96dd1a812a0aedb0f5df4ec4a5cb2fd67bb8876f.tar.xz
glibc-96dd1a812a0aedb0f5df4ec4a5cb2fd67bb8876f.zip
Update.
2001-04-05  Ulrich Drepper  <drepper@redhat.com>

	* sysdeps/i386/fpu/libm-test-ulps: Relax errors for asinl.
Diffstat (limited to 'sysdeps')
-rw-r--r--sysdeps/i386/fpu/libm-test-ulps20
-rw-r--r--sysdeps/ieee754/ldbl-96/e_asinl.c2
2 files changed, 17 insertions, 5 deletions
diff --git a/sysdeps/i386/fpu/libm-test-ulps b/sysdeps/i386/fpu/libm-test-ulps
index b1196bbf47..97619e8cfd 100644
--- a/sysdeps/i386/fpu/libm-test-ulps
+++ b/sysdeps/i386/fpu/libm-test-ulps
@@ -11,10 +11,22 @@ ldouble: 1
 ildouble: 1
 
 # asin
+Test "asin (0.5) == pi/6":
+ldouble: 1
+ildouble: 1
+Test "asin (-0.5) == -pi/6":
+ldouble: 1
+ildouble: 1
+Test "asin (1.0) == pi/2":
+ldouble: 1
+ildouble: 1
+Test "asin (-1.0) == -pi/2":
+ldouble: 1
+ildouble: 1
 Test "asin (0.7) == 0.77539749661075306374035335271498708":
 double: 1
-ildouble: 1147
-ldouble: 1147
+ldouble: 1
+ildouble: 1
 
 # asinh
 Test "asinh (0.7) == 0.652666566082355786":
@@ -1146,8 +1158,8 @@ ldouble: 1
 
 Function: "asin":
 double: 1
-ildouble: 1147
-ldouble: 1147
+ldouble: 1
+ildouble: 1
 
 Function: "asinh":
 ildouble: 656
diff --git a/sysdeps/ieee754/ldbl-96/e_asinl.c b/sysdeps/ieee754/ldbl-96/e_asinl.c
index 202e245a41..e469431b0d 100644
--- a/sysdeps/ieee754/ldbl-96/e_asinl.c
+++ b/sysdeps/ieee754/ldbl-96/e_asinl.c
@@ -92,7 +92,7 @@ __ieee754_asinl (x)
   ix = (ix << 16) | (i0 >> 16);
   if (ix >= 0x3fff8000)
     {				/* |x|>= 1 */
-      if (ix < 0x7fff0000 && ((i0 - 0x80000000) | i1) == 0)
+      if (ix == 0x3fff8000 && ((i0 - 0x80000000) | i1) == 0)
 	/* asin(1)=+-pi/2 with inexact */
 	return x * pio2_hi + x * pio2_lo;
       return (x - x) / (x - x);	/* asin(|x|>1) is NaN */