diff options
Diffstat (limited to 'sysdeps')
-rw-r--r-- | sysdeps/i386/fpu/libm-test-ulps | 8 | ||||
-rw-r--r-- | sysdeps/ieee754/ldbl-128ibm/s_asinhl.c | 8 | ||||
-rw-r--r-- | sysdeps/x86_64/fpu/libm-test-ulps | 27 |
3 files changed, 22 insertions, 21 deletions
diff --git a/sysdeps/i386/fpu/libm-test-ulps b/sysdeps/i386/fpu/libm-test-ulps index 0977557..3ba23a4 100644 --- a/sysdeps/i386/fpu/libm-test-ulps +++ b/sysdeps/i386/fpu/libm-test-ulps @@ -68,14 +68,14 @@ ldouble: 1 Function: "asinh_downward": double: 1 float: 1 -ildouble: 1 +ildouble: 3 ldouble: 3 Function: "asinh_towardzero": double: 1 float: 1 -ildouble: 1 -ldouble: 2 +ildouble: 3 +ldouble: 3 Function: "asinh_upward": double: 1 @@ -83,7 +83,7 @@ float: 1 idouble: 1 ifloat: 1 ildouble: 5 -ldouble: 2 +ldouble: 3 Function: "atan2": ildouble: 1 diff --git a/sysdeps/ieee754/ldbl-128ibm/s_asinhl.c b/sysdeps/ieee754/ldbl-128ibm/s_asinhl.c index 043b151f..b76e114 100644 --- a/sysdeps/ieee754/ldbl-128ibm/s_asinhl.c +++ b/sysdeps/ieee754/ldbl-128ibm/s_asinhl.c @@ -44,15 +44,15 @@ long double __asinhl(long double x) EXTRACT_WORDS64 (hx, xhi); ix = hx&0x7fffffffffffffffLL; if(ix>=0x7ff0000000000000LL) return x+x; /* x is inf or NaN */ - if(ix< 0x3e20000000000000LL) { /* |x|<2**-29 */ + if(ix< 0x3c70000000000000LL) { /* |x|<2**-56 */ if(huge+x>one) return x; /* return x inexact except 0 */ } - if(ix>0x41b0000000000000LL) { /* |x| > 2**28 */ + if(ix>0x4370000000000000LL) { /* |x| > 2**56 */ w = __ieee754_logl(fabsl(x))+ln2; - } else if (ix>0x4000000000000000LL) { /* 2**28 > |x| > 2.0 */ + } else if (ix>0x4000000000000000LL) { /* 2**56 >= |x| > 2.0 */ t = fabs(x); w = __ieee754_logl(2.0*t+one/(__ieee754_sqrtl(x*x+one)+t)); - } else { /* 2.0 > |x| > 2**-29 */ + } else { /* 2.0 >= |x| >= 2**-56 */ t = x*x; w =__log1pl(fabsl(x)+t/(one+__ieee754_sqrtl(one+t))); } diff --git a/sysdeps/x86_64/fpu/libm-test-ulps b/sysdeps/x86_64/fpu/libm-test-ulps index cd9e44f..7252929 100644 --- a/sysdeps/x86_64/fpu/libm-test-ulps +++ b/sysdeps/x86_64/fpu/libm-test-ulps @@ -86,33 +86,34 @@ ldouble: 1 Function: "asinh": double: 1 float: 1 +idouble: 1 ifloat: 1 ildouble: 1 ldouble: 1 Function: "asinh_downward": -double: 1 +double: 2 float: 2 -idouble: 1 -ifloat: 1 -ildouble: 1 +idouble: 2 +ifloat: 2 +ildouble: 3 ldouble: 3 Function: "asinh_towardzero": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -ildouble: 1 -ldouble: 2 +double: 2 +float: 2 +idouble: 2 +ifloat: 2 +ildouble: 3 +ldouble: 3 Function: "asinh_upward": double: 2 float: 1 -idouble: 1 +idouble: 2 ifloat: 1 -ildouble: 2 -ldouble: 2 +ildouble: 3 +ldouble: 3 Function: "atan2": float: 1 |