aboutsummaryrefslogtreecommitdiff
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
glibc-96dd1a812a0aedb0f5df4ec4a5cb2fd67bb8876f.tar.gz
glibc-96dd1a812a0aedb0f5df4ec4a5cb2fd67bb8876f.tar.bz2
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 */