diff options
| author | Joseph Myers <joseph@codesourcery.com> | 2014-02-18 14:45:41 +0000 |
|---|---|---|
| committer | Joseph Myers <joseph@codesourcery.com> | 2014-02-18 14:45:41 +0000 |
| commit | a4fb786185fce5048a13c7879f67dfbe59ff70be (patch) | |
| tree | 32d90a80cb679c5d96320ec56b92928312e1246e /math | |
| parent | ef114eafbff80525d079d7d6fadd69a58eb8dcc3 (diff) | |
| download | glibc-a4fb786185fce5048a13c7879f67dfbe59ff70be.tar.xz glibc-a4fb786185fce5048a13c7879f67dfbe59ff70be.zip | |
Fix gen-auto-libm-tests sticky bit setting for negative results.
gen-auto-libm-tests has a bug in the logic for setting a sticky bit
based on the ternary value from MPFR: it is correct for positive
results, but for negative results mpz_setbit acts as if a two's
complement representation is used, whereas the low bit needs setting
based on the sign-magnitude representation GMP actually uses. (This
showed up in converting fma tests to use auto-libm-test-in /
gen-auto-libm-tests.)
This patch fixes the problem by negating the mpz_t value to set its
low bit. There are lots of changes to auto-libm-test-out (mainly 1ulp
fixes to ldbl-128 expected results), but only a few ulps updates are
needed on x86 / x86_64. In one case, a corrected expectation showed
up a spurious underflow exception where the correct result is slightly
outside the underflowing range.
Tested x86_64 and x86 and ulps updated accordingly.
* math/gen-auto-libm-tests.c (adjust_real): Ensure integers are
non-negative before setting low bit.
* math/auto-libm-test-in: Mark one asin test possibly having
spurious underflow.
* math/auto-libm-test-out: Regenerated.
* sysdeps/i386/fpu/libm-test-ulps: Update.
* sysdeps/x86_64/fpu/libm-test-ulps: Likewise.
Diffstat (limited to 'math')
| -rw-r--r-- | math/auto-libm-test-in | 3 | ||||
| -rw-r--r-- | math/auto-libm-test-out | 8672 | ||||
| -rw-r--r-- | math/gen-auto-libm-tests.c | 9 |
3 files changed, 4346 insertions, 4338 deletions
diff --git a/math/auto-libm-test-in b/math/auto-libm-test-in index c620361613..17158ea685 100644 --- a/math/auto-libm-test-in +++ b/math/auto-libm-test-in @@ -61,8 +61,9 @@ asin -0x0.ffffffffffffp0 asin 0x0.ffffffffffffffffp0 asin -0x0.ffffffffffffffffp0 # Bug 16351: underflow exception may be missing. +# Bug 16599: spurious underflow may occur. asin min missing-underflow -asin -min missing-underflow +asin -min missing-underflow spurious-underflow:dbl-64:x86 asin min_subnorm missing-underflow asin -min_subnorm missing-underflow diff --git a/math/auto-libm-test-out b/math/auto-libm-test-out index 93818e8d49..337148d0c2 100644 --- a/math/auto-libm-test-out +++ b/math/auto-libm-test-out @@ -1491,10 +1491,10 @@ asin -1.0 = asin tonearest ldbl-96-m68k -0x1p+0L : -0x1.921fb54442d1846ap+0L : inexact-ok = asin towardzero ldbl-96-m68k -0x1p+0L : -0x1.921fb54442d18468p+0L : inexact-ok = asin upward ldbl-96-m68k -0x1p+0L : -0x1.921fb54442d18468p+0L : inexact-ok -= asin downward ldbl-128 -0x1p+0L : -0x1.921fb54442d18469898cc51701b8p+0L : inexact-ok += asin downward ldbl-128 -0x1p+0L : -0x1.921fb54442d18469898cc51701b9p+0L : inexact-ok = asin tonearest ldbl-128 -0x1p+0L : -0x1.921fb54442d18469898cc51701b8p+0L : inexact-ok -= asin towardzero ldbl-128 -0x1p+0L : -0x1.921fb54442d18469898cc51701b7p+0L : inexact-ok -= asin upward ldbl-128 -0x1p+0L : -0x1.921fb54442d18469898cc51701b7p+0L : inexact-ok += asin towardzero ldbl-128 -0x1p+0L : -0x1.921fb54442d18469898cc51701b8p+0L : inexact-ok += asin upward ldbl-128 -0x1p+0L : -0x1.921fb54442d18469898cc51701b8p+0L : inexact-ok = asin downward ldbl-128ibm -0x1p+0L : -0x1.921fb54442d18469898cc51702p+0L : inexact-ok = asin tonearest ldbl-128ibm -0x1p+0L : -0x1.921fb54442d18469898cc517018p+0L : inexact-ok = asin towardzero ldbl-128ibm -0x1p+0L : -0x1.921fb54442d18469898cc517018p+0L : inexact-ok @@ -1566,10 +1566,10 @@ asin -0x0.ffffffp0 = asin tonearest ldbl-96-m68k -0xf.fffffp-4L : -0x1.920914a5da6f90bep+0L : inexact-ok = asin towardzero ldbl-96-m68k -0xf.fffffp-4L : -0x1.920914a5da6f90bep+0L : inexact-ok = asin upward ldbl-96-m68k -0xf.fffffp-4L : -0x1.920914a5da6f90bep+0L : inexact-ok -= asin downward ldbl-128 -0xf.fffffp-4L : -0x1.920914a5da6f90beac755cf81addp+0L : inexact-ok += asin downward ldbl-128 -0xf.fffffp-4L : -0x1.920914a5da6f90beac755cf81adep+0L : inexact-ok = asin tonearest ldbl-128 -0xf.fffffp-4L : -0x1.920914a5da6f90beac755cf81addp+0L : inexact-ok -= asin towardzero ldbl-128 -0xf.fffffp-4L : -0x1.920914a5da6f90beac755cf81adcp+0L : inexact-ok -= asin upward ldbl-128 -0xf.fffffp-4L : -0x1.920914a5da6f90beac755cf81adcp+0L : inexact-ok += asin towardzero ldbl-128 -0xf.fffffp-4L : -0x1.920914a5da6f90beac755cf81addp+0L : inexact-ok += asin upward ldbl-128 -0xf.fffffp-4L : -0x1.920914a5da6f90beac755cf81addp+0L : inexact-ok = asin downward ldbl-128ibm -0xf.fffffp-4L : -0x1.920914a5da6f90beac755cf81bp+0L : inexact-ok = asin tonearest ldbl-128ibm -0xf.fffffp-4L : -0x1.920914a5da6f90beac755cf81bp+0L : inexact-ok = asin towardzero ldbl-128ibm -0xf.fffffp-4L : -0x1.920914a5da6f90beac755cf81a8p+0L : inexact-ok @@ -1660,10 +1660,10 @@ asin -0x0.ffffffff8p0 = asin tonearest ldbl-96-m68k -0xf.fffffp-4L : -0x1.920914a5da6f90bep+0L : inexact-ok = asin towardzero ldbl-96-m68k -0xf.fffffp-4L : -0x1.920914a5da6f90bep+0L : inexact-ok = asin upward ldbl-96-m68k -0xf.fffffp-4L : -0x1.920914a5da6f90bep+0L : inexact-ok -= asin downward ldbl-128 -0xf.fffffp-4L : -0x1.920914a5da6f90beac755cf81addp+0L : inexact-ok += asin downward ldbl-128 -0xf.fffffp-4L : -0x1.920914a5da6f90beac755cf81adep+0L : inexact-ok = asin tonearest ldbl-128 -0xf.fffffp-4L : -0x1.920914a5da6f90beac755cf81addp+0L : inexact-ok -= asin towardzero ldbl-128 -0xf.fffffp-4L : -0x1.920914a5da6f90beac755cf81adcp+0L : inexact-ok -= asin upward ldbl-128 -0xf.fffffp-4L : -0x1.920914a5da6f90beac755cf81adcp+0L : inexact-ok += asin towardzero ldbl-128 -0xf.fffffp-4L : -0x1.920914a5da6f90beac755cf81addp+0L : inexact-ok += asin upward ldbl-128 -0xf.fffffp-4L : -0x1.920914a5da6f90beac755cf81addp+0L : inexact-ok = asin downward ldbl-128ibm -0xf.fffffp-4L : -0x1.920914a5da6f90beac755cf81bp+0L : inexact-ok = asin tonearest ldbl-128ibm -0xf.fffffp-4L : -0x1.920914a5da6f90beac755cf81bp+0L : inexact-ok = asin towardzero ldbl-128ibm -0xf.fffffp-4L : -0x1.920914a5da6f90beac755cf81a8p+0L : inexact-ok @@ -1684,10 +1684,10 @@ asin -0x0.ffffffff8p0 = asin tonearest ldbl-96-m68k -0x1p+0L : -0x1.921fb54442d1846ap+0L : inexact-ok = asin towardzero ldbl-96-m68k -0x1p+0L : -0x1.921fb54442d18468p+0L : inexact-ok = asin upward ldbl-96-m68k -0x1p+0L : -0x1.921fb54442d18468p+0L : inexact-ok -= asin downward ldbl-128 -0x1p+0L : -0x1.921fb54442d18469898cc51701b8p+0L : inexact-ok += asin downward ldbl-128 -0x1p+0L : -0x1.921fb54442d18469898cc51701b9p+0L : inexact-ok = asin tonearest ldbl-128 -0x1p+0L : -0x1.921fb54442d18469898cc51701b8p+0L : inexact-ok -= asin towardzero ldbl-128 -0x1p+0L : -0x1.921fb54442d18469898cc51701b7p+0L : inexact-ok -= asin upward ldbl-128 -0x1p+0L : -0x1.921fb54442d18469898cc51701b7p+0L : inexact-ok += asin towardzero ldbl-128 -0x1p+0L : -0x1.921fb54442d18469898cc51701b8p+0L : inexact-ok += asin upward ldbl-128 -0x1p+0L : -0x1.921fb54442d18469898cc51701b8p+0L : inexact-ok = asin downward ldbl-128ibm -0x1p+0L : -0x1.921fb54442d18469898cc51702p+0L : inexact-ok = asin tonearest ldbl-128ibm -0x1p+0L : -0x1.921fb54442d18469898cc517018p+0L : inexact-ok = asin towardzero ldbl-128ibm -0x1p+0L : -0x1.921fb54442d18469898cc517018p+0L : inexact-ok @@ -1798,10 +1798,10 @@ asin -0x0.ffffffffffffp0 = asin tonearest ldbl-96-m68k -0xf.fffffp-4L : -0x1.920914a5da6f90bep+0L : inexact-ok = asin towardzero ldbl-96-m68k -0xf.fffffp-4L : -0x1.920914a5da6f90bep+0L : inexact-ok = asin upward ldbl-96-m68k -0xf.fffffp-4L : -0x1.920914a5da6f90bep+0L : inexact-ok -= asin downward ldbl-128 -0xf.fffffp-4L : -0x1.920914a5da6f90beac755cf81addp+0L : inexact-ok += asin downward ldbl-128 -0xf.fffffp-4L : -0x1.920914a5da6f90beac755cf81adep+0L : inexact-ok = asin tonearest ldbl-128 -0xf.fffffp-4L : -0x1.920914a5da6f90beac755cf81addp+0L : inexact-ok -= asin towardzero ldbl-128 -0xf.fffffp-4L : -0x1.920914a5da6f90beac755cf81adcp+0L : inexact-ok -= asin upward ldbl-128 -0xf.fffffp-4L : -0x1.920914a5da6f90beac755cf81adcp+0L : inexact-ok += asin towardzero ldbl-128 -0xf.fffffp-4L : -0x1.920914a5da6f90beac755cf81addp+0L : inexact-ok += asin upward ldbl-128 -0xf.fffffp-4L : -0x1.920914a5da6f90beac755cf81addp+0L : inexact-ok = asin downward ldbl-128ibm -0xf.fffffp-4L : -0x1.920914a5da6f90beac755cf81bp+0L : inexact-ok = asin tonearest ldbl-128ibm -0xf.fffffp-4L : -0x1.920914a5da6f90beac755cf81bp+0L : inexact-ok = asin towardzero ldbl-128ibm -0xf.fffffp-4L : -0x1.920914a5da6f90beac755cf81a8p+0L : inexact-ok @@ -1822,10 +1822,10 @@ asin -0x0.ffffffffffffp0 = asin tonearest ldbl-96-m68k -0x1p+0L : -0x1.921fb54442d1846ap+0L : inexact-ok = asin towardzero ldbl-96-m68k -0x1p+0L : -0x1.921fb54442d18468p+0L : inexact-ok = asin upward ldbl-96-m68k -0x1p+0L : -0x1.921fb54442d18468p+0L : inexact-ok -= asin downward ldbl-128 -0x1p+0L : -0x1.921fb54442d18469898cc51701b8p+0L : inexact-ok += asin downward ldbl-128 -0x1p+0L : -0x1.921fb54442d18469898cc51701b9p+0L : inexact-ok = asin tonearest ldbl-128 -0x1p+0L : -0x1.921fb54442d18469898cc51701b8p+0L : inexact-ok -= asin towardzero ldbl-128 -0x1p+0L : -0x1.921fb54442d18469898cc51701b7p+0L : inexact-ok -= asin upward ldbl-128 -0x1p+0L : -0x1.921fb54442d18469898cc51701b7p+0L : inexact-ok += asin towardzero ldbl-128 -0x1p+0L : -0x1.921fb54442d18469898cc51701b8p+0L : inexact-ok += asin upward ldbl-128 -0x1p+0L : -0x1.921fb54442d18469898cc51701b8p+0L : inexact-ok = asin downward ldbl-128ibm -0x1p+0L : -0x1.921fb54442d18469898cc51702p+0L : inexact-ok = asin tonearest ldbl-128ibm -0x1p+0L : -0x1.921fb54442d18469898cc517018p+0L : inexact-ok = asin towardzero ldbl-128ibm -0x1p+0L : -0x1.921fb54442d18469898cc517018p+0L : inexact-ok @@ -1952,10 +1952,10 @@ asin -0x0.ffffffffffffffffp0 = asin tonearest ldbl-96-m68k -0xf.fffffp-4L : -0x1.920914a5da6f90bep+0L : inexact-ok = asin towardzero ldbl-96-m68k -0xf.fffffp-4L : -0x1.920914a5da6f90bep+0L : inexact-ok = asin upward ldbl-96-m68k -0xf.fffffp-4L : -0x1.920914a5da6f90bep+0L : inexact-ok -= asin downward ldbl-128 -0xf.fffffp-4L : -0x1.920914a5da6f90beac755cf81addp+0L : inexact-ok += asin downward ldbl-128 -0xf.fffffp-4L : -0x1.920914a5da6f90beac755cf81adep+0L : inexact-ok = asin tonearest ldbl-128 -0xf.fffffp-4L : -0x1.920914a5da6f90beac755cf81addp+0L : inexact-ok -= asin towardzero ldbl-128 -0xf.fffffp-4L : -0x1.920914a5da6f90beac755cf81adcp+0L : inexact-ok -= asin upward ldbl-128 -0xf.fffffp-4L : -0x1.920914a5da6f90beac755cf81adcp+0L : inexact-ok += asin towardzero ldbl-128 -0xf.fffffp-4L : -0x1.920914a5da6f90beac755cf81addp+0L : inexact-ok += asin upward ldbl-128 -0xf.fffffp-4L : -0x1.920914a5da6f90beac755cf81addp+0L : inexact-ok = asin downward ldbl-128ibm -0xf.fffffp-4L : -0x1.920914a5da6f90beac755cf81bp+0L : inexact-ok = asin tonearest ldbl-128ibm -0xf.fffffp-4L : -0x1.920914a5da6f90beac755cf81bp+0L : inexact-ok = asin towardzero ldbl-128ibm -0xf.fffffp-4L : -0x1.920914a5da6f90beac755cf81a8p+0L : inexact-ok @@ -1976,10 +1976,10 @@ asin -0x0.ffffffffffffffffp0 = asin tonearest ldbl-96-m68k -0x1p+0L : -0x1.921fb54442d1846ap+0L : inexact-ok = asin towardzero ldbl-96-m68k -0x1p+0L : -0x1.921fb54442d18468p+0L : inexact-ok = asin upward ldbl-96-m68k -0x1p+0L : -0x1.921fb54442d18468p+0L : inexact-ok -= asin downward ldbl-128 -0x1p+0L : -0x1.921fb54442d18469898cc51701b8p+0L : inexact-ok += asin downward ldbl-128 -0x1p+0L : -0x1.921fb54442d18469898cc51701b9p+0L : inexact-ok = asin tonearest ldbl-128 -0x1p+0L : -0x1.921fb54442d18469898cc51701b8p+0L : inexact-ok -= asin towardzero ldbl-128 -0x1p+0L : -0x1.921fb54442d18469898cc51701b7p+0L : inexact-ok -= asin upward ldbl-128 -0x1p+0L : -0x1.921fb54442d18469898cc51701b7p+0L : inexact-ok += asin towardzero ldbl-128 -0x1p+0L : -0x1.921fb54442d18469898cc51701b8p+0L : inexact-ok += asin upward ldbl-128 -0x1p+0L : -0x1.921fb54442d18469898cc51701b8p+0L : inexact-ok = asin downward ldbl-128ibm -0x1p+0L : -0x1.921fb54442d18469898cc51702p+0L : inexact-ok = asin tonearest ldbl-128ibm -0x1p+0L : -0x1.921fb54442d18469898cc517018p+0L : inexact-ok = asin towardzero ldbl-128ibm -0x1p+0L : -0x1.921fb54442d18469898cc517018p+0L : inexact-ok @@ -1997,7 +1997,7 @@ asin -0x0.ffffffffffffffffp0 = asin towardzero ldbl-96-m68k -0xf.ffffffffffff8p-4L : -0x1.921fb50442d18468p+0L : inexact-ok = asin upward ldbl-96-m68k -0xf.ffffffffffff8p-4L : -0x1.921fb50442d18468p+0L : inexact-ok = asin downward ldbl-128 -0xf.ffffffffffff8p-4L : -0x1.921fb50442d18469898c9a6c570ep+0L : inexact-ok -= asin tonearest ldbl-128 -0xf.ffffffffffff8p-4L : -0x1.921fb50442d18469898c9a6c570dp+0L : inexact-ok += asin tonearest ldbl-128 -0xf.ffffffffffff8p-4L : -0x1.921fb50442d18469898c9a6c570ep+0L : inexact-ok = asin towardzero ldbl-128 -0xf.ffffffffffff8p-4L : -0x1.921fb50442d18469898c9a6c570dp+0L : inexact-ok = asin upward ldbl-128 -0xf.ffffffffffff8p-4L : -0x1.921fb50442d18469898c9a6c570dp+0L : inexact-ok = asin downward ldbl-128ibm -0xf.ffffffffffff8p-4L : -0x1.921fb50442d18469898c9a6c578p+0L : inexact-ok @@ -2013,7 +2013,7 @@ asin -0x0.ffffffffffffffffp0 = asin towardzero ldbl-96-m68k -0xf.fffffffffffffffp-4L : -0x1.921fb542d8c79ep+0L : inexact-ok = asin upward ldbl-96-m68k -0xf.fffffffffffffffp-4L : -0x1.921fb542d8c79ep+0L : inexact-ok = asin downward ldbl-128 -0xf.fffffffffffffffp-4L : -0x1.921fb542d8c79e0195cffc0e3092p+0L : inexact-ok -= asin tonearest ldbl-128 -0xf.fffffffffffffffp-4L : -0x1.921fb542d8c79e0195cffc0e3091p+0L : inexact-ok += asin tonearest ldbl-128 -0xf.fffffffffffffffp-4L : -0x1.921fb542d8c79e0195cffc0e3092p+0L : inexact-ok = asin towardzero ldbl-128 -0xf.fffffffffffffffp-4L : -0x1.921fb542d8c79e0195cffc0e3091p+0L : inexact-ok = asin upward ldbl-128 -0xf.fffffffffffffffp-4L : -0x1.921fb542d8c79e0195cffc0e3091p+0L : inexact-ok = asin downward ldbl-128ibm -0xf.fffffffffffffffp-4L : -0x1.921fb542d8c79e0195cffc0e31p+0L : inexact-ok @@ -2109,95 +2109,95 @@ asin min missing-underflow = asin tonearest ldbl-128ibm 0x8p-972L : 0x8p-972L : inexact-ok = asin towardzero ldbl-128ibm 0x8p-972L : 0x8p-972L : inexact-ok = asin upward ldbl-128ibm 0x8p-972L : 0x8.00000000000000000000000004p-972L : inexact-ok -asin -min missing-underflow -= asin downward flt-32 -0x4p-128f : -0x4p-128f : inexact-ok underflow-ok errno-erange-ok -= asin tonearest flt-32 -0x4p-128f : -0x4p-128f : inexact-ok underflow-ok errno-erange-ok -= asin towardzero flt-32 -0x4p-128f : -0x3.fffff8p-128f : inexact-ok underflow-ok errno-erange-ok -= asin upward flt-32 -0x4p-128f : -0x3.fffff8p-128f : inexact-ok underflow-ok errno-erange-ok -= asin downward dbl-64 -0x4p-128 : -0x4p-128 : inexact-ok -= asin tonearest dbl-64 -0x4p-128 : -0x4p-128 : inexact-ok -= asin towardzero dbl-64 -0x4p-128 : -0x3.ffffffffffffep-128 : inexact-ok -= asin upward dbl-64 -0x4p-128 : -0x3.ffffffffffffep-128 : inexact-ok -= asin downward ldbl-96-intel -0x4p-128L : -0x4p-128L : inexact-ok -= asin tonearest ldbl-96-intel -0x4p-128L : -0x4p-128L : inexact-ok -= asin towardzero ldbl-96-intel -0x4p-128L : -0x3.fffffffffffffffcp-128L : inexact-ok -= asin upward ldbl-96-intel -0x4p-128L : -0x3.fffffffffffffffcp-128L : inexact-ok -= asin downward ldbl-96-m68k -0x4p-128L : -0x4p-128L : inexact-ok -= asin tonearest ldbl-96-m68k -0x4p-128L : -0x4p-128L : inexact-ok -= asin towardzero ldbl-96-m68k -0x4p-128L : -0x3.fffffffffffffffcp-128L : inexact-ok -= asin upward ldbl-96-m68k -0x4p-128L : -0x3.fffffffffffffffcp-128L : inexact-ok -= asin downward ldbl-128 -0x4p-128L : -0x4p-128L : inexact-ok -= asin tonearest ldbl-128 -0x4p-128L : -0x4p-128L : inexact-ok -= asin towardzero ldbl-128 -0x4p-128L : -0x3.fffffffffffffffffffffffffffep-128L : inexact-ok -= asin upward ldbl-128 -0x4p-128L : -0x3.fffffffffffffffffffffffffffep-128L : inexact-ok -= asin downward ldbl-128ibm -0x4p-128L : -0x4p-128L : inexact-ok -= asin tonearest ldbl-128ibm -0x4p-128L : -0x4p-128L : inexact-ok -= asin towardzero ldbl-128ibm -0x4p-128L : -0x3.ffffffffffffffffffffffffffp-128L : inexact-ok -= asin upward ldbl-128ibm -0x4p-128L : -0x3.ffffffffffffffffffffffffffp-128L : inexact-ok -= asin downward dbl-64 -0x4p-1024 : -0x4p-1024 : inexact-ok underflow-ok errno-erange-ok -= asin tonearest dbl-64 -0x4p-1024 : -0x4p-1024 : inexact-ok underflow-ok errno-erange-ok -= asin towardzero dbl-64 -0x4p-1024 : -0x3.ffffffffffffcp-1024 : inexact-ok underflow-ok errno-erange-ok -= asin upward dbl-64 -0x4p-1024 : -0x3.ffffffffffffcp-1024 : inexact-ok underflow-ok errno-erange-ok -= asin downward ldbl-96-intel -0x4p-1024L : -0x4p-1024L : inexact-ok -= asin tonearest ldbl-96-intel -0x4p-1024L : -0x4p-1024L : inexact-ok -= asin towardzero ldbl-96-intel -0x4p-1024L : -0x3.fffffffffffffffcp-1024L : inexact-ok -= asin upward ldbl-96-intel -0x4p-1024L : -0x3.fffffffffffffffcp-1024L : inexact-ok -= asin downward ldbl-96-m68k -0x4p-1024L : -0x4p-1024L : inexact-ok -= asin tonearest ldbl-96-m68k -0x4p-1024L : -0x4p-1024L : inexact-ok -= asin towardzero ldbl-96-m68k -0x4p-1024L : -0x3.fffffffffffffffcp-1024L : inexact-ok -= asin upward ldbl-96-m68k -0x4p-1024L : -0x3.fffffffffffffffcp-1024L : inexact-ok -= asin downward ldbl-128 -0x4p-1024L : -0x4p-1024L : inexact-ok -= asin tonearest ldbl-128 -0x4p-1024L : -0x4p-1024L : inexact-ok -= asin towardzero ldbl-128 -0x4p-1024L : -0x3.fffffffffffffffffffffffffffep-1024L : inexact-ok -= asin upward ldbl-128 -0x4p-1024L : -0x3.fffffffffffffffffffffffffffep-1024L : inexact-ok -= asin downward ldbl-128ibm -0x4p-1024L : -0x4p-1024L : inexact-ok underflow underflow-ok errno-erange-ok +asin -min missing-underflow spurious-underflow:dbl-64:x86 += asin downward flt-32 -0x4p-128f : -0x4.000008p-128f : inexact-ok underflow-ok:dbl-64:x86 += asin tonearest flt-32 -0x4p-128f : -0x4p-128f : inexact-ok underflow-ok:dbl-64:x86 += asin towardzero flt-32 -0x4p-128f : -0x4p-128f : inexact-ok underflow-ok:dbl-64:x86 += asin upward flt-32 -0x4p-128f : -0x4p-128f : inexact-ok underflow-ok:dbl-64:x86 += asin downward dbl-64 -0x4p-128 : -0x4.0000000000004p-128 : inexact-ok underflow-ok:dbl-64:x86 += asin tonearest dbl-64 -0x4p-128 : -0x4p-128 : inexact-ok underflow-ok:dbl-64:x86 += asin towardzero dbl-64 -0x4p-128 : -0x4p-128 : inexact-ok underflow-ok:dbl-64:x86 += asin upward dbl-64 -0x4p-128 : -0x4p-128 : inexact-ok underflow-ok:dbl-64:x86 += asin downward ldbl-96-intel -0x4p-128L : -0x4.0000000000000008p-128L : inexact-ok underflow-ok:dbl-64:x86 += asin tonearest ldbl-96-intel -0x4p-128L : -0x4p-128L : inexact-ok underflow-ok:dbl-64:x86 += asin towardzero ldbl-96-intel -0x4p-128L : -0x4p-128L : inexact-ok underflow-ok:dbl-64:x86 += asin upward ldbl-96-intel -0x4p-128L : -0x4p-128L : inexact-ok underflow-ok:dbl-64:x86 += asin downward ldbl-96-m68k -0x4p-128L : -0x4.0000000000000008p-128L : inexact-ok underflow-ok:dbl-64:x86 += asin tonearest ldbl-96-m68k -0x4p-128L : -0x4p-128L : inexact-ok underflow-ok:dbl-64:x86 += asin towardzero ldbl-96-m68k -0x4p-128L : -0x4p-128L : inexact-ok underflow-ok:dbl-64:x86 += asin upward ldbl-96-m68k -0x4p-128L : -0x4p-128L : inexact-ok underflow-ok:dbl-64:x86 += asin downward ldbl-128 -0x4p-128L : -0x4.0000000000000000000000000004p-128L : inexact-ok underflow-ok:dbl-64:x86 += asin tonearest ldbl-128 -0x4p-128L : -0x4p-128L : inexact-ok underflow-ok:dbl-64:x86 += asin towardzero ldbl-128 -0x4p-128L : -0x4p-128L : inexact-ok underflow-ok:dbl-64:x86 += asin upward ldbl-128 -0x4p-128L : -0x4p-128L : inexact-ok underflow-ok:dbl-64:x86 += asin downward ldbl-128ibm -0x4p-128L : -0x4.00000000000000000000000002p-128L : inexact-ok underflow-ok:dbl-64:x86 += asin tonearest ldbl-128ibm -0x4p-128L : -0x4p-128L : inexact-ok underflow-ok:dbl-64:x86 += asin towardzero ldbl-128ibm -0x4p-128L : -0x4p-128L : inexact-ok underflow-ok:dbl-64:x86 += asin upward ldbl-128ibm -0x4p-128L : -0x4p-128L : inexact-ok underflow-ok:dbl-64:x86 += asin downward dbl-64 -0x4p-1024 : -0x4.0000000000004p-1024 : inexact-ok underflow-ok:dbl-64:x86 += asin tonearest dbl-64 -0x4p-1024 : -0x4p-1024 : inexact-ok underflow-ok:dbl-64:x86 += asin towardzero dbl-64 -0x4p-1024 : -0x4p-1024 : inexact-ok underflow-ok:dbl-64:x86 += asin upward dbl-64 -0x4p-1024 : -0x4p-1024 : inexact-ok underflow-ok:dbl-64:x86 += asin downward ldbl-96-intel -0x4p-1024L : -0x4.0000000000000008p-1024L : inexact-ok underflow-ok:dbl-64:x86 += asin tonearest ldbl-96-intel -0x4p-1024L : -0x4p-1024L : inexact-ok underflow-ok:dbl-64:x86 += asin towardzero ldbl-96-intel -0x4p-1024L : -0x4p-1024L : inexact-ok underflow-ok:dbl-64:x86 += asin upward ldbl-96-intel -0x4p-1024L : -0x4p-1024L : inexact-ok underflow-ok:dbl-64:x86 += asin downward ldbl-96-m68k -0x4p-1024L : -0x4.0000000000000008p-1024L : inexact-ok underflow-ok:dbl-64:x86 += asin tonearest ldbl-96-m68k -0x4p-1024L : -0x4p-1024L : inexact-ok underflow-ok:dbl-64:x86 += asin towardzero ldbl-96-m68k -0x4p-1024L : -0x4p-1024L : inexact-ok underflow-ok:dbl-64:x86 += asin upward ldbl-96-m68k -0x4p-1024L : -0x4p-1024L : inexact-ok underflow-ok:dbl-64:x86 += asin downward ldbl-128 -0x4p-1024L : -0x4.0000000000000000000000000004p-1024L : inexact-ok underflow-ok:dbl-64:x86 += asin tonearest ldbl-128 -0x4p-1024L : -0x4p-1024L : inexact-ok underflow-ok:dbl-64:x86 += asin towardzero ldbl-128 -0x4p-1024L : -0x4p-1024L : inexact-ok underflow-ok:dbl-64:x86 += asin upward ldbl-128 -0x4p-1024L : -0x4p-1024L : inexact-ok underflow-ok:dbl-64:x86 += asin downward ldbl-128ibm -0x4p-1024L : -0x4.0000000000004p-1024L : inexact-ok underflow underflow-ok errno-erange-ok = asin tonearest ldbl-128ibm -0x4p-1024L : -0x4p-1024L : inexact-ok underflow underflow-ok errno-erange-ok -= asin towardzero ldbl-128ibm -0x4p-1024L : -0x3.ffffffffffffcp-1024L : inexact-ok underflow underflow-ok errno-erange-ok -= asin upward ldbl-128ibm -0x4p-1024L : -0x3.ffffffffffffcp-1024L : inexact-ok underflow underflow-ok errno-erange-ok -= asin downward ldbl-96-intel -0x4p-16384L : -0x4p-16384L : inexact-ok underflow-ok errno-erange-ok -= asin tonearest ldbl-96-intel -0x4p-16384L : -0x4p-16384L : inexact-ok underflow-ok errno-erange-ok -= asin towardzero ldbl-96-intel -0x4p-16384L : -0x3.fffffffffffffff8p-16384L : inexact-ok underflow-ok errno-erange-ok -= asin upward ldbl-96-intel -0x4p-16384L : -0x3.fffffffffffffff8p-16384L : inexact-ok underflow-ok errno-erange-ok -= asin downward ldbl-96-m68k -0x4p-16384L : -0x4p-16384L : inexact-ok -= asin tonearest ldbl-96-m68k -0x4p-16384L : -0x4p-16384L : inexact-ok -= asin towardzero ldbl-96-m68k -0x4p-16384L : -0x3.fffffffffffffffcp-16384L : inexact-ok -= asin upward ldbl-96-m68k -0x4p-16384L : -0x3.fffffffffffffffcp-16384L : inexact-ok -= asin downward ldbl-128 -0x4p-16384L : -0x4p-16384L : inexact-ok underflow-ok errno-erange-ok -= asin tonearest ldbl-128 -0x4p-16384L : -0x4p-16384L : inexact-ok underflow-ok errno-erange-ok -= asin towardzero ldbl-128 -0x4p-16384L : -0x3.fffffffffffffffffffffffffffcp-16384L : inexact-ok underflow-ok errno-erange-ok -= asin upward ldbl-128 -0x4p-16384L : -0x3.fffffffffffffffffffffffffffcp-16384L : inexact-ok underflow-ok errno-erange-ok -= asin downward ldbl-96-intel -0x2p-16384L : -0x2p-16384L : inexact-ok underflow underflow-ok errno-erange-ok += asin towardzero ldbl-128ibm -0x4p-1024L : -0x4p-1024L : inexact-ok underflow underflow-ok errno-erange-ok += asin upward ldbl-128ibm -0x4p-1024L : -0x4p-1024L : inexact-ok underflow underflow-ok errno-erange-ok += asin downward ldbl-96-intel -0x4p-16384L : -0x4.0000000000000008p-16384L : inexact-ok underflow-ok:dbl-64:x86 += asin tonearest ldbl-96-intel -0x4p-16384L : -0x4p-16384L : inexact-ok underflow-ok:dbl-64:x86 += asin towardzero ldbl-96-intel -0x4p-16384L : -0x4p-16384L : inexact-ok underflow-ok:dbl-64:x86 += asin upward ldbl-96-intel -0x4p-16384L : -0x4p-16384L : inexact-ok underflow-ok:dbl-64:x86 += asin downward ldbl-96-m68k -0x4p-16384L : -0x4.0000000000000008p-16384L : inexact-ok underflow-ok:dbl-64:x86 += asin tonearest ldbl-96-m68k -0x4p-16384L : -0x4p-16384L : inexact-ok underflow-ok:dbl-64:x86 += asin towardzero ldbl-96-m68k -0x4p-16384L : -0x4p-16384L : inexact-ok underflow-ok:dbl-64:x86 += asin upward ldbl-96-m68k -0x4p-16384L : -0x4p-16384L : inexact-ok underflow-ok:dbl-64:x86 += asin downward ldbl-128 -0x4p-16384L : -0x4.0000000000000000000000000004p-16384L : inexact-ok underflow-ok:dbl-64:x86 += asin tonearest ldbl-128 -0x4p-16384L : -0x4p-16384L : inexact-ok underflow-ok:dbl-64:x86 += asin towardzero ldbl-128 -0x4p-16384L : -0x4p-16384L : inexact-ok underflow-ok:dbl-64:x86 += asin upward ldbl-128 -0x4p-16384L : -0x4p-16384L : inexact-ok underflow-ok:dbl-64:x86 += asin downward ldbl-96-intel -0x2p-16384L : -0x2.0000000000000008p-16384L : inexact-ok underflow underflow-ok errno-erange-ok = asin tonearest ldbl-96-intel -0x2p-16384L : -0x2p-16384L : inexact-ok underflow underflow-ok errno-erange-ok -= asin towardzero ldbl-96-intel -0x2p-16384L : -0x1.fffffffffffffff8p-16384L : inexact-ok underflow underflow-ok errno-erange-ok -= asin upward ldbl-96-intel -0x2p-16384L : -0x1.fffffffffffffff8p-16384L : inexact-ok underflow underflow-ok errno-erange-ok -= asin downward ldbl-96-m68k -0x2p-16384L : -0x2p-16384L : inexact-ok underflow-ok errno-erange-ok -= asin tonearest ldbl-96-m68k -0x2p-16384L : -0x2p-16384L : inexact-ok underflow-ok errno-erange-ok -= asin towardzero ldbl-96-m68k -0x2p-16384L : -0x1.fffffffffffffffcp-16384L : inexact-ok underflow-ok errno-erange-ok -= asin upward ldbl-96-m68k -0x2p-16384L : -0x1.fffffffffffffffcp-16384L : inexact-ok underflow-ok errno-erange-ok -= asin downward ldbl-128 -0x2p-16384L : -0x2p-16384L : inexact-ok underflow underflow-ok errno-erange-ok += asin towardzero ldbl-96-intel -0x2p-16384L : -0x2p-16384L : inexact-ok underflow underflow-ok errno-erange-ok += asin upward ldbl-96-intel -0x2p-16384L : -0x2p-16384L : inexact-ok underflow underflow-ok errno-erange-ok += asin downward ldbl-96-m68k -0x2p-16384L : -0x2.0000000000000004p-16384L : inexact-ok underflow-ok:dbl-64:x86 += asin tonearest ldbl-96-m68k -0x2p-16384L : -0x2p-16384L : inexact-ok underflow-ok:dbl-64:x86 += asin towardzero ldbl-96-m68k -0x2p-16384L : -0x2p-16384L : inexact-ok underflow-ok:dbl-64:x86 += asin upward ldbl-96-m68k -0x2p-16384L : -0x2p-16384L : inexact-ok underflow-ok:dbl-64:x86 += asin downward ldbl-128 -0x2p-16384L : -0x2.0000000000000000000000000004p-16384L : inexact-ok underflow underflow-ok errno-erange-ok = asin tonearest ldbl-128 -0x2p-16384L : -0x2p-16384L : inexact-ok underflow underflow-ok errno-erange-ok -= asin towardzero ldbl-128 -0x2p-16384L : -0x1.fffffffffffffffffffffffffffcp-16384L : inexact-ok underflow underflow-ok errno-erange-ok -= asin upward ldbl-128 -0x2p-16384L : -0x1.fffffffffffffffffffffffffffcp-16384L : inexact-ok underflow underflow-ok errno-erange-ok -= asin downward dbl-64 -0x8p-972 : -0x8p-972 : inexact-ok -= asin tonearest dbl-64 -0x8p-972 : -0x8p-972 : inexact-ok -= asin towardzero dbl-64 -0x8p-972 : -0x7.ffffffffffffcp-972 : inexact-ok -= asin upward dbl-64 -0x8p-972 : -0x7.ffffffffffffcp-972 : inexact-ok -= asin downward ldbl-96-intel -0x8p-972L : -0x8p-972L : inexact-ok -= asin tonearest ldbl-96-intel -0x8p-972L : -0x8p-972L : inexact-ok -= asin towardzero ldbl-96-intel -0x8p-972L : -0x7.fffffffffffffff8p-972L : inexact-ok -= asin upward ldbl-96-intel -0x8p-972L : -0x7.fffffffffffffff8p-972L : inexact-ok -= asin downward ldbl-96-m68k -0x8p-972L : -0x8p-972L : inexact-ok -= asin tonearest ldbl-96-m68k -0x8p-972L : -0x8p-972L : inexact-ok -= asin towardzero ldbl-96-m68k -0x8p-972L : -0x7.fffffffffffffff8p-972L : inexact-ok -= asin upward ldbl-96-m68k -0x8p-972L : -0x7.fffffffffffffff8p-972L : inexact-ok -= asin downward ldbl-128 -0x8p-972L : -0x8p-972L : inexact-ok -= asin tonearest ldbl-128 -0x8p-972L : -0x8p-972L : inexact-ok -= asin towardzero ldbl-128 -0x8p-972L : -0x7.fffffffffffffffffffffffffffcp-972L : inexact-ok -= asin upward ldbl-128 -0x8p-972L : -0x7.fffffffffffffffffffffffffffcp-972L : inexact-ok -= asin downward ldbl-128ibm -0x8p-972L : -0x8p-972L : inexact-ok underflow-ok errno-erange-ok -= asin tonearest ldbl-128ibm -0x8p-972L : -0x8p-972L : inexact-ok underflow-ok errno-erange-ok -= asin towardzero ldbl-128ibm -0x8p-972L : -0x7.fffffffffffffffffffffffffcp-972L : inexact-ok underflow-ok errno-erange-ok -= asin upward ldbl-128ibm -0x8p-972L : -0x7.fffffffffffffffffffffffffcp-972L : inexact-ok underflow-ok errno-erange-ok += asin towardzero ldbl-128 -0x2p-16384L : -0x2p-16384L : inexact-ok underflow underflow-ok errno-erange-ok += asin upward ldbl-128 -0x2p-16384L : -0x2p-16384L : inexact-ok underflow underflow-ok errno-erange-ok += asin downward dbl-64 -0x8p-972 : -0x8.0000000000008p-972 : inexact-ok underflow-ok:dbl-64:x86 += asin tonearest dbl-64 -0x8p-972 : -0x8p-972 : inexact-ok underflow-ok:dbl-64:x86 += asin towardzero dbl-64 -0x8p-972 : -0x8p-972 : inexact-ok underflow-ok:dbl-64:x86 += asin upward dbl-64 -0x8p-972 : -0x8p-972 : inexact-ok underflow-ok:dbl-64:x86 += asin downward ldbl-96-intel -0x8p-972L : -0x8.000000000000001p-972L : inexact-ok underflow-ok:dbl-64:x86 += asin tonearest ldbl-96-intel -0x8p-972L : -0x8p-972L : inexact-ok underflow-ok:dbl-64:x86 += asin towardzero ldbl-96-intel -0x8p-972L : -0x8p-972L : inexact-ok underflow-ok:dbl-64:x86 += asin upward ldbl-96-intel -0x8p-972L : -0x8p-972L : inexact-ok underflow-ok:dbl-64:x86 += asin downward ldbl-96-m68k -0x8p-972L : -0x8.000000000000001p-972L : inexact-ok underflow-ok:dbl-64:x86 += asin tonearest ldbl-96-m68k -0x8p-972L : -0x8p-972L : inexact-ok underflow-ok:dbl-64:x86 += asin towardzero ldbl-96-m68k -0x8p-972L : -0x8p-972L : inexact-ok underflow-ok:dbl-64:x86 += asin upward ldbl-96-m68k -0x8p-972L : -0x8p-972L : inexact-ok underflow-ok:dbl-64:x86 += asin downward ldbl-128 -0x8p-972L : -0x8.0000000000000000000000000008p-972L : inexact-ok underflow-ok:dbl-64:x86 += asin tonearest ldbl-128 -0x8p-972L : -0x8p-972L : inexact-ok underflow-ok:dbl-64:x86 += asin towardzero ldbl-128 -0x8p-972L : -0x8p-972L : inexact-ok underflow-ok:dbl-64:x86 += asin upward ldbl-128 -0x8p-972L : -0x8p-972L : inexact-ok underflow-ok:dbl-64:x86 += asin downward ldbl-128ibm -0x8p-972L : -0x8.00000000000000000000000004p-972L : inexact-ok underflow-ok:dbl-64:x86 += asin tonearest ldbl-128ibm -0x8p-972L : -0x8p-972L : inexact-ok underflow-ok:dbl-64:x86 += asin towardzero ldbl-128ibm -0x8p-972L : -0x8p-972L : inexact-ok underflow-ok:dbl-64:x86 += asin upward ldbl-128ibm -0x8p-972L : -0x8p-972L : inexact-ok underflow-ok:dbl-64:x86 asin min_subnorm missing-underflow = asin downward flt-32 0x8p-152f : 0x8p-152f : inexact-ok underflow underflow-ok errno-erange-ok = asin tonearest flt-32 0x8p-152f : 0x8p-152f : inexact-ok underflow underflow-ok errno-erange-ok @@ -2268,74 +2268,74 @@ asin min_subnorm missing-underflow = asin towardzero ldbl-128 0x4p-16496L : 0x4p-16496L : inexact-ok underflow underflow-ok errno-erange-ok = asin upward ldbl-128 0x4p-16496L : 0x8p-16496L : inexact-ok underflow underflow-ok errno-erange-ok asin -min_subnorm missing-underflow -= asin downward flt-32 -0x8p-152f : -0x8p-152f : inexact-ok underflow underflow-ok errno-erange-ok += asin downward flt-32 -0x8p-152f : -0x1p-148f : inexact-ok underflow underflow-ok errno-erange-ok = asin tonearest flt-32 -0x8p-152f : -0x8p-152f : inexact-ok underflow underflow-ok errno-erange-ok |
