about summary refs log tree commit diff
diff options
context:
space:
mode:
authorPaul Zimmermann <Paul.Zimmermann@inria.fr>2021-02-26 08:00:03 +0100
committerPaul Zimmermann <Paul.Zimmermann@inria.fr>2021-02-27 06:32:11 +0100
commit5a051454a9b50c27984bbc499ee1297de48e2dc8 (patch)
treeb4aef0c5c1f679a78548fd4bf48afbda560ab545
parent035c012e32c11e84d64905efaf55e74f704d3668 (diff)
downloadglibc-5a051454a9b50c27984bbc499ee1297de48e2dc8.tar.gz
glibc-5a051454a9b50c27984bbc499ee1297de48e2dc8.tar.xz
glibc-5a051454a9b50c27984bbc499ee1297de48e2dc8.zip
Add inputs that generate larger error bounds
(Using values from https://members.loria.fr/PZimmermann/papers/accuracy.pdf)
-rw-r--r--math/auto-libm-test-in48
-rw-r--r--math/auto-libm-test-out-acos174
-rw-r--r--math/auto-libm-test-out-acosh246
-rw-r--r--math/auto-libm-test-out-asin69
-rw-r--r--math/auto-libm-test-out-asinh141
-rw-r--r--math/auto-libm-test-out-atan25
-rw-r--r--math/auto-libm-test-out-atan2458
-rw-r--r--math/auto-libm-test-out-atanh141
-rw-r--r--math/auto-libm-test-out-cos141
-rw-r--r--math/auto-libm-test-out-cosh246
-rw-r--r--math/auto-libm-test-out-erfc246
-rw-r--r--math/auto-libm-test-out-expm1246
-rw-r--r--math/auto-libm-test-out-log10141
-rw-r--r--math/auto-libm-test-out-log1p141
-rw-r--r--math/auto-libm-test-out-log2141
-rw-r--r--math/auto-libm-test-out-sin246
-rw-r--r--math/auto-libm-test-out-sinh105
-rw-r--r--math/auto-libm-test-out-tanh105
-rw-r--r--sysdeps/x86_64/fpu/libm-test-ulps50
19 files changed, 3086 insertions, 24 deletions
diff --git a/math/auto-libm-test-in b/math/auto-libm-test-in
index 73840b8bef..4edaaa8ee1 100644
--- a/math/auto-libm-test-in
+++ b/math/auto-libm-test-in
@@ -79,6 +79,10 @@ acos 0xe.17513589de79b75p-4
 acos 0x3.e57821d368ebap-4
 acos 0x2.0bee8p-4
 acos -0x1.da00d8p-4
+# the next value generates larger error bounds on x86_64 (binary64)
+acos 0x1.fffff3634acd6p-1
+# the next value generates larger error bounds on x86_64 (ldbl-96)
+acos 0xf.fe00271d507ee5dp-4
 acos min
 acos -min
 acos min_subnorm
@@ -140,6 +144,10 @@ acosh 0x1.1b836p+0
 acosh 0x1.07c956p+0
 acosh 0x1.1808eep+0
 acosh 0x1.1052c4p+0
+# the next value generates larger error bounds on x86_64 (ldbl-96)
+acosh 0x1.1ecbdf374bce01cap+0
+# the next value generates larger error bounds on x86_64 (binary128)
+acosh 0x1.0f97586eba090200118df0902f99p+0
 acosh max
 
 add 0 0
@@ -282,6 +290,8 @@ asin 0xd.805e5p-4
 asin -0x2.1a02dcp-4
 asin -0x8.1c120ac3e495p-4
 asin -0xb.36dacp-4
+# the next value generates larger error bounds on x86_64 (binary64)
+asin 0x1.f6041ffe89d7dp-4
 asin min
 asin -min
 asin min_subnorm
@@ -375,6 +385,8 @@ asinh 0x1p-5000
 asinh 0xf.96c69p-8
 # the next value generates larger error bounds on x86_64 (binary64)
 asinh 0x1.023cfeab10a13p-2
+# the next value generates larger error bounds on x86_64 (binary128)
+asinh -0x5.a95683e302a71be88a35649b24ep-4
 asinh min
 asinh -min
 asinh min_subnorm
@@ -416,6 +428,8 @@ atan -0x1.ad4c0ap+0
 atan -0x3.eb8e18p+0
 atan 0x3.53c188p+0
 atan -0x1.58c83p+0
+# the next value generates larger error bounds on x86_64 (binary32)
+atan 0x1.626772p-1
 atan min
 atan -min
 atan min_subnorm
@@ -472,6 +486,10 @@ atan2 -0x6.b0794p-4 0x3.8ff10cp+0
 atan2 -0x7.15e7af0a1780cp-724 0xf.fffffp+124
 atan2 0x3.f16f1p+0 -0x1.546056p+0
 atan2 -0x1.9e657cp-24 0x7.40bb4p-52
+# the next value generates larger error bounds on x86_64 (binary32)
+atan2 -0x1.f9cf48p+49 0x1.f60598p+51
+# the next value generates larger error bounds on x86_64 (binary128)
+atan2 0x1.41df5aa214612c7e019fa6ade88p-13316 0x5.e53b26a270a29eb9f77ef8ef7af8p-13316
 atan2 min min
 atan2 min -min
 atan2 -min min
@@ -591,6 +609,8 @@ atanh -0x3.98eaf4p-4
 atanh 0x2.c1085p-4
 atanh 0x1p-500
 atanh 0x1p-5000
+# the next value generates larger error bounds on x86_64 (binary128)
+atanh 0x2.c02a24f3472c7840afbd8cfb68bap-4
 atanh min
 atanh -min
 atanh min_subnorm
@@ -4429,6 +4449,8 @@ cos 1.57079697
 cos -1.57079697
 # the next value generates larger error bounds on x86_64 (binary32)
 cos 0x2.3c6ef4p-12
+# the next value generates larger error bounds on x86_64 (binary128)
+cos 0xe.6672d458b05edf50af4fab1a42p+40
 
 cosh 0
 cosh -0
@@ -4494,6 +4516,10 @@ cosh -0x2.c5d37700c6bb03a6c24b6c9b494ep+12
 cosh 0x5.8bfe6p+4
 # the next value generates larger error bounds on x86_64 (binary64)
 cosh 0x1.633c457f1e66bp+9
+# the next value generates larger error bounds on x86_64 (ldbl-96)
+cosh 0x2.c5d376167f4052f4p+12
+# the next value generates larger error bounds on x86_64 (binary128)
+cosh -0x2.c5d376eefcd4bbeb000452d84662p+12
 
 cpow 1 0 0 0 ignore-zero-inf-sign
 cpow 2 0 10 0 ignore-zero-inf-sign
@@ -4996,6 +5022,10 @@ erfc 0x6.a893032db905274042fb05c665dcp+4
 erfc 0x6.a893032db905274042fb05c665ep+4
 # the next value generates larger error bounds on x86_64 (binary32)
 erfc 0xd.03d06p-4
+# the next value generates larger error bounds on x86_64 (ldbl-96)
+erfc 0x1.5cf2167efe9207d2p+0
+# the next value generates larger error bounds on x86_64 (binary128)
+erfc 0x1.5166e0efc44a9dfc79b8c8873a99p+0
 erfc min
 erfc -min
 erfc min_subnorm
@@ -5374,6 +5404,10 @@ expm1 -0x7.d6c50b469d404p+0
 expm1 0x4.857de8p+4
 expm1 0x5.dfeb68p-4
 expm1 0x4.0000000000000028p-16384
+# the next value generates larger error bounds on x86_64 (ldbl-96)
+expm1 0x5.8b911eb6733469c8p-4
+# the next value generates larger error bounds on x86_64 (binary128)
+expm1 0x5.a343df0d680099a7a1a873a751a8p-4
 expm1 min
 expm1 -min
 expm1 min_subnorm
@@ -6454,6 +6488,8 @@ log10 0x0.fffffffffffff8p0
 log10 0x0.ffffffffffffffffp0
 log10 0x0.ffffffffffffffffffffffffffcp0
 log10 0x0.ffffffffffffffffffffffffffff8p0
+# the next value generates larger error bounds on x86_64 (binary128)
+log10 0x1.6a291ea0aa11fb374f1df8b3ac6bp+0
 log10 min
 log10 min_subnorm
 log10 max
@@ -6498,6 +6534,8 @@ log1p 0x1p50
 log1p 0x1p60
 log1p 0x1p100
 log1p 0x1p1000
+# the next value generates larger error bounds on x86_64 (binary128)
+log1p 0x6.a0cf42befce9ed4085ef59254b48p-4
 log1p max
 
 log1p 0x7.2a4368p-4
@@ -6547,6 +6585,8 @@ log2 0xb.e132ap-4
 log2 0xb.5bf82dc51f02035p-4
 log2 0xb.7704dc9beb05p-4
 log2 0xb.56f63c18e93eecdp-4
+# the next value generates larger error bounds on x86_64 (binary128)
+log2 0xb.54170d5cfa8fd72a47d6bda19068p-4
 log2 min
 log2 min_subnorm
 log2 max
@@ -7239,6 +7279,10 @@ sin 0xf.f0274p+4
 sin 0x3.042d88p+0
 # the next value generates larger error bounds on x86_64 (binary32)
 sin 0x1.d12ed2p-12
+# the next value generates larger error bounds on x86_64 (ldbl-96)
+sin -0x6.e2368c006c018228p+16
+# the next value generates larger error bounds on x86_64 (binary128)
+sin 0x5.6a5005df4363833413fa44f74ae8p+64
 sin max
 sin -max
 sin min
@@ -7335,6 +7379,8 @@ sinh -0x1.3dda8ap+0
 sinh -0x5.ee9218p-4
 sinh -0x1.bcfc98p+0
 sinh -0x6.9bbb6df7c5d08p-4
+# the next value generates larger error bounds on x86_64 (ldbl-96)
+sinh 0x2.c5d376167f4052f4p+12
 sinh max
 sinh -max
 sinh min
@@ -7687,6 +7733,8 @@ tanh 0x1p-60
 tanh 0x1p-100
 tanh 0x1p-600
 tanh 0x1p-10000
+# the next value generates larger error bounds on x86_64 (ldbl-96)
+tanh 0x3.b9979a543d0fbfa8p-4
 tanh max
 tanh -max
 tanh min
diff --git a/math/auto-libm-test-out-acos b/math/auto-libm-test-out-acos
index 04bd77bf43..c98ca8728a 100644
--- a/math/auto-libm-test-out-acos
+++ b/math/auto-libm-test-out-acos
@@ -2649,6 +2649,180 @@ acos -0x1.da00d8p-4
 = acos tonearest ibm128 -0x1.da00d8p-4 : 0x1.afd0ca8858c9ea46ebc1be7c98p+0 : inexact-ok
 = acos towardzero ibm128 -0x1.da00d8p-4 : 0x1.afd0ca8858c9ea46ebc1be7c978p+0 : inexact-ok
 = acos upward ibm128 -0x1.da00d8p-4 : 0x1.afd0ca8858c9ea46ebc1be7c98p+0 : inexact-ok
+acos 0x1.fffff3634acd6p-1
+= acos downward binary32 0xf.ffffap-4 : 0x3.76cf5cp-12 : inexact-ok
+= acos tonearest binary32 0xf.ffffap-4 : 0x3.76cf6p-12 : inexact-ok
+= acos towardzero binary32 0xf.ffffap-4 : 0x3.76cf5cp-12 : inexact-ok
+= acos upward binary32 0xf.ffffap-4 : 0x3.76cf6p-12 : inexact-ok
+= acos downward binary64 0xf.ffffap-4 : 0x3.76cf5ec671462p-12 : inexact-ok
+= acos tonearest binary64 0xf.ffffap-4 : 0x3.76cf5ec671462p-12 : inexact-ok
+= acos towardzero binary64 0xf.ffffap-4 : 0x3.76cf5ec671462p-12 : inexact-ok
+= acos upward binary64 0xf.ffffap-4 : 0x3.76cf5ec671464p-12 : inexact-ok
+= acos downward intel96 0xf.ffffap-4 : 0x3.76cf5ec671462a9p-12 : inexact-ok
+= acos tonearest intel96 0xf.ffffap-4 : 0x3.76cf5ec671462a94p-12 : inexact-ok
+= acos towardzero intel96 0xf.ffffap-4 : 0x3.76cf5ec671462a9p-12 : inexact-ok
+= acos upward intel96 0xf.ffffap-4 : 0x3.76cf5ec671462a94p-12 : inexact-ok
+= acos downward m68k96 0xf.ffffap-4 : 0x3.76cf5ec671462a9p-12 : inexact-ok
+= acos tonearest m68k96 0xf.ffffap-4 : 0x3.76cf5ec671462a94p-12 : inexact-ok
+= acos towardzero m68k96 0xf.ffffap-4 : 0x3.76cf5ec671462a9p-12 : inexact-ok
+= acos upward m68k96 0xf.ffffap-4 : 0x3.76cf5ec671462a94p-12 : inexact-ok
+= acos downward binary128 0xf.ffffap-4 : 0x3.76cf5ec671462a93def0c25c151ep-12 : inexact-ok
+= acos tonearest binary128 0xf.ffffap-4 : 0x3.76cf5ec671462a93def0c25c152p-12 : inexact-ok
+= acos towardzero binary128 0xf.ffffap-4 : 0x3.76cf5ec671462a93def0c25c151ep-12 : inexact-ok
+= acos upward binary128 0xf.ffffap-4 : 0x3.76cf5ec671462a93def0c25c152p-12 : inexact-ok
+= acos downward ibm128 0xf.ffffap-4 : 0x3.76cf5ec671462a93def0c25c15p-12 : inexact-ok
+= acos tonearest ibm128 0xf.ffffap-4 : 0x3.76cf5ec671462a93def0c25c15p-12 : inexact-ok
+= acos towardzero ibm128 0xf.ffffap-4 : 0x3.76cf5ec671462a93def0c25c15p-12 : inexact-ok
+= acos upward ibm128 0xf.ffffap-4 : 0x3.76cf5ec671462a93def0c25c16p-12 : inexact-ok
+= acos downward binary32 0xf.ffff9p-4 : 0x3.bddd44p-12 : inexact-ok
+= acos tonearest binary32 0xf.ffff9p-4 : 0x3.bddd44p-12 : inexact-ok
+= acos towardzero binary32 0xf.ffff9p-4 : 0x3.bddd44p-12 : inexact-ok
+= acos upward binary32 0xf.ffff9p-4 : 0x3.bddd48p-12 : inexact-ok
+= acos downward binary64 0xf.ffff9p-4 : 0x3.bddd445bc8fdcp-12 : inexact-ok
+= acos tonearest binary64 0xf.ffff9p-4 : 0x3.bddd445bc8fdep-12 : inexact-ok
+= acos towardzero binary64 0xf.ffff9p-4 : 0x3.bddd445bc8fdcp-12 : inexact-ok
+= acos upward binary64 0xf.ffff9p-4 : 0x3.bddd445bc8fdep-12 : inexact-ok
+= acos downward intel96 0xf.ffff9p-4 : 0x3.bddd445bc8fdd9p-12 : inexact-ok
+= acos tonearest intel96 0xf.ffff9p-4 : 0x3.bddd445bc8fdd904p-12 : inexact-ok
+= acos towardzero intel96 0xf.ffff9p-4 : 0x3.bddd445bc8fdd9p-12 : inexact-ok
+= acos upward intel96 0xf.ffff9p-4 : 0x3.bddd445bc8fdd904p-12 : inexact-ok
+= acos downward m68k96 0xf.ffff9p-4 : 0x3.bddd445bc8fdd9p-12 : inexact-ok
+= acos tonearest m68k96 0xf.ffff9p-4 : 0x3.bddd445bc8fdd904p-12 : inexact-ok
+= acos towardzero m68k96 0xf.ffff9p-4 : 0x3.bddd445bc8fdd9p-12 : inexact-ok
+= acos upward m68k96 0xf.ffff9p-4 : 0x3.bddd445bc8fdd904p-12 : inexact-ok
+= acos downward binary128 0xf.ffff9p-4 : 0x3.bddd445bc8fdd903a92245263ea4p-12 : inexact-ok
+= acos tonearest binary128 0xf.ffff9p-4 : 0x3.bddd445bc8fdd903a92245263ea4p-12 : inexact-ok
+= acos towardzero binary128 0xf.ffff9p-4 : 0x3.bddd445bc8fdd903a92245263ea4p-12 : inexact-ok
+= acos upward binary128 0xf.ffff9p-4 : 0x3.bddd445bc8fdd903a92245263ea6p-12 : inexact-ok
+= acos downward ibm128 0xf.ffff9p-4 : 0x3.bddd445bc8fdd903a92245263ep-12 : inexact-ok
+= acos tonearest ibm128 0xf.ffff9p-4 : 0x3.bddd445bc8fdd903a92245263fp-12 : inexact-ok
+= acos towardzero ibm128 0xf.ffff9p-4 : 0x3.bddd445bc8fdd903a92245263ep-12 : inexact-ok
+= acos upward ibm128 0xf.ffff9p-4 : 0x3.bddd445bc8fdd903a92245263fp-12 : inexact-ok
+= acos downward binary64 0xf.ffff9b1a566bp-4 : 0x3.8d25c52edd922p-12 : inexact-ok
+= acos tonearest binary64 0xf.ffff9b1a566bp-4 : 0x3.8d25c52edd924p-12 : inexact-ok
+= acos towardzero binary64 0xf.ffff9b1a566bp-4 : 0x3.8d25c52edd922p-12 : inexact-ok
+= acos upward binary64 0xf.ffff9b1a566bp-4 : 0x3.8d25c52edd924p-12 : inexact-ok
+= acos downward intel96 0xf.ffff9b1a566bp-4 : 0x3.8d25c52edd923p-12 : inexact-ok
+= acos tonearest intel96 0xf.ffff9b1a566bp-4 : 0x3.8d25c52edd923p-12 : inexact-ok
+= acos towardzero intel96 0xf.ffff9b1a566bp-4 : 0x3.8d25c52edd923p-12 : inexact-ok
+= acos upward intel96 0xf.ffff9b1a566bp-4 : 0x3.8d25c52edd923004p-12 : inexact-ok
+= acos downward m68k96 0xf.ffff9b1a566bp-4 : 0x3.8d25c52edd923p-12 : inexact-ok
+= acos tonearest m68k96 0xf.ffff9b1a566bp-4 : 0x3.8d25c52edd923p-12 : inexact-ok
+= acos towardzero m68k96 0xf.ffff9b1a566bp-4 : 0x3.8d25c52edd923p-12 : inexact-ok
+= acos upward m68k96 0xf.ffff9b1a566bp-4 : 0x3.8d25c52edd923004p-12 : inexact-ok
+= acos downward binary128 0xf.ffff9b1a566bp-4 : 0x3.8d25c52edd92300000026414cf6p-12 : inexact-ok
+= acos tonearest binary128 0xf.ffff9b1a566bp-4 : 0x3.8d25c52edd92300000026414cf62p-12 : inexact-ok
+= acos towardzero binary128 0xf.ffff9b1a566bp-4 : 0x3.8d25c52edd92300000026414cf6p-12 : inexact-ok
+= acos upward binary128 0xf.ffff9b1a566bp-4 : 0x3.8d25c52edd92300000026414cf62p-12 : inexact-ok
+= acos downward ibm128 0xf.ffff9b1a566bp-4 : 0x3.8d25c52edd92300000026414cfp-12 : inexact-ok
+= acos tonearest ibm128 0xf.ffff9b1a566bp-4 : 0x3.8d25c52edd92300000026414cfp-12 : inexact-ok
+= acos towardzero ibm128 0xf.ffff9b1a566bp-4 : 0x3.8d25c52edd92300000026414cfp-12 : inexact-ok
+= acos upward ibm128 0xf.ffff9b1a566bp-4 : 0x3.8d25c52edd92300000026414dp-12 : inexact-ok
+acos 0xf.fe00271d507ee5dp-4
+= acos downward binary32 0xf.fe003p-4 : 0x7.ffb55p-8 : inexact-ok
+= acos tonearest binary32 0xf.fe003p-4 : 0x7.ffb55p-8 : inexact-ok
+= acos towardzero binary32 0xf.fe003p-4 : 0x7.ffb55p-8 : inexact-ok
+= acos upward binary32 0xf.fe003p-4 : 0x7.ffb558p-8 : inexact-ok
+= acos downward binary64 0xf.fe003p-4 : 0x7.ffb550aec7a54p-8 : inexact-ok
+= acos tonearest binary64 0xf.fe003p-4 : 0x7.ffb550aec7a58p-8 : inexact-ok
+= acos towardzero binary64 0xf.fe003p-4 : 0x7.ffb550aec7a54p-8 : inexact-ok
+= acos upward binary64 0xf.fe003p-4 : 0x7.ffb550aec7a58p-8 : inexact-ok
+= acos downward intel96 0xf.fe003p-4 : 0x7.ffb550aec7a5639p-8 : inexact-ok
+= acos tonearest intel96 0xf.fe003p-4 : 0x7.ffb550aec7a56398p-8 : inexact-ok
+= acos towardzero intel96 0xf.fe003p-4 : 0x7.ffb550aec7a5639p-8 : inexact-ok
+= acos upward intel96 0xf.fe003p-4 : 0x7.ffb550aec7a56398p-8 : inexact-ok
+= acos downward m68k96 0xf.fe003p-4 : 0x7.ffb550aec7a5639p-8 : inexact-ok
+= acos tonearest m68k96 0xf.fe003p-4 : 0x7.ffb550aec7a56398p-8 : inexact-ok
+= acos towardzero m68k96 0xf.fe003p-4 : 0x7.ffb550aec7a5639p-8 : inexact-ok
+= acos upward m68k96 0xf.fe003p-4 : 0x7.ffb550aec7a56398p-8 : inexact-ok
+= acos downward binary128 0xf.fe003p-4 : 0x7.ffb550aec7a5639438e648655f7p-8 : inexact-ok
+= acos tonearest binary128 0xf.fe003p-4 : 0x7.ffb550aec7a5639438e648655f7p-8 : inexact-ok
+= acos towardzero binary128 0xf.fe003p-4 : 0x7.ffb550aec7a5639438e648655f7p-8 : inexact-ok
+= acos upward binary128 0xf.fe003p-4 : 0x7.ffb550aec7a5639438e648655f74p-8 : inexact-ok
+= acos downward ibm128 0xf.fe003p-4 : 0x7.ffb550aec7a5639438e648655ep-8 : inexact-ok
+= acos tonearest ibm128 0xf.fe003p-4 : 0x7.ffb550aec7a5639438e648656p-8 : inexact-ok
+= acos towardzero ibm128 0xf.fe003p-4 : 0x7.ffb550aec7a5639438e648655ep-8 : inexact-ok
+= acos upward ibm128 0xf.fe003p-4 : 0x7.ffb550aec7a5639438e648656p-8 : inexact-ok
+= acos downward binary32 0xf.fe002p-4 : 0x7.ffd55p-8 : inexact-ok
+= acos tonearest binary32 0xf.fe002p-4 : 0x7.ffd55p-8 : inexact-ok
+= acos towardzero binary32 0xf.fe002p-4 : 0x7.ffd55p-8 : inexact-ok
+= acos upward binary32 0xf.fe002p-4 : 0x7.ffd558p-8 : inexact-ok
+= acos downward binary64 0xf.fe002p-4 : 0x7.ffd552eedca58p-8 : inexact-ok
+= acos tonearest binary64 0xf.fe002p-4 : 0x7.ffd552eedca5cp-8 : inexact-ok
+= acos towardzero binary64 0xf.fe002p-4 : 0x7.ffd552eedca58p-8 : inexact-ok
+= acos upward binary64 0xf.fe002p-4 : 0x7.ffd552eedca5cp-8 : inexact-ok
+= acos downward intel96 0xf.fe002p-4 : 0x7.ffd552eedca5ade8p-8 : inexact-ok
+= acos tonearest intel96 0xf.fe002p-4 : 0x7.ffd552eedca5adfp-8 : inexact-ok
+= acos towardzero intel96 0xf.fe002p-4 : 0x7.ffd552eedca5ade8p-8 : inexact-ok
+= acos upward intel96 0xf.fe002p-4 : 0x7.ffd552eedca5adfp-8 : inexact-ok
+= acos downward m68k96 0xf.fe002p-4 : 0x7.ffd552eedca5ade8p-8 : inexact-ok
+= acos tonearest m68k96 0xf.fe002p-4 : 0x7.ffd552eedca5adfp-8 : inexact-ok
+= acos towardzero m68k96 0xf.fe002p-4 : 0x7.ffd552eedca5ade8p-8 : inexact-ok
+= acos upward m68k96 0xf.fe002p-4 : 0x7.ffd552eedca5adfp-8 : inexact-ok
+= acos downward binary128 0xf.fe002p-4 : 0x7.ffd552eedca5adef3be2b755351p-8 : inexact-ok
+= acos tonearest binary128 0xf.fe002p-4 : 0x7.ffd552eedca5adef3be2b7553514p-8 : inexact-ok
+= acos towardzero binary128 0xf.fe002p-4 : 0x7.ffd552eedca5adef3be2b755351p-8 : inexact-ok
+= acos upward binary128 0xf.fe002p-4 : 0x7.ffd552eedca5adef3be2b7553514p-8 : inexact-ok
+= acos downward ibm128 0xf.fe002p-4 : 0x7.ffd552eedca5adef3be2b75534p-8 : inexact-ok
+= acos tonearest ibm128 0xf.fe002p-4 : 0x7.ffd552eedca5adef3be2b75536p-8 : inexact-ok
+= acos towardzero ibm128 0xf.fe002p-4 : 0x7.ffd552eedca5adef3be2b75534p-8 : inexact-ok
+= acos upward ibm128 0xf.fe002p-4 : 0x7.ffd552eedca5adef3be2b75536p-8 : inexact-ok
+= acos downward binary64 0xf.fe00271d507fp-4 : 0x7.ffc7175d8526cp-8 : inexact-ok
+= acos tonearest binary64 0xf.fe00271d507fp-4 : 0x7.ffc7175d8527p-8 : inexact-ok
+= acos towardzero binary64 0xf.fe00271d507fp-4 : 0x7.ffc7175d8526cp-8 : inexact-ok
+= acos upward binary64 0xf.fe00271d507fp-4 : 0x7.ffc7175d8527p-8 : inexact-ok
+= acos downward intel96 0xf.fe00271d507fp-4 : 0x7.ffc7175d8526e8dp-8 : inexact-ok
+= acos tonearest intel96 0xf.fe00271d507fp-4 : 0x7.ffc7175d8526e8dp-8 : inexact-ok
+= acos towardzero intel96 0xf.fe00271d507fp-4 : 0x7.ffc7175d8526e8dp-8 : inexact-ok
+= acos upward intel96 0xf.fe00271d507fp-4 : 0x7.ffc7175d8526e8d8p-8 : inexact-ok
+= acos downward m68k96 0xf.fe00271d507fp-4 : 0x7.ffc7175d8526e8dp-8 : inexact-ok
+= acos tonearest m68k96 0xf.fe00271d507fp-4 : 0x7.ffc7175d8526e8dp-8 : inexact-ok
+= acos towardzero m68k96 0xf.fe00271d507fp-4 : 0x7.ffc7175d8526e8dp-8 : inexact-ok
+= acos upward m68k96 0xf.fe00271d507fp-4 : 0x7.ffc7175d8526e8d8p-8 : inexact-ok
+= acos downward binary128 0xf.fe00271d507fp-4 : 0x7.ffc7175d8526e8d2a5d9ca757ae8p-8 : inexact-ok
+= acos tonearest binary128 0xf.fe00271d507fp-4 : 0x7.ffc7175d8526e8d2a5d9ca757ae8p-8 : inexact-ok
+= acos towardzero binary128 0xf.fe00271d507fp-4 : 0x7.ffc7175d8526e8d2a5d9ca757ae8p-8 : inexact-ok
+= acos upward binary128 0xf.fe00271d507fp-4 : 0x7.ffc7175d8526e8d2a5d9ca757aecp-8 : inexact-ok
+= acos downward ibm128 0xf.fe00271d507fp-4 : 0x7.ffc7175d8526e8d2a5d9ca757ap-8 : inexact-ok
+= acos tonearest ibm128 0xf.fe00271d507fp-4 : 0x7.ffc7175d8526e8d2a5d9ca757ap-8 : inexact-ok
+= acos towardzero ibm128 0xf.fe00271d507fp-4 : 0x7.ffc7175d8526e8d2a5d9ca757ap-8 : inexact-ok
+= acos upward ibm128 0xf.fe00271d507fp-4 : 0x7.ffc7175d8526e8d2a5d9ca757cp-8 : inexact-ok
+= acos downward binary64 0xf.fe00271d507e8p-4 : 0x7.ffc7175d8626cp-8 : inexact-ok
+= acos tonearest binary64 0xf.fe00271d507e8p-4 : 0x7.ffc7175d8627p-8 : inexact-ok
+= acos towardzero binary64 0xf.fe00271d507e8p-4 : 0x7.ffc7175d8626cp-8 : inexact-ok
+= acos upward binary64 0xf.fe00271d507e8p-4 : 0x7.ffc7175d8627p-8 : inexact-ok
+= acos downward intel96 0xf.fe00271d507e8p-4 : 0x7.ffc7175d8626fa98p-8 : inexact-ok
+= acos tonearest intel96 0xf.fe00271d507e8p-4 : 0x7.ffc7175d8626fa98p-8 : inexact-ok
+= acos towardzero intel96 0xf.fe00271d507e8p-4 : 0x7.ffc7175d8626fa98p-8 : inexact-ok
+= acos upward intel96 0xf.fe00271d507e8p-4 : 0x7.ffc7175d8626faap-8 : inexact-ok
+= acos downward m68k96 0xf.fe00271d507e8p-4 : 0x7.ffc7175d8626fa98p-8 : inexact-ok
+= acos tonearest m68k96 0xf.fe00271d507e8p-4 : 0x7.ffc7175d8626fa98p-8 : inexact-ok
+= acos towardzero m68k96 0xf.fe00271d507e8p-4 : 0x7.ffc7175d8626fa98p-8 : inexact-ok
+= acos upward m68k96 0xf.fe00271d507e8p-4 : 0x7.ffc7175d8626faap-8 : inexact-ok
+= acos downward binary128 0xf.fe00271d507e8p-4 : 0x7.ffc7175d8626fa9a9b2f299f3b1cp-8 : inexact-ok
+= acos tonearest binary128 0xf.fe00271d507e8p-4 : 0x7.ffc7175d8626fa9a9b2f299f3b2p-8 : inexact-ok
+= acos towardzero binary128 0xf.fe00271d507e8p-4 : 0x7.ffc7175d8626fa9a9b2f299f3b1cp-8 : inexact-ok
+= acos upward binary128 0xf.fe00271d507e8p-4 : 0x7.ffc7175d8626fa9a9b2f299f3b2p-8 : inexact-ok
+= acos downward ibm128 0xf.fe00271d507e8p-4 : 0x7.ffc7175d8626fa9a9b2f299f3ap-8 : inexact-ok
+= acos tonearest ibm128 0xf.fe00271d507e8p-4 : 0x7.ffc7175d8626fa9a9b2f299f3cp-8 : inexact-ok
+= acos towardzero ibm128 0xf.fe00271d507e8p-4 : 0x7.ffc7175d8626fa9a9b2f299f3ap-8 : inexact-ok
+= acos upward ibm128 0xf.fe00271d507e8p-4 : 0x7.ffc7175d8626fa9a9b2f299f3cp-8 : inexact-ok
+= acos downward intel96 0xf.fe00271d507ee5dp-4 : 0x7.ffc7175d855b4c7p-8 : inexact-ok
+= acos tonearest intel96 0xf.fe00271d507ee5dp-4 : 0x7.ffc7175d855b4c78p-8 : inexact-ok
+= acos towardzero intel96 0xf.fe00271d507ee5dp-4 : 0x7.ffc7175d855b4c7p-8 : inexact-ok
+= acos upward intel96 0xf.fe00271d507ee5dp-4 : 0x7.ffc7175d855b4c78p-8 : inexact-ok
+= acos downward m68k96 0xf.fe00271d507ee5dp-4 : 0x7.ffc7175d855b4c7p-8 : inexact-ok
+= acos tonearest m68k96 0xf.fe00271d507ee5dp-4 : 0x7.ffc7175d855b4c78p-8 : inexact-ok
+= acos towardzero m68k96 0xf.fe00271d507ee5dp-4 : 0x7.ffc7175d855b4c7p-8 : inexact-ok
+= acos upward m68k96 0xf.fe00271d507ee5dp-4 : 0x7.ffc7175d855b4c78p-8 : inexact-ok
+= acos downward binary128 0xf.fe00271d507ee5dp-4 : 0x7.ffc7175d855b4c75eeab24686aecp-8 : inexact-ok
+= acos tonearest binary128 0xf.fe00271d507ee5dp-4 : 0x7.ffc7175d855b4c75eeab24686aecp-8 : inexact-ok
+= acos towardzero binary128 0xf.fe00271d507ee5dp-4 : 0x7.ffc7175d855b4c75eeab24686aecp-8 : inexact-ok
+= acos upward binary128 0xf.fe00271d507ee5dp-4 : 0x7.ffc7175d855b4c75eeab24686afp-8 : inexact-ok
+= acos downward ibm128 0xf.fe00271d507ee5dp-4 : 0x7.ffc7175d855b4c75eeab24686ap-8 : inexact-ok
+= acos tonearest ibm128 0xf.fe00271d507ee5dp-4 : 0x7.ffc7175d855b4c75eeab24686ap-8 : inexact-ok
+= acos towardzero ibm128 0xf.fe00271d507ee5dp-4 : 0x7.ffc7175d855b4c75eeab24686ap-8 : inexact-ok
+= acos upward ibm128 0xf.fe00271d507ee5dp-4 : 0x7.ffc7175d855b4c75eeab24686cp-8 : inexact-ok
 acos min
 = acos downward binary32 0x4p-128 : 0x1.921fb4p+0 : inexact-ok
 = acos tonearest binary32 0x4p-128 : 0x1.921fb6p+0 : inexact-ok
diff --git a/math/auto-libm-test-out-acosh b/math/auto-libm-test-out-acosh
index f408be3df1..a628fa33ba 100644
--- a/math/auto-libm-test-out-acosh
+++ b/math/auto-libm-test-out-acosh
@@ -1898,6 +1898,252 @@ acosh 0x1.1052c4p+0
 = acosh tonearest ibm128 0x1.1052c4p+0 : 0x5.af0cbc66dcd4992c060eb8ff4ap-4 : inexact-ok
 = acosh towardzero ibm128 0x1.1052c4p+0 : 0x5.af0cbc66dcd4992c060eb8ff48p-4 : inexact-ok
 = acosh upward ibm128 0x1.1052c4p+0 : 0x5.af0cbc66dcd4992c060eb8ff4ap-4 : inexact-ok
+acosh 0x1.1ecbdf374bce01cap+0
+= acosh downward binary32 0x1.1ecbep+0 : 0x7.c5802p-4 : inexact-ok
+= acosh tonearest binary32 0x1.1ecbep+0 : 0x7.c5802p-4 : inexact-ok
+= acosh towardzero binary32 0x1.1ecbep+0 : 0x7.c5802p-4 : inexact-ok
+= acosh upward binary32 0x1.1ecbep+0 : 0x7.c58028p-4 : inexact-ok
+= acosh downward binary64 0x1.1ecbep+0 : 0x7.c580228bed2a8p-4 : inexact-ok
+= acosh tonearest binary64 0x1.1ecbep+0 : 0x7.c580228bed2a8p-4 : inexact-ok
+= acosh towardzero binary64 0x1.1ecbep+0 : 0x7.c580228bed2a8p-4 : inexact-ok
+= acosh upward binary64 0x1.1ecbep+0 : 0x7.c580228bed2acp-4 : inexact-ok
+= acosh downward intel96 0x1.1ecbep+0 : 0x7.c580228bed2a8288p-4 : inexact-ok
+= acosh tonearest intel96 0x1.1ecbep+0 : 0x7.c580228bed2a829p-4 : inexact-ok
+= acosh towardzero intel96 0x1.1ecbep+0 : 0x7.c580228bed2a8288p-4 : inexact-ok
+= acosh upward intel96 0x1.1ecbep+0 : 0x7.c580228bed2a829p-4 : inexact-ok
+= acosh downward m68k96 0x1.1ecbep+0 : 0x7.c580228bed2a8288p-4 : inexact-ok
+= acosh tonearest m68k96 0x1.1ecbep+0 : 0x7.c580228bed2a829p-4 : inexact-ok
+= acosh towardzero m68k96 0x1.1ecbep+0 : 0x7.c580228bed2a8288p-4 : inexact-ok
+= acosh upward m68k96 0x1.1ecbep+0 : 0x7.c580228bed2a829p-4 : inexact-ok
+= acosh downward binary128 0x1.1ecbep+0 : 0x7.c580228bed2a828f8042d267c3f4p-4 : inexact-ok
+= acosh tonearest binary128 0x1.1ecbep+0 : 0x7.c580228bed2a828f8042d267c3f4p-4 : inexact-ok
+= acosh towardzero binary128 0x1.1ecbep+0 : 0x7.c580228bed2a828f8042d267c3f4p-4 : inexact-ok
+= acosh upward binary128 0x1.1ecbep+0 : 0x7.c580228bed2a828f8042d267c3f8p-4 : inexact-ok
+= acosh downward ibm128 0x1.1ecbep+0 : 0x7.c580228bed2a828f8042d267c2p-4 : inexact-ok
+= acosh tonearest ibm128 0x1.1ecbep+0 : 0x7.c580228bed2a828f8042d267c4p-4 : inexact-ok
+= acosh towardzero ibm128 0x1.1ecbep+0 : 0x7.c580228bed2a828f8042d267c2p-4 : inexact-ok
+= acosh upward ibm128 0x1.1ecbep+0 : 0x7.c580228bed2a828f8042d267c4p-4 : inexact-ok
+= acosh downward binary32 0x1.1ecbdep+0 : 0x7.c57fep-4 : inexact-ok
+= acosh tonearest binary32 0x1.1ecbdep+0 : 0x7.c57fep-4 : inexact-ok
+= acosh towardzero binary32 0x1.1ecbdep+0 : 0x7.c57fep-4 : inexact-ok
+= acosh upward binary32 0x1.1ecbdep+0 : 0x7.c57fe8p-4 : inexact-ok
+= acosh downward binary64 0x1.1ecbdep+0 : 0x7.c57fe32f85bf4p-4 : inexact-ok
+= acosh tonearest binary64 0x1.1ecbdep+0 : 0x7.c57fe32f85bf4p-4 : inexact-ok
+= acosh towardzero binary64 0x1.1ecbdep+0 : 0x7.c57fe32f85bf4p-4 : inexact-ok
+= acosh upward binary64 0x1.1ecbdep+0 : 0x7.c57fe32f85bf8p-4 : inexact-ok
+= acosh downward intel96 0x1.1ecbdep+0 : 0x7.c57fe32f85bf5c48p-4 : inexact-ok
+= acosh tonearest intel96 0x1.1ecbdep+0 : 0x7.c57fe32f85bf5c48p-4 : inexact-ok
+= acosh towardzero intel96 0x1.1ecbdep+0 : 0x7.c57fe32f85bf5c48p-4 : inexact-ok
+= acosh upward intel96 0x1.1ecbdep+0 : 0x7.c57fe32f85bf5c5p-4 : inexact-ok
+= acosh downward m68k96 0x1.1ecbdep+0 : 0x7.c57fe32f85bf5c48p-4 : inexact-ok
+= acosh tonearest m68k96 0x1.1ecbdep+0 : 0x7.c57fe32f85bf5c48p-4 : inexact-ok
+= acosh towardzero m68k96 0x1.1ecbdep+0 : 0x7.c57fe32f85bf5c48p-4 : inexact-ok
+= acosh upward m68k96 0x1.1ecbdep+0 : 0x7.c57fe32f85bf5c5p-4 : inexact-ok
+= acosh downward binary128 0x1.1ecbdep+0 : 0x7.c57fe32f85bf5c4bb5c8e26d43dcp-4 : inexact-ok
+= acosh tonearest binary128 0x1.1ecbdep+0 : 0x7.c57fe32f85bf5c4bb5c8e26d43dcp-4 : inexact-ok
+= acosh towardzero binary128 0x1.1ecbdep+0 : 0x7.c57fe32f85bf5c4bb5c8e26d43dcp-4 : inexact-ok
+= acosh upward binary128 0x1.1ecbdep+0 : 0x7.c57fe32f85bf5c4bb5c8e26d43ep-4 : inexact-ok
+= acosh downward ibm128 0x1.1ecbdep+0 : 0x7.c57fe32f85bf5c4bb5c8e26d42p-4 : inexact-ok
+= acosh tonearest ibm128 0x1.1ecbdep+0 : 0x7.c57fe32f85bf5c4bb5c8e26d44p-4 : inexact-ok
+= acosh towardzero ibm128 0x1.1ecbdep+0 : 0x7.c57fe32f85bf5c4bb5c8e26d42p-4 : inexact-ok
+= acosh upward ibm128 0x1.1ecbdep+0 : 0x7.c57fe32f85bf5c4bb5c8e26d44p-4 : inexact-ok
+= acosh downward binary64 0x1.1ecbdf374bce1p+0 : 0x7.c58009b5885c8p-4 : inexact-ok
+= acosh tonearest binary64 0x1.1ecbdf374bce1p+0 : 0x7.c58009b5885c8p-4 : inexact-ok
+= acosh towardzero binary64 0x1.1ecbdf374bce1p+0 : 0x7.c58009b5885c8p-4 : inexact-ok
+= acosh upward binary64 0x1.1ecbdf374bce1p+0 : 0x7.c58009b5885ccp-4 : inexact-ok
+= acosh downward intel96 0x1.1ecbdf374bce1p+0 : 0x7.c58009b5885c9458p-4 : inexact-ok
+= acosh tonearest intel96 0x1.1ecbdf374bce1p+0 : 0x7.c58009b5885c946p-4 : inexact-ok
+= acosh towardzero intel96 0x1.1ecbdf374bce1p+0 : 0x7.c58009b5885c9458p-4 : inexact-ok
+= acosh upward intel96 0x1.1ecbdf374bce1p+0 : 0x7.c58009b5885c946p-4 : inexact-ok
+= acosh downward m68k96 0x1.1ecbdf374bce1p+0 : 0x7.c58009b5885c9458p-4 : inexact-ok
+= acosh tonearest m68k96 0x1.1ecbdf374bce1p+0 : 0x7.c58009b5885c946p-4 : inexact-ok
+= acosh towardzero m68k96 0x1.1ecbdf374bce1p+0 : 0x7.c58009b5885c9458p-4 : inexact-ok
+= acosh upward m68k96 0x1.1ecbdf374bce1p+0 : 0x7.c58009b5885c946p-4 : inexact-ok
+= acosh downward binary128 0x1.1ecbdf374bce1p+0 : 0x7.c58009b5885c945dbf38fa630eccp-4 : inexact-ok
+= acosh tonearest binary128 0x1.1ecbdf374bce1p+0 : 0x7.c58009b5885c945dbf38fa630eccp-4 : inexact-ok
+= acosh towardzero binary128 0x1.1ecbdf374bce1p+0 : 0x7.c58009b5885c945dbf38fa630eccp-4 : inexact-ok
+= acosh upward binary128 0x1.1ecbdf374bce1p+0 : 0x7.c58009b5885c945dbf38fa630edp-4 : inexact-ok
+= acosh downward ibm128 0x1.1ecbdf374bce1p+0 : 0x7.c58009b5885c945dbf38fa630ep-4 : inexact-ok
+= acosh tonearest ibm128 0x1.1ecbdf374bce1p+0 : 0x7.c58009b5885c945dbf38fa630ep-4 : inexact-ok
+= acosh towardzero ibm128 0x1.1ecbdf374bce1p+0 : 0x7.c58009b5885c945dbf38fa630ep-4 : inexact-ok
+= acosh upward ibm128 0x1.1ecbdf374bce1p+0 : 0x7.c58009b5885c945dbf38fa631p-4 : inexact-ok
+= acosh downward binary64 0x1.1ecbdf374bcep+0 : 0x7.c58009b5885a8p-4 : inexact-ok
+= acosh tonearest binary64 0x1.1ecbdf374bcep+0 : 0x7.c58009b5885a8p-4 : inexact-ok
+= acosh towardzero binary64 0x1.1ecbdf374bcep+0 : 0x7.c58009b5885a8p-4 : inexact-ok
+= acosh upward binary64 0x1.1ecbdf374bcep+0 : 0x7.c58009b5885acp-4 : inexact-ok
+= acosh downward intel96 0x1.1ecbdf374bcep+0 : 0x7.c58009b5885a9978p-4 : inexact-ok
+= acosh tonearest intel96 0x1.1ecbdf374bcep+0 : 0x7.c58009b5885a9978p-4 : inexact-ok
+= acosh towardzero intel96 0x1.1ecbdf374bcep+0 : 0x7.c58009b5885a9978p-4 : inexact-ok
+= acosh upward intel96 0x1.1ecbdf374bcep+0 : 0x7.c58009b5885a998p-4 : inexact-ok
+= acosh downward m68k96 0x1.1ecbdf374bcep+0 : 0x7.c58009b5885a9978p-4 : inexact-ok
+= acosh tonearest m68k96 0x1.1ecbdf374bcep+0 : 0x7.c58009b5885a9978p-4 : inexact-ok
+= acosh towardzero m68k96 0x1.1ecbdf374bcep+0 : 0x7.c58009b5885a9978p-4 : inexact-ok
+= acosh upward m68k96 0x1.1ecbdf374bcep+0 : 0x7.c58009b5885a998p-4 : inexact-ok
+= acosh downward binary128 0x1.1ecbdf374bcep+0 : 0x7.c58009b5885a997a85c0ab84dd94p-4 : inexact-ok
+= acosh tonearest binary128 0x1.1ecbdf374bcep+0 : 0x7.c58009b5885a997a85c0ab84dd98p-4 : inexact-ok
+= acosh towardzero binary128 0x1.1ecbdf374bcep+0 : 0x7.c58009b5885a997a85c0ab84dd94p-4 : inexact-ok
+= acosh upward binary128 0x1.1ecbdf374bcep+0 : 0x7.c58009b5885a997a85c0ab84dd98p-4 : inexact-ok
+= acosh downward ibm128 0x1.1ecbdf374bcep+0 : 0x7.c58009b5885a997a85c0ab84dcp-4 : inexact-ok
+= acosh tonearest ibm128 0x1.1ecbdf374bcep+0 : 0x7.c58009b5885a997a85c0ab84dep-4 : inexact-ok
+= acosh towardzero ibm128 0x1.1ecbdf374bcep+0 : 0x7.c58009b5885a997a85c0ab84dcp-4 : inexact-ok
+= acosh upward ibm128 0x1.1ecbdf374bcep+0 : 0x7.c58009b5885a997a85c0ab84dep-4 : inexact-ok
+= acosh downward intel96 0x1.1ecbdf374bce01cap+0 : 0x7.c58009b5885ad228p-4 : inexact-ok
+= acosh tonearest intel96 0x1.1ecbdf374bce01cap+0 : 0x7.c58009b5885ad228p-4 : inexact-ok
+= acosh towardzero intel96 0x1.1ecbdf374bce01cap+0 : 0x7.c58009b5885ad228p-4 : inexact-ok
+= acosh upward intel96 0x1.1ecbdf374bce01cap+0 : 0x7.c58009b5885ad23p-4 : inexact-ok
+= acosh downward m68k96 0x1.1ecbdf374bce01cap+0 : 0x7.c58009b5885ad228p-4 : inexact-ok
+= acosh tonearest m68k96 0x1.1ecbdf374bce01cap+0 : 0x7.c58009b5885ad228p-4 : inexact-ok
+= acosh towardzero m68k96 0x1.1ecbdf374bce01cap+0 : 0x7.c58009b5885ad228p-4 : inexact-ok
+= acosh upward m68k96 0x1.1ecbdf374bce01cap+0 : 0x7.c58009b5885ad23p-4 : inexact-ok
+= acosh downward binary128 0x1.1ecbdf374bce01cap+0 : 0x7.c58009b5885ad2282e0dbf567ccp-4 : inexact-ok
+= acosh tonearest binary128 0x1.1ecbdf374bce01cap+0 : 0x7.c58009b5885ad2282e0dbf567ccp-4 : inexact-ok
+= acosh towardzero binary128 0x1.1ecbdf374bce01cap+0 : 0x7.c58009b5885ad2282e0dbf567ccp-4 : inexact-ok
+= acosh upward binary128 0x1.1ecbdf374bce01cap+0 : 0x7.c58009b5885ad2282e0dbf567cc4p-4 : inexact-ok
+= acosh downward ibm128 0x1.1ecbdf374bce01cap+0 : 0x7.c58009b5885ad2282e0dbf567cp-4 : inexact-ok
+= acosh tonearest ibm128 0x1.1ecbdf374bce01cap+0 : 0x7.c58009b5885ad2282e0dbf567cp-4 : inexact-ok
+= acosh towardzero ibm128 0x1.1ecbdf374bce01cap+0 : 0x7.c58009b5885ad2282e0dbf567cp-4 : inexact-ok
+= acosh upward ibm128 0x1.1ecbdf374bce01cap+0 : 0x7.c58009b5885ad2282e0dbf567ep-4 : inexact-ok
+acosh 0x1.0f97586eba090200118df0902f99p+0
+= acosh downward binary32 0x1.0f975ap+0 : 0x5.8e60cp-4 : inexact-ok
+= acosh tonearest binary32 0x1.0f975ap+0 : 0x5.8e60cp-4 : inexact-ok
+= acosh towardzero binary32 0x1.0f975ap+0 : 0x5.8e60cp-4 : inexact-ok
+= acosh upward binary32 0x1.0f975ap+0 : 0x5.8e60c8p-4 : inexact-ok
+= acosh downward binary64 0x1.0f975ap+0 : 0x5.8e60c2aef6b84p-4 : inexact-ok
+= acosh tonearest binary64 0x1.0f975ap+0 : 0x5.8e60c2aef6b84p-4 : inexact-ok
+= acosh towardzero binary64 0x1.0f975ap+0 : 0x5.8e60c2aef6b84p-4 : inexact-ok
+= acosh upward binary64 0x1.0f975ap+0 : 0x5.8e60c2aef6b88p-4 : inexact-ok
+= acosh downward intel96 0x1.0f975ap+0 : 0x5.8e60c2aef6b859f8p-4 : inexact-ok
+= acosh tonearest intel96 0x1.0f975ap+0 : 0x5.8e60c2aef6b85ap-4 : inexact-ok
+= acosh towardzero intel96 0x1.0f975ap+0 : 0x5.8e60c2aef6b859f8p-4 : inexact-ok
+= acosh upward intel96 0x1.0f975ap+0 : 0x5.8e60c2aef6b85ap-4 : inexact-ok
+= acosh downward m68k96 0x1.0f975ap+0 : 0x5.8e60c2aef6b859f8p-4 : inexact-ok
+= acosh tonearest m68k96 0x1.0f975ap+0 : 0x5.8e60c2aef6b85ap-4 : inexact-ok
+= acosh towardzero m68k96 0x1.0f975ap+0 : 0x5.8e60c2aef6b859f8p-4 : inexact-ok
+= acosh upward m68k96 0x1.0f975ap+0 : 0x5.8e60c2aef6b85ap-4 : inexact-ok
+= acosh downward binary128 0x1.0f975ap+0 : 0x5.8e60c2aef6b859fea83073e03dd4p-4 : inexact-ok
+= acosh tonearest binary128 0x1.0f975ap+0 : 0x5.8e60c2aef6b859fea83073e03dd8p-4 : inexact-ok
+= acosh towardzero binary128 0x1.0f975ap+0 : 0x5.8e60c2aef6b859fea83073e03dd4p-4 : inexact-ok
+= acosh upward binary128 0x1.0f975ap+0 : 0x5.8e60c2aef6b859fea83073e03dd8p-4 : inexact-ok
+= acosh downward ibm128 0x1.0f975ap+0 : 0x5.8e60c2aef6b859fea83073e03cp-4 : inexact-ok
+= acosh tonearest ibm128 0x1.0f975ap+0 : 0x5.8e60c2aef6b859fea83073e03ep-4 : inexact-ok
+= acosh towardzero ibm128 0x1.0f975ap+0 : 0x5.8e60c2aef6b859fea83073e03cp-4 : inexact-ok
+= acosh upward ibm128 0x1.0f975ap+0 : 0x5.8e60c2aef6b859fea83073e03ep-4 : inexact-ok
+= acosh downward binary32 0x1.0f9758p+0 : 0x5.8e6068p-4 : inexact-ok
+= acosh tonearest binary32 0x1.0f9758p+0 : 0x5.8e6068p-4 : inexact-ok
+= acosh towardzero binary32 0x1.0f9758p+0 : 0x5.8e6068p-4 : inexact-ok
+= acosh upward binary32 0x1.0f9758p+0 : 0x5.8e607p-4 : inexact-ok
+= acosh downward binary64 0x1.0f9758p+0 : 0x5.8e60685c1d69p-4 : inexact-ok
+= acosh tonearest binary64 0x1.0f9758p+0 : 0x5.8e60685c1d694p-4 : inexact-ok
+= acosh towardzero binary64 0x1.0f9758p+0 : 0x5.8e60685c1d69p-4 : inexact-ok
+= acosh upward binary64 0x1.0f9758p+0 : 0x5.8e60685c1d694p-4 : inexact-ok
+= acosh downward intel96 0x1.0f9758p+0 : 0x5.8e60685c1d69354p-4 : inexact-ok
+= acosh tonearest intel96 0x1.0f9758p+0 : 0x5.8e60685c1d693548p-4 : inexact-ok
+= acosh towardzero intel96 0x1.0f9758p+0 : 0x5.8e60685c1d69354p-4 : inexact-ok
+= acosh upward intel96 0x1.0f9758p+0 : 0x5.8e60685c1d693548p-4 : inexact-ok
+= acosh downward m68k96 0x1.0f9758p+0 : 0x5.8e60685c1d69354p-4 : inexact-ok
+= acosh tonearest m68k96 0x1.0f9758p+0 : 0x5.8e60685c1d693548p-4 : inexact-ok
+= acosh towardzero m68k96 0x1.0f9758p+0 : 0x5.8e60685c1d69354p-4 : inexact-ok
+= acosh upward m68k96 0x1.0f9758p+0 : 0x5.8e60685c1d693548p-4 : inexact-ok
+= acosh downward binary128 0x1.0f9758p+0 : 0x5.8e60685c1d693545e67181d1a6ep-4 : inexact-ok
+= acosh tonearest binary128 0x1.0f9758p+0 : 0x5.8e60685c1d693545e67181d1a6ep-4 : inexact-ok
+= acosh towardzero binary128 0x1.0f9758p+0 : 0x5.8e60685c1d693545e67181d1a6ep-4 : inexact-ok
+= acosh upward binary128 0x1.0f9758p+0 : 0x5.8e60685c1d693545e67181d1a6e4p-4 : inexact-ok
+= acosh downward ibm128 0x1.0f9758p+0 : 0x5.8e60685c1d693545e67181d1a6p-4 : inexact-ok
+= acosh tonearest ibm128 0x1.0f9758p+0 : 0x5.8e60685c1d693545e67181d1a6p-4 : inexact-ok
+= acosh towardzero ibm128 0x1.0f9758p+0 : 0x5.8e60685c1d693545e67181d1a6p-4 : inexact-ok
+= acosh upward ibm128 0x1.0f9758p+0 : 0x5.8e60685c1d693545e67181d1a8p-4 : inexact-ok
+= acosh downward binary64 0x1.0f97586eba091p+0 : 0x5.8e607be4bc4ccp-4 : inexact-ok
+= acosh tonearest binary64 0x1.0f97586eba091p+0 : 0x5.8e607be4bc4ccp-4 : inexact-ok
+= acosh towardzero binary64 0x1.0f97586eba091p+0 : 0x5.8e607be4bc4ccp-4 : inexact-ok
+= acosh upward binary64 0x1.0f97586eba091p+0 : 0x5.8e607be4bc4dp-4 : inexact-ok
+= acosh downward intel96 0x1.0f97586eba091p+0 : 0x5.8e607be4bc4cd598p-4 : inexact-ok
+= acosh tonearest intel96 0x1.0f97586eba091p+0 : 0x5.8e607be4bc4cd598p-4 : inexact-ok
+= acosh towardzero intel96 0x1.0f97586eba091p+0 : 0x5.8e607be4bc4cd598p-4 : inexact-ok
+= acosh upward intel96 0x1.0f97586eba091p+0 : 0x5.8e607be4bc4cd5ap-4 : inexact-ok
+= acosh downward m68k96 0x1.0f97586eba091p+0 : 0x5.8e607be4bc4cd598p-4 : inexact-ok
+= acosh tonearest m68k96 0x1.0f97586eba091p+0 : 0x5.8e607be4bc4cd598p-4 : inexact-ok
+= acosh towardzero m68k96 0x1.0f97586eba091p+0 : 0x5.8e607be4bc4cd598p-4 : inexact-ok
+= acosh upward m68k96 0x1.0f97586eba091p+0 : 0x5.8e607be4bc4cd5ap-4 : inexact-ok
+= acosh downward binary128 0x1.0f97586eba091p+0 : 0x5.8e607be4bc4cd59aa3e6945d8674p-4 : inexact-ok
+= acosh tonearest binary128 0x1.0f97586eba091p+0 : 0x5.8e607be4bc4cd59aa3e6945d8678p-4 : inexact-ok
+= acosh towardzero binary128 0x1.0f97586eba091p+0 : 0x5.8e607be4bc4cd59aa3e6945d8674p-4 : inexact-ok
+= acosh upward binary128 0x1.0f97586eba091p+0 : 0x5.8e607be4bc4cd59aa3e6945d8678p-4 : inexact-ok
+= acosh downward ibm128 0x1.0f97586eba091p+0 : 0x5.8e607be4bc4cd59aa3e6945d86p-4 : inexact-ok
+= acosh tonearest ibm128 0x1.0f97586eba091p+0 : 0x5.8e607be4bc4cd59aa3e6945d86p-4 : inexact-ok
+= acosh towardzero ibm128 0x1.0f97586eba091p+0 : 0x5.8e607be4bc4cd59aa3e6945d86p-4 : inexact-ok
+= acosh upward ibm128 0x1.0f97586eba091p+0 : 0x5.8e607be4bc4cd59aa3e6945d88p-4 : inexact-ok
+= acosh downward binary64 0x1.0f97586eba09p+0 : 0x5.8e607be4bc4ap-4 : inexact-ok
+= acosh tonearest binary64 0x1.0f97586eba09p+0 : 0x5.8e607be4bc4ap-4 : inexact-ok
+= acosh towardzero binary64 0x1.0f97586eba09p+0 : 0x5.8e607be4bc4ap-4 : inexact-ok
+= acosh upward binary64 0x1.0f97586eba09p+0 : 0x5.8e607be4bc4a4p-4 : inexact-ok
+= acosh downward intel96 0x1.0f97586eba09p+0 : 0x5.8e607be4bc4a03p-4 : inexact-ok
+= acosh tonearest intel96 0x1.0f97586eba09p+0 : 0x5.8e607be4bc4a03p-4 : inexact-ok
+= acosh towardzero intel96 0x1.0f97586eba09p+0 : 0x5.8e607be4bc4a03p-4 : inexact-ok
+= acosh upward intel96 0x1.0f97586eba09p+0 : 0x5.8e607be4bc4a0308p-4 : inexact-ok
+= acosh downward m68k96 0x1.0f97586eba09p+0 : 0x5.8e607be4bc4a03p-4 : inexact-ok
+= acosh tonearest m68k96 0x1.0f97586eba09p+0 : 0x5.8e607be4bc4a03p-4 : inexact-ok
+= acosh towardzero m68k96 0x1.0f97586eba09p+0 : 0x5.8e607be4bc4a03p-4 : inexact-ok
+= acosh upward m68k96 0x1.0f97586eba09p+0 : 0x5.8e607be4bc4a0308p-4 : inexact-ok
+= acosh downward binary128 0x1.0f97586eba09p+0 : 0x5.8e607be4bc4a0303cbe388d3bc78p-4 : inexact-ok
+= acosh tonearest binary128 0x1.0f97586eba09p+0 : 0x5.8e607be4bc4a0303cbe388d3bc78p-4 : inexact-ok
+= acosh towardzero binary128 0x1.0f97586eba09p+0 : 0x5.8e607be4bc4a0303cbe388d3bc78p-4 : inexact-ok
+= acosh upward binary128 0x1.0f97586eba09p+0 : 0x5.8e607be4bc4a0303cbe388d3bc7cp-4 : inexact-ok
+= acosh downward ibm128 0x1.0f97586eba09p+0 : 0x5.8e607be4bc4a0303cbe388d3bcp-4 : inexact-ok
+= acosh tonearest ibm128 0x1.0f97586eba09p+0 : 0x5.8e607be4bc4a0303cbe388d3bcp-4 : inexact-ok
+= acosh towardzero ibm128 0x1.0f97586eba09p+0 : 0x5.8e607be4bc4a0303cbe388d3bcp-4 : inexact-ok
+= acosh upward ibm128 0x1.0f97586eba09p+0 : 0x5.8e607be4bc4a0303cbe388d3bep-4 : inexact-ok
+= acosh downward intel96 0x1.0f97586eba090202p+0 : 0x5.8e607be4bc4a5dbp-4 : inexact-ok
+= acosh tonearest intel96 0x1.0f97586eba090202p+0 : 0x5.8e607be4bc4a5dbp-4 : inexact-ok
+= acosh towardzero intel96 0x1.0f97586eba090202p+0 : 0x5.8e607be4bc4a5dbp-4 : inexact-ok
+= acosh upward intel96 0x1.0f97586eba090202p+0 : 0x5.8e607be4bc4a5db8p-4 : inexact-ok
+= acosh downward m68k96 0x1.0f97586eba090202p+0 : 0x5.8e607be4bc4a5dbp-4 : inexact-ok
+= acosh tonearest m68k96 0x1.0f97586eba090202p+0 : 0x5.8e607be4bc4a5dbp-4 : inexact-ok
+= acosh towardzero m68k96 0x1.0f97586eba090202p+0 : 0x5.8e607be4bc4a5dbp-4 : inexact-ok
+= acosh upward m68k96 0x1.0f97586eba090202p+0 : 0x5.8e607be4bc4a5db8p-4 : inexact-ok
+= acosh downward binary128 0x1.0f97586eba090202p+0 : 0x5.8e607be4bc4a5db0f9beeaa67bep-4 : inexact-ok
+= acosh tonearest binary128 0x1.0f97586eba090202p+0 : 0x5.8e607be4bc4a5db0f9beeaa67be4p-4 : inexact-ok
+= acosh towardzero binary128 0x1.0f97586eba090202p+0 : 0x5.8e607be4bc4a5db0f9beeaa67bep-4 : inexact-ok
+= acosh upward binary128 0x1.0f97586eba090202p+0 : 0x5.8e607be4bc4a5db0f9beeaa67be4p-4 : inexact-ok
+= acosh downward ibm128 0x1.0f97586eba090202p+0 : 0x5.8e607be4bc4a5db0f9beeaa67ap-4 : inexact-ok
+= acosh tonearest ibm128 0x1.0f97586eba090202p+0 : 0x5.8e607be4bc4a5db0f9beeaa67cp-4 : inexact-ok
+= acosh towardzero ibm128 0x1.0f97586eba090202p+0 : 0x5.8e607be4bc4a5db0f9beeaa67ap-4 : inexact-ok
+= acosh upward ibm128 0x1.0f97586eba090202p+0 : 0x5.8e607be4bc4a5db0f9beeaa67cp-4 : inexact-ok
+= acosh downward intel96 0x1.0f97586eba0902p+0 : 0x5.8e607be4bc4a5d5p-4 : inexact-ok
+= acosh tonearest intel96 0x1.0f97586eba0902p+0 : 0x5.8e607be4bc4a5d58p-4 : inexact-ok
+= acosh towardzero intel96 0x1.0f97586eba0902p+0 : 0x5.8e607be4bc4a5d5p-4 : inexact-ok
+= acosh upward intel96 0x1.0f97586eba0902p+0 : 0x5.8e607be4bc4a5d58p-4 : inexact-ok
+= acosh downward m68k96 0x1.0f97586eba0902p+0 : 0x5.8e607be4bc4a5d5p-4 : inexact-ok
+= acosh tonearest m68k96 0x1.0f97586eba0902p+0 : 0x5.8e607be4bc4a5d58p-4 : inexact-ok
+= acosh towardzero m68k96 0x1.0f97586eba0902p+0 : 0x5.8e607be4bc4a5d5p-4 : inexact-ok
+= acosh upward m68k96 0x1.0f97586eba0902p+0 : 0x5.8e607be4bc4a5d58p-4 : inexact-ok
+= acosh downward binary128 0x1.0f97586eba0902p+0 : 0x5.8e607be4bc4a5d56a6e3ea450a98p-4 : inexact-ok
+= acosh tonearest binary128 0x1.0f97586eba0902p+0 : 0x5.8e607be4bc4a5d56a6e3ea450a98p-4 : inexact-ok
+= acosh towardzero binary128 0x1.0f97586eba0902p+0 : 0x5.8e607be4bc4a5d56a6e3ea450a98p-4 : inexact-ok
+= acosh upward binary128 0x1.0f97586eba0902p+0 : 0x5.8e607be4bc4a5d56a6e3ea450a9cp-4 : inexact-ok
+= acosh downward ibm128 0x1.0f97586eba0902p+0 : 0x5.8e607be4bc4a5d56a6e3ea450ap-4 : inexact-ok
+= acosh tonearest ibm128 0x1.0f97586eba0902p+0 : 0x5.8e607be4bc4a5d56a6e3ea450ap-4 : inexact-ok
+= acosh towardzero ibm128 0x1.0f97586eba0902p+0 : 0x5.8e607be4bc4a5d56a6e3ea450ap-4 : inexact-ok
+= acosh upward ibm128 0x1.0f97586eba0902p+0 : 0x5.8e607be4bc4a5d56a6e3ea450cp-4 : inexact-ok
+= acosh downward binary128 0x1.0f97586eba090200118df0902f99p+0 : 0x5.8e607be4bc4a5d59bfae715e3d0cp-4 : inexact-ok
+= acosh tonearest binary128 0x1.0f97586eba090200118df0902f99p+0 : 0x5.8e607be4bc4a5d59bfae715e3d1p-4 : inexact-ok
+= acosh towardzero binary128 0x1.0f97586eba090200118df0902f99p+0 : 0x5.8e607be4bc4a5d59bfae715e3d0cp-4 : inexact-ok
+= acosh upward binary128 0x1.0f97586eba090200118df0902f99p+0 : 0x5.8e607be4bc4a5d59bfae715e3d1p-4 : inexact-ok
+= acosh downward binary128 0x1.0f97586eba090200118df0903p+0 : 0x5.8e607be4bc4a5d59bfae715e4f38p-4 : inexact-ok
+= acosh tonearest binary128 0x1.0f97586eba090200118df0903p+0 : 0x5.8e607be4bc4a5d59bfae715e4f3cp-4 : inexact-ok
+= acosh towardzero binary128 0x1.0f97586eba090200118df0903p+0 : 0x5.8e607be4bc4a5d59bfae715e4f38p-4 : inexact-ok
+= acosh upward binary128 0x1.0f97586eba090200118df0903p+0 : 0x5.8e607be4bc4a5d59bfae715e4f3cp-4 : inexact-ok
+= acosh downward ibm128 0x1.0f97586eba090200118df0903p+0 : 0x5.8e607be4bc4a5d59bfae715e4ep-4 : inexact-ok
+= acosh tonearest ibm128 0x1.0f97586eba090200118df0903p+0 : 0x5.8e607be4bc4a5d59bfae715e5p-4 : inexact-ok
+= acosh towardzero ibm128 0x1.0f97586eba090200118df0903p+0 : 0x5.8e607be4bc4a5d59bfae715e4ep-4 : inexact-ok
+= acosh upward ibm128 0x1.0f97586eba090200118df0903p+0 : 0x5.8e607be4bc4a5d59bfae715e5p-4 : inexact-ok
+= acosh downward binary128 0x1.0f97586eba090200118df0902f8p+0 : 0x5.8e607be4bc4a5d59bfae715e38a4p-4 : inexact-ok
+= acosh tonearest binary128 0x1.0f97586eba090200118df0902f8p+0 : 0x5.8e607be4bc4a5d59bfae715e38a8p-4 : inexact-ok
+= acosh towardzero binary128 0x1.0f97586eba090200118df0902f8p+0 : 0x5.8e607be4bc4a5d59bfae715e38a4p-4 : inexact-ok
+= acosh upward binary128 0x1.0f97586eba090200118df0902f8p+0 : 0x5.8e607be4bc4a5d59bfae715e38a8p-4 : inexact-ok
+= acosh downward ibm128 0x1.0f97586eba090200118df0902f8p+0 : 0x5.8e607be4bc4a5d59bfae715e38p-4 : inexact-ok
+= acosh tonearest ibm128 0x1.0f97586eba090200118df0902f8p+0 : 0x5.8e607be4bc4a5d59bfae715e38p-4 : inexact-ok
+= acosh towardzero ibm128 0x1.0f97586eba090200118df0902f8p+0 : 0x5.8e607be4bc4a5d59bfae715e38p-4 : inexact-ok
+= acosh upward ibm128 0x1.0f97586eba090200118df0902f8p+0 : 0x5.8e607be4bc4a5d59bfae715e3ap-4 : inexact-ok
 acosh max
 = acosh downward binary32 0xf.fffffp+124 : 0x5.96a7ep+4 : inexact-ok
 = acosh tonearest binary32 0xf.fffffp+124 : 0x5.96a7ep+4 : inexact-ok
diff --git a/math/auto-libm-test-out-asin b/math/auto-libm-test-out-asin
index b792377971..8d55122a69 100644
--- a/math/auto-libm-test-out-asin
+++ b/math/auto-libm-test-out-asin
@@ -2055,6 +2055,75 @@ asin -0xb.36dacp-4
 = asin tonearest ibm128 -0xb.36dacp-4 : -0xc.6d260a784d776d866f2a5ba71cp-4 : inexact-ok
 = asin towardzero ibm128 -0xb.36dacp-4 : -0xc.6d260a784d776d866f2a5ba71cp-4 : inexact-ok
 = asin upward ibm128 -0xb.36dacp-4 : -0xc.6d260a784d776d866f2a5ba71cp-4 : inexact-ok
+asin 0x1.f6041ffe89d7dp-4
+= asin downward binary32 0x1.f6042p-4 : 0x1.f74812p-4 : inexact-ok
+= asin tonearest binary32 0x1.f6042p-4 : 0x1.f74812p-4 : inexact-ok
+= asin towardzero binary32 0x1.f6042p-4 : 0x1.f74812p-4 : inexact-ok
+= asin upward binary32 0x1.f6042p-4 : 0x1.f74814p-4 : inexact-ok
+= asin downward binary64 0x1.f6042p-4 : 0x1.f748126e5e9c7p-4 : inexact-ok
+= asin tonearest binary64 0x1.f6042p-4 : 0x1.f748126e5e9c7p-4 : inexact-ok
+= asin towardzero binary64 0x1.f6042p-4 : 0x1.f748126e5e9c7p-4 : inexact-ok
+= asin upward binary64 0x1.f6042p-4 : 0x1.f748126e5e9c8p-4 : inexact-ok
+= asin downward intel96 0x1.f6042p-4 : 0x1.f748126e5e9c7758p-4 : inexact-ok
+= asin tonearest intel96 0x1.f6042p-4 : 0x1.f748126e5e9c775ap-4 : inexact-ok
+= asin towardzero intel96 0x1.f6042p-4 : 0x1.f748126e5e9c7758p-4 : inexact-ok
+= asin upward intel96 0x1.f6042p-4 : 0x1.f748126e5e9c775ap-4 : inexact-ok
+= asin downward m68k96 0x1.f6042p-4 : 0x1.f748126e5e9c7758p-4 : inexact-ok
+= asin tonearest m68k96 0x1.f6042p-4 : 0x1.f748126e5e9c775ap-4 : inexact-ok
+= asin towardzero m68k96 0x1.f6042p-4 : 0x1.f748126e5e9c7758p-4 : inexact-ok
+= asin upward m68k96 0x1.f6042p-4 : 0x1.f748126e5e9c775ap-4 : inexact-ok
+= asin downward binary128 0x1.f6042p-4 : 0x1.f748126e5e9c775939d42471f786p-4 : inexact-ok
+= asin tonearest binary128 0x1.f6042p-4 : 0x1.f748126e5e9c775939d42471f787p-4 : inexact-ok
+= asin towardzero binary128 0x1.f6042p-4 : 0x1.f748126e5e9c775939d42471f786p-4 : inexact-ok
+= asin upward binary128 0x1.f6042p-4 : 0x1.f748126e5e9c775939d42471f787p-4 : inexact-ok
+= asin downward ibm128 0x1.f6042p-4 : 0x1.f748126e5e9c775939d42471f78p-4 : inexact-ok
+= asin tonearest ibm128 0x1.f6042p-4 : 0x1.f748126e5e9c775939d42471f78p-4 : inexact-ok
+= asin towardzero ibm128 0x1.f6042p-4 : 0x1.f748126e5e9c775939d42471f78p-4 : inexact-ok
+= asin upward ibm128 0x1.f6042p-4 : 0x1.f748126e5e9c775939d42471f8p-4 : inexact-ok
+= asin downward binary32 0x1.f6041ep-4 : 0x1.f7481p-4 : inexact-ok
+= asin tonearest binary32 0x1.f6041ep-4 : 0x1.f7481p-4 : inexact-ok
+= asin towardzero binary32 0x1.f6041ep-4 : 0x1.f7481p-4 : inexact-ok
+= asin upward binary32 0x1.f6041ep-4 : 0x1.f74812p-4 : inexact-ok
+= asin downward binary64 0x1.f6041ep-4 : 0x1.f748106a7aecfp-4 : inexact-ok
+= asin tonearest binary64 0x1.f6041ep-4 : 0x1.f748106a7aedp-4 : inexact-ok
+= asin towardzero binary64 0x1.f6041ep-4 : 0x1.f748106a7aecfp-4 : inexact-ok
+= asin upward binary64 0x1.f6041ep-4 : 0x1.f748106a7aedp-4 : inexact-ok
+= asin downward intel96 0x1.f6041ep-4 : 0x1.f748106a7aecfbb8p-4 : inexact-ok
+= asin tonearest intel96 0x1.f6041ep-4 : 0x1.f748106a7aecfbbap-4 : inexact-ok
+= asin towardzero intel96 0x1.f6041ep-4 : 0x1.f748106a7aecfbb8p-4 : inexact-ok
+= asin upward intel96 0x1.f6041ep-4 : 0x1.f748106a7aecfbbap-4 : inexact-ok
+= asin downward m68k96 0x1.f6041ep-4 : 0x1.f748106a7aecfbb8p-4 : inexact-ok
+= asin tonearest m68k96 0x1.f6041ep-4 : 0x1.f748106a7aecfbbap-4 : inexact-ok
+= asin towardzero m68k96 0x1.f6041ep-4 : 0x1.f748106a7aecfbb8p-4 : inexact-ok
+= asin upward m68k96 0x1.f6041ep-4 : 0x1.f748106a7aecfbbap-4 : inexact-ok
+= asin downward binary128 0x1.f6041ep-4 : 0x1.f748106a7aecfbb9aa3dd90f9d1bp-4 : inexact-ok
+= asin tonearest binary128 0x1.f6041ep-4 : 0x1.f748106a7aecfbb9aa3dd90f9d1bp-4 : inexact-ok
+= asin towardzero binary128 0x1.f6041ep-4 : 0x1.f748106a7aecfbb9aa3dd90f9d1bp-4 : inexact-ok
+= asin upward binary128 0x1.f6041ep-4 : 0x1.f748106a7aecfbb9aa3dd90f9d1cp-4 : inexact-ok
+= asin downward ibm128 0x1.f6041ep-4 : 0x1.f748106a7aecfbb9aa3dd90f9dp-4 : inexact-ok
+= asin tonearest ibm128 0x1.f6041ep-4 : 0x1.f748106a7aecfbb9aa3dd90f9dp-4 : inexact-ok
+= asin towardzero ibm128 0x1.f6041ep-4 : 0x1.f748106a7aecfbb9aa3dd90f9dp-4 : inexact-ok
+= asin upward ibm128 0x1.f6041ep-4 : 0x1.f748106a7aecfbb9aa3dd90f9d8p-4 : inexact-ok
+= asin downward binary64 0x1.f6041ffe89d7dp-4 : 0x1.f748126ce59cap-4 : inexact-ok
+= asin tonearest binary64 0x1.f6041ffe89d7dp-4 : 0x1.f748126ce59cap-4 : inexact-ok
+= asin towardzero binary64 0x1.f6041ffe89d7dp-4 : 0x1.f748126ce59cap-4 : inexact-ok
+= asin upward binary64 0x1.f6041ffe89d7dp-4 : 0x1.f748126ce59cbp-4 : inexact-ok
+= asin downward intel96 0x1.f6041ffe89d7dp-4 : 0x1.f748126ce59ca7fep-4 : inexact-ok
+= asin tonearest intel96 0x1.f6041ffe89d7dp-4 : 0x1.f748126ce59ca8p-4 : inexact-ok
+= asin towardzero intel96 0x1.f6041ffe89d7dp-4 : 0x1.f748126ce59ca7fep-4 : inexact-ok
+= asin upward intel96 0x1.f6041ffe89d7dp-4 : 0x1.f748126ce59ca8p-4 : inexact-ok
+= asin downward m68k96 0x1.f6041ffe89d7dp-4 : 0x1.f748126ce59ca7fep-4 : inexact-ok
+= asin tonearest m68k96 0x1.f6041ffe89d7dp-4 : 0x1.f748126ce59ca8p-4 : inexact-ok
+= asin towardzero m68k96 0x1.f6041ffe89d7dp-4 : 0x1.f748126ce59ca7fep-4 : inexact-ok
+= asin upward m68k96 0x1.f6041ffe89d7dp-4 : 0x1.f748126ce59ca8p-4 : inexact-ok
+= asin downward binary128 0x1.f6041ffe89d7dp-4 : 0x1.f748126ce59ca7fff1bcaa701b1dp-4 : inexact-ok
+= asin tonearest binary128 0x1.f6041ffe89d7dp-4 : 0x1.f748126ce59ca7fff1bcaa701b1ep-4 : inexact-ok
+= asin towardzero binary128 0x1.f6041ffe89d7dp-4 : 0x1.f748126ce59ca7fff1bcaa701b1dp-4 : inexact-ok
+= asin upward binary128 0x1.f6041ffe89d7dp-4 : 0x1.f748126ce59ca7fff1bcaa701b1ep-4 : inexact-ok
+= asin downward ibm128 0x1.f6041ffe89d7dp-4 : 0x1.f748126ce59ca7fff1bcaa701bp-4 : inexact-ok
+= asin tonearest ibm128 0x1.f6041ffe89d7dp-4 : 0x1.f748126ce59ca7fff1bcaa701bp-4 : inexact-ok
+= asin towardzero ibm128 0x1.f6041ffe89d7dp-4 : 0x1.f748126ce59ca7fff1bcaa701bp-4 : inexact-ok
+= asin upward ibm128 0x1.f6041ffe89d7dp-4 : 0x1.f748126ce59ca7fff1bcaa701b8p-4 : inexact-ok
 asin min
 = asin downward binary32 0x4p-128 : 0x4p-128 : inexact-ok underflow-ok errno-erange-ok
 = asin tonearest binary32 0x4p-128 : 0x4p-128 : inexact-ok underflow-ok errno-erange-ok
diff --git a/math/auto-libm-test-out-asinh b/math/auto-libm-test-out-asinh
index 85efa466f4..df2c04f623 100644
--- a/math/auto-libm-test-out-asinh
+++ b/math/auto-libm-test-out-asinh
@@ -2600,6 +2600,147 @@ asinh 0x1.023cfeab10a13p-2
 = asinh tonearest ibm128 0x4.08f3faac4284cp-4 : 0x3.fe4e5d9acef73cd0062bafd4f4p-4 : inexact-ok
 = asinh towardzero ibm128 0x4.08f3faac4284cp-4 : 0x3.fe4e5d9acef73cd0062bafd4f4p-4 : inexact-ok
 = asinh upward ibm128 0x4.08f3faac4284cp-4 : 0x3.fe4e5d9acef73cd0062bafd4f5p-4 : inexact-ok
+asinh -0x5.a95683e302a71be88a35649b24ep-4
+= asinh downward binary32 -0x5.a9568p-4 : -0x5.8cae58p-4 : inexact-ok
+= asinh tonearest binary32 -0x5.a9568p-4 : -0x5.8cae5p-4 : inexact-ok
+= asinh towardzero binary32 -0x5.a9568p-4 : -0x5.8cae5p-4 : inexact-ok
+= asinh upward binary32 -0x5.a9568p-4 : -0x5.8cae5p-4 : inexact-ok
+= asinh downward binary64 -0x5.a9568p-4 : -0x5.8cae501409e8cp-4 : inexact-ok
+= asinh tonearest binary64 -0x5.a9568p-4 : -0x5.8cae501409e88p-4 : inexact-ok
+= asinh towardzero binary64 -0x5.a9568p-4 : -0x5.8cae501409e88p-4 : inexact-ok
+= asinh upward binary64 -0x5.a9568p-4 : -0x5.8cae501409e88p-4 : inexact-ok
+= asinh downward intel96 -0x5.a9568p-4 : -0x5.8cae501409e8838p-4 : inexact-ok
+= asinh tonearest intel96 -0x5.a9568p-4 : -0x5.8cae501409e88378p-4 : inexact-ok
+= asinh towardzero intel96 -0x5.a9568p-4 : -0x5.8cae501409e88378p-4 : inexact-ok
+= asinh upward intel96 -0x5.a9568p-4 : -0x5.8cae501409e88378p-4 : inexact-ok
+= asinh downward m68k96 -0x5.a9568p-4 : -0x5.8cae501409e8838p-4 : inexact-ok
+= asinh tonearest m68k96 -0x5.a9568p-4 : -0x5.8cae501409e88378p-4 : inexact-ok
+= asinh towardzero m68k96 -0x5.a9568p-4 : -0x5.8cae501409e88378p-4 : inexact-ok
+= asinh upward m68k96 -0x5.a9568p-4 : -0x5.8cae501409e88378p-4 : inexact-ok
+= asinh downward binary128 -0x5.a9568p-4 : -0x5.8cae501409e8837aba5edefb985p-4 : inexact-ok
+= asinh tonearest binary128 -0x5.a9568p-4 : -0x5.8cae501409e8837aba5edefb984cp-4 : inexact-ok
+= asinh towardzero binary128 -0x5.a9568p-4 : -0x5.8cae501409e8837aba5edefb984cp-4 : inexact-ok
+= asinh upward binary128 -0x5.a9568p-4 : -0x5.8cae501409e8837aba5edefb984cp-4 : inexact-ok
+= asinh downward ibm128 -0x5.a9568p-4 : -0x5.8cae501409e8837aba5edefb9ap-4 : inexact-ok
+= asinh tonearest ibm128 -0x5.a9568p-4 : -0x5.8cae501409e8837aba5edefb98p-4 : inexact-ok
+= asinh towardzero ibm128 -0x5.a9568p-4 : -0x5.8cae501409e8837aba5edefb98p-4 : inexact-ok
+= asinh upward ibm128 -0x5.a9568p-4 : -0x5.8cae501409e8837aba5edefb98p-4 : inexact-ok
+= asinh downward binary32 -0x5.a95688p-4 : -0x5.8cae58p-4 : inexact-ok
+= asinh tonearest binary32 -0x5.a95688p-4 : -0x5.8cae58p-4 : inexact-ok
+= asinh towardzero binary32 -0x5.a95688p-4 : -0x5.8cae5p-4 : inexact-ok
+= asinh upward binary32 -0x5.a95688p-4 : -0x5.8cae5p-4 : inexact-ok
+= asinh downward binary64 -0x5.a95688p-4 : -0x5.8cae579ebc7ccp-4 : inexact-ok
+= asinh tonearest binary64 -0x5.a95688p-4 : -0x5.8cae579ebc7c8p-4 : inexact-ok
+= asinh towardzero binary64 -0x5.a95688p-4 : -0x5.8cae579ebc7c8p-4 : inexact-ok
+= asinh upward binary64 -0x5.a95688p-4 : -0x5.8cae579ebc7c8p-4 : inexact-ok
+= asinh downward intel96 -0x5.a95688p-4 : -0x5.8cae579ebc7c886p-4 : inexact-ok
+= asinh tonearest intel96 -0x5.a95688p-4 : -0x5.8cae579ebc7c886p-4 : inexact-ok
+= asinh towardzero intel96 -0x5.a95688p-4 : -0x5.8cae579ebc7c8858p-4 : inexact-ok
+= asinh upward intel96 -0x5.a95688p-4 : -0x5.8cae579ebc7c8858p-4 : inexact-ok
+= asinh downward m68k96 -0x5.a95688p-4 : -0x5.8cae579ebc7c886p-4 : inexact-ok
+= asinh tonearest m68k96 -0x5.a95688p-4 : -0x5.8cae579ebc7c886p-4 : inexact-ok
+= asinh towardzero m68k96 -0x5.a95688p-4 : -0x5.8cae579ebc7c8858p-4 : inexact-ok
+= asinh upward m68k96 -0x5.a95688p-4 : -0x5.8cae579ebc7c8858p-4 : inexact-ok
+= asinh downward binary128 -0x5.a95688p-4 : -0x5.8cae579ebc7c885e6164f2f1983cp-4 : inexact-ok
+= asinh tonearest binary128 -0x5.a95688p-4 : -0x5.8cae579ebc7c885e6164f2f19838p-4 : inexact-ok
+= asinh towardzero binary128 -0x5.a95688p-4 : -0x5.8cae579ebc7c885e6164f2f19838p-4 : inexact-ok
+= asinh upward binary128 -0x5.a95688p-4 : -0x5.8cae579ebc7c885e6164f2f19838p-4 : inexact-ok
+= asinh downward ibm128 -0x5.a95688p-4 : -0x5.8cae579ebc7c885e6164f2f19ap-4 : inexact-ok
+= asinh tonearest ibm128 -0x5.a95688p-4 : -0x5.8cae579ebc7c885e6164f2f198p-4 : inexact-ok
+= asinh towardzero ibm128 -0x5.a95688p-4 : -0x5.8cae579ebc7c885e6164f2f198p-4 : inexact-ok
+= asinh upward ibm128 -0x5.a95688p-4 : -0x5.8cae579ebc7c885e6164f2f198p-4 : inexact-ok
+= asinh downward binary64 -0x5.a95683e302a7p-4 : -0x5.8cae53be0eeb8p-4 : inexact-ok
+= asinh tonearest binary64 -0x5.a95683e302a7p-4 : -0x5.8cae53be0eeb8p-4 : inexact-ok
+= asinh towardzero binary64 -0x5.a95683e302a7p-4 : -0x5.8cae53be0eeb4p-4 : inexact-ok
+= asinh upward binary64 -0x5.a95683e302a7p-4 : -0x5.8cae53be0eeb4p-4 : inexact-ok
+= asinh downward intel96 -0x5.a95683e302a7p-4 : -0x5.8cae53be0eeb6f4p-4 : inexact-ok
+= asinh tonearest intel96 -0x5.a95683e302a7p-4 : -0x5.8cae53be0eeb6f38p-4 : inexact-ok
+= asinh towardzero intel96 -0x5.a95683e302a7p-4 : -0x5.8cae53be0eeb6f38p-4 : inexact-ok
+= asinh upward intel96 -0x5.a95683e302a7p-4 : -0x5.8cae53be0eeb6f38p-4 : inexact-ok
+= asinh downward m68k96 -0x5.a95683e302a7p-4 : -0x5.8cae53be0eeb6f4p-4 : inexact-ok
+= asinh tonearest m68k96 -0x5.a95683e302a7p-4 : -0x5.8cae53be0eeb6f38p-4 : inexact-ok
+= asinh towardzero m68k96 -0x5.a95683e302a7p-4 : -0x5.8cae53be0eeb6f38p-4 : inexact-ok
+= asinh upward m68k96 -0x5.a95683e302a7p-4 : -0x5.8cae53be0eeb6f38p-4 : inexact-ok
+= asinh downward binary128 -0x5.a95683e302a7p-4 : -0x5.8cae53be0eeb6f3a31576ce08edcp-4 : inexact-ok
+= asinh tonearest binary128 -0x5.a95683e302a7p-4 : -0x5.8cae53be0eeb6f3a31576ce08edcp-4 : inexact-ok
+= asinh towardzero binary128 -0x5.a95683e302a7p-4 : -0x5.8cae53be0eeb6f3a31576ce08ed8p-4 : inexact-ok
+= asinh upward binary128 -0x5.a95683e302a7p-4 : -0x5.8cae53be0eeb6f3a31576ce08ed8p-4 : inexact-ok
+= asinh downward ibm128 -0x5.a95683e302a7p-4 : -0x5.8cae53be0eeb6f3a31576ce09p-4 : inexact-ok
+= asinh tonearest ibm128 -0x5.a95683e302a7p-4 : -0x5.8cae53be0eeb6f3a31576ce08ep-4 : inexact-ok
+= asinh towardzero ibm128 -0x5.a95683e302a7p-4 : -0x5.8cae53be0eeb6f3a31576ce08ep-4 : inexact-ok
+= asinh upward ibm128 -0x5.a95683e302a7p-4 : -0x5.8cae53be0eeb6f3a31576ce08ep-4 : inexact-ok
+= asinh downward binary64 -0x5.a95683e302a74p-4 : -0x5.8cae53be0eebcp-4 : inexact-ok
+= asinh tonearest binary64 -0x5.a95683e302a74p-4 : -0x5.8cae53be0eebcp-4 : inexact-ok
+= asinh towardzero binary64 -0x5.a95683e302a74p-4 : -0x5.8cae53be0eeb8p-4 : inexact-ok
+= asinh upward binary64 -0x5.a95683e302a74p-4 : -0x5.8cae53be0eeb8p-4 : inexact-ok
+= asinh downward intel96 -0x5.a95683e302a74p-4 : -0x5.8cae53be0eebab9p-4 : inexact-ok
+= asinh tonearest intel96 -0x5.a95683e302a74p-4 : -0x5.8cae53be0eebab9p-4 : inexact-ok
+= asinh towardzero intel96 -0x5.a95683e302a74p-4 : -0x5.8cae53be0eebab88p-4 : inexact-ok
+= asinh upward intel96 -0x5.a95683e302a74p-4 : -0x5.8cae53be0eebab88p-4 : inexact-ok
+= asinh downward m68k96 -0x5.a95683e302a74p-4 : -0x5.8cae53be0eebab9p-4 : inexact-ok
+= asinh tonearest m68k96 -0x5.a95683e302a74p-4 : -0x5.8cae53be0eebab9p-4 : inexact-ok
+= asinh towardzero m68k96 -0x5.a95683e302a74p-4 : -0x5.8cae53be0eebab88p-4 : inexact-ok
+= asinh upward m68k96 -0x5.a95683e302a74p-4 : -0x5.8cae53be0eebab88p-4 : inexact-ok
+= asinh downward binary128 -0x5.a95683e302a74p-4 : -0x5.8cae53be0eebab8fc5f7b65e3d1p-4 : inexact-ok
+= asinh tonearest binary128 -0x5.a95683e302a74p-4 : -0x5.8cae53be0eebab8fc5f7b65e3d1p-4 : inexact-ok
+= asinh towardzero binary128 -0x5.a95683e302a74p-4 : -0x5.8cae53be0eebab8fc5f7b65e3d0cp-4 : inexact-ok
+= asinh upward binary128 -0x5.a95683e302a74p-4 : -0x5.8cae53be0eebab8fc5f7b65e3d0cp-4 : inexact-ok
+= asinh downward ibm128 -0x5.a95683e302a74p-4 : -0x5.8cae53be0eebab8fc5f7b65e3ep-4 : inexact-ok
+= asinh tonearest ibm128 -0x5.a95683e302a74p-4 : -0x5.8cae53be0eebab8fc5f7b65e3ep-4 : inexact-ok
+= asinh towardzero ibm128 -0x5.a95683e302a74p-4 : -0x5.8cae53be0eebab8fc5f7b65e3cp-4 : inexact-ok
+= asinh upward ibm128 -0x5.a95683e302a74p-4 : -0x5.8cae53be0eebab8fc5f7b65e3cp-4 : inexact-ok
+= asinh downward intel96 -0x5.a95683e302a71be8p-4 : -0x5.8cae53be0eeb899p-4 : inexact-ok
+= asinh tonearest intel96 -0x5.a95683e302a71be8p-4 : -0x5.8cae53be0eeb8988p-4 : inexact-ok
+= asinh towardzero intel96 -0x5.a95683e302a71be8p-4 : -0x5.8cae53be0eeb8988p-4 : inexact-ok
+= asinh upward intel96 -0x5.a95683e302a71be8p-4 : -0x5.8cae53be0eeb8988p-4 : inexact-ok
+= asinh downward m68k96 -0x5.a95683e302a71be8p-4 : -0x5.8cae53be0eeb899p-4 : inexact-ok
+= asinh tonearest m68k96 -0x5.a95683e302a71be8p-4 : -0x5.8cae53be0eeb8988p-4 : inexact-ok
+= asinh towardzero m68k96 -0x5.a95683e302a71be8p-4 : -0x5.8cae53be0eeb8988p-4 : inexact-ok
+= asinh upward m68k96 -0x5.a95683e302a71be8p-4 : -0x5.8cae53be0eeb8988p-4 : inexact-ok
+= asinh downward binary128 -0x5.a95683e302a71be8p-4 : -0x5.8cae53be0eeb89890245d0ebfbfcp-4 : inexact-ok
+= asinh tonearest binary128 -0x5.a95683e302a71be8p-4 : -0x5.8cae53be0eeb89890245d0ebfbfcp-4 : inexact-ok
+= asinh towardzero binary128 -0x5.a95683e302a71be8p-4 : -0x5.8cae53be0eeb89890245d0ebfbf8p-4 : inexact-ok
+= asinh upward binary128 -0x5.a95683e302a71be8p-4 : -0x5.8cae53be0eeb89890245d0ebfbf8p-4 : inexact-ok
+= asinh downward ibm128 -0x5.a95683e302a71be8p-4 : -0x5.8cae53be0eeb89890245d0ebfcp-4 : inexact-ok
+= asinh tonearest ibm128 -0x5.a95683e302a71be8p-4 : -0x5.8cae53be0eeb89890245d0ebfcp-4 : inexact-ok
+= asinh towardzero ibm128 -0x5.a95683e302a71be8p-4 : -0x5.8cae53be0eeb89890245d0ebfap-4 : inexact-ok
+= asinh upward ibm128 -0x5.a95683e302a71be8p-4 : -0x5.8cae53be0eeb89890245d0ebfap-4 : inexact-ok
+= asinh downward intel96 -0x5.a95683e302a71bfp-4 : -0x5.8cae53be0eeb8998p-4 : inexact-ok
+= asinh tonearest intel96 -0x5.a95683e302a71bfp-4 : -0x5.8cae53be0eeb899p-4 : inexact-ok
+= asinh towardzero intel96 -0x5.a95683e302a71bfp-4 : -0x5.8cae53be0eeb899p-4 : inexact-ok
+= asinh upward intel96 -0x5.a95683e302a71bfp-4 : -0x5.8cae53be0eeb899p-4 : inexact-ok
+= asinh downward m68k96 -0x5.a95683e302a71bfp-4 : -0x5.8cae53be0eeb8998p-4 : inexact-ok
+= asinh tonearest m68k96 -0x5.a95683e302a71bfp-4 : -0x5.8cae53be0eeb899p-4 : inexact-ok
+= asinh towardzero m68k96 -0x5.a95683e302a71bfp-4 : -0x5.8cae53be0eeb899p-4 : inexact-ok
+= asinh upward m68k96 -0x5.a95683e302a71bfp-4 : -0x5.8cae53be0eeb899p-4 : inexact-ok
+= asinh downward binary128 -0x5.a95683e302a71bfp-4 : -0x5.8cae53be0eeb89908cf864f52bbp-4 : inexact-ok
+= asinh tonearest binary128 -0x5.a95683e302a71bfp-4 : -0x5.8cae53be0eeb89908cf864f52bbp-4 : inexact-ok
+= asinh towardzero binary128 -0x5.a95683e302a71bfp-4 : -0x5.8cae53be0eeb89908cf864f52bacp-4 : inexact-ok
+= asinh upward binary128 -0x5.a95683e302a71bfp-4 : -0x5.8cae53be0eeb89908cf864f52bacp-4 : inexact-ok
+= asinh downward ibm128 -0x5.a95683e302a71bfp-4 : -0x5.8cae53be0eeb89908cf864f52cp-4 : inexact-ok
+= asinh tonearest ibm128 -0x5.a95683e302a71bfp-4 : -0x5.8cae53be0eeb89908cf864f52cp-4 : inexact-ok
+= asinh towardzero ibm128 -0x5.a95683e302a71bfp-4 : -0x5.8cae53be0eeb89908cf864f52ap-4 : inexact-ok
+= asinh upward ibm128 -0x5.a95683e302a71bfp-4 : -0x5.8cae53be0eeb89908cf864f52ap-4 : inexact-ok
+= asinh downward binary128 -0x5.a95683e302a71be88a35649b24ep-4 : -0x5.8cae53be0eeb89898490af1ca97p-4 : inexact-ok
+= asinh tonearest binary128 -0x5.a95683e302a71be88a35649b24ep-4 : -0x5.8cae53be0eeb89898490af1ca97p-4 : inexact-ok
+= asinh towardzero binary128 -0x5.a95683e302a71be88a35649b24ep-4 : -0x5.8cae53be0eeb89898490af1ca96cp-4 : inexact-ok
+= asinh upward binary128 -0x5.a95683e302a71be88a35649b24ep-4 : -0x5.8cae53be0eeb89898490af1ca96cp-4 : inexact-ok
+= asinh downward binary128 -0x5.a95683e302a71be88a35649b24p-4 : -0x5.8cae53be0eeb89898490af1ca8ap-4 : inexact-ok
+= asinh tonearest binary128 -0x5.a95683e302a71be88a35649b24p-4 : -0x5.8cae53be0eeb89898490af1ca89cp-4 : inexact-ok
+= asinh towardzero binary128 -0x5.a95683e302a71be88a35649b24p-4 : -0x5.8cae53be0eeb89898490af1ca89cp-4 : inexact-ok
+= asinh upward binary128 -0x5.a95683e302a71be88a35649b24p-4 : -0x5.8cae53be0eeb89898490af1ca89cp-4 : inexact-ok
+= asinh downward ibm128 -0x5.a95683e302a71be88a35649b24p-4 : -0x5.8cae53be0eeb89898490af1caap-4 : inexact-ok
+= asinh tonearest ibm128 -0x5.a95683e302a71be88a35649b24p-4 : -0x5.8cae53be0eeb89898490af1ca8p-4 : inexact-ok
+= asinh towardzero ibm128 -0x5.a95683e302a71be88a35649b24p-4 : -0x5.8cae53be0eeb89898490af1ca8p-4 : inexact-ok
+= asinh upward ibm128 -0x5.a95683e302a71be88a35649b24p-4 : -0x5.8cae53be0eeb89898490af1ca8p-4 : inexact-ok
+= asinh downward binary128 -0x5.a95683e302a71be88a35649b26p-4 : -0x5.8cae53be0eeb89898490af1caa8p-4 : inexact-ok
+= asinh tonearest binary128 -0x5.a95683e302a71be88a35649b26p-4 : -0x5.8cae53be0eeb89898490af1caa8p-4 : inexact-ok
+= asinh towardzero binary128 -0x5.a95683e302a71be88a35649b26p-4 : -0x5.8cae53be0eeb89898490af1caa7cp-4 : inexact-ok
+= asinh upward binary128 -0x5.a95683e302a71be88a35649b26p-4 : -0x5.8cae53be0eeb89898490af1caa7cp-4 : inexact-ok
+= asinh downward ibm128 -0x5.a95683e302a71be88a35649b26p-4 : -0x5.8cae53be0eeb89898490af1cacp-4 : inexact-ok
+= asinh tonearest ibm128 -0x5.a95683e302a71be88a35649b26p-4 : -0x5.8cae53be0eeb89898490af1caap-4 : inexact-ok
+= asinh towardzero ibm128 -0x5.a95683e302a71be88a35649b26p-4 : -0x5.8cae53be0eeb89898490af1caap-4 : inexact-ok
+= asinh upward ibm128 -0x5.a95683e302a71be88a35649b26p-4 : -0x5.8cae53be0eeb89898490af1caap-4 : inexact-ok
 asinh min
 = asinh downward binary32 0x4p-128 : 0x3.fffff8p-128 : inexact-ok underflow-ok errno-erange-ok
 = asinh tonearest binary32 0x4p-128 : 0x4p-128 : inexact-ok underflow-ok errno-erange-ok
diff --git a/math/auto-libm-test-out-atan b/math/auto-libm-test-out-atan
index d769aeb8aa..334894a90a 100644
--- a/math/auto-libm-test-out-atan
+++ b/math/auto-libm-test-out-atan
@@ -1036,6 +1036,31 @@ atan -0x1.58c83p+0
 = atan tonearest ibm128 -0x1.58c83p+0 : -0xe.e9f00a57b143b31a8f4be18ea4p-4 : inexact-ok
 = atan towardzero ibm128 -0x1.58c83p+0 : -0xe.e9f00a57b143b31a8f4be18eap-4 : inexact-ok
 = atan upward ibm128 -0x1.58c83p+0 : -0xe.e9f00a57b143b31a8f4be18eap-4 : inexact-ok
+atan 0x1.626772p-1
+= atan downward binary32 0xb.133b9p-4 : 0x9.bp-4 : inexact-ok
+= atan tonearest binary32 0xb.133b9p-4 : 0x9.b0001p-4 : inexact-ok
+= atan towardzero binary32 0xb.133b9p-4 : 0x9.bp-4 : inexact-ok
+= atan upward binary32 0xb.133b9p-4 : 0x9.b0001p-4 : inexact-ok
+= atan downward binary64 0xb.133b9p-4 : 0x9.b0000da23b9d8p-4 : inexact-ok
+= atan tonearest binary64 0xb.133b9p-4 : 0x9.b0000da23b9ep-4 : inexact-ok
+= atan towardzero binary64 0xb.133b9p-4 : 0x9.b0000da23b9d8p-4 : inexact-ok
+= atan upward binary64 0xb.133b9p-4 : 0x9.b0000da23b9ep-4 : inexact-ok
+= atan downward intel96 0xb.133b9p-4 : 0x9.b0000da23b9dce2p-4 : inexact-ok
+= atan tonearest intel96 0xb.133b9p-4 : 0x9.b0000da23b9dce3p-4 : inexact-ok
+= atan towardzero intel96 0xb.133b9p-4 : 0x9.b0000da23b9dce2p-4 : inexact-ok
+= atan upward intel96 0xb.133b9p-4 : 0x9.b0000da23b9dce3p-4 : inexact-ok
+= atan downward m68k96 0xb.133b9p-4 : 0x9.b0000da23b9dce2p-4 : inexact-ok
+= atan tonearest m68k96 0xb.133b9p-4 : 0x9.b0000da23b9dce3p-4 : inexact-ok
+= atan towardzero m68k96 0xb.133b9p-4 : 0x9.b0000da23b9dce2p-4 : inexact-ok
+= atan upward m68k96 0xb.133b9p-4 : 0x9.b0000da23b9dce3p-4 : inexact-ok
+= atan downward binary128 0xb.133b9p-4 : 0x9.b0000da23b9dce2cdb744dda3638p-4 : inexact-ok
+= atan tonearest binary128 0xb.133b9p-4 : 0x9.b0000da23b9dce2cdb744dda364p-4 : inexact-ok
+= atan towardzero binary128 0xb.133b9p-4 : 0x9.b0000da23b9dce2cdb744dda3638p-4 : inexact-ok
+= atan upward binary128 0xb.133b9p-4 : 0x9.b0000da23b9dce2cdb744dda364p-4 : inexact-ok
+= atan downward ibm128 0xb.133b9p-4 : 0x9.b0000da23b9dce2cdb744dda34p-4 : inexact-ok
+= atan tonearest ibm128 0xb.133b9p-4 : 0x9.b0000da23b9dce2cdb744dda38p-4 : inexact-ok
+= atan towardzero ibm128 0xb.133b9p-4 : 0x9.b0000da23b9dce2cdb744dda34p-4 : inexact-ok
+= atan upward ibm128 0xb.133b9p-4 : 0x9.b0000da23b9dce2cdb744dda38p-4 : inexact-ok
 atan min
 = atan downward binary32 0x4p-128 : 0x3.fffff8p-128 : inexact-ok underflow-ok errno-erange-ok
 = atan tonearest binary32 0x4p-128 : 0x4p-128 : inexact-ok underflow-ok errno-erange-ok
diff --git a/math/auto-libm-test-out-atan2 b/math/auto-libm-test-out-atan2
index 8b45bbcfdb..8d92bc2942 100644
--- a/math/auto-libm-test-out-atan2
+++ b/math/auto-libm-test-out-atan2
@@ -5193,6 +5193,464 @@ atan2 -0x1.9e657cp-24 0x7.40bb4p-52
 = atan2 tonearest ibm128 -0x1.9e657cp-24 0x7.40bb4p-52 : -0x1.921fb4fc926936de7a5c281605p+0 : inexact-ok
 = atan2 towardzero ibm128 -0x1.9e657cp-24 0x7.40bb4p-52 : -0x1.921fb4fc926936de7a5c281605p+0 : inexact-ok
 = atan2 upward ibm128 -0x1.9e657cp-24 0x7.40bb4p-52 : -0x1.921fb4fc926936de7a5c281605p+0 : inexact-ok
+atan2 -0x1.f9cf48p+49 0x1.f60598p+51
+= atan2 downward binary32 -0x3.f39e9p+48 0xf.b02ccp+48 : -0x3.f2b38p-4 : inexact-ok
+= atan2 tonearest binary32 -0x3.f39e9p+48 0xf.b02ccp+48 : -0x3.f2b38p-4 : inexact-ok
+= atan2 towardzero binary32 -0x3.f39e9p+48 0xf.b02ccp+48 : -0x3.f2b37cp-4 : inexact-ok
+= atan2 upward binary32 -0x3.f39e9p+48 0xf.b02ccp+48 : -0x3.f2b37cp-4 : inexact-ok
+= atan2 downward binary64 -0x3.f39e9p+48 0xf.b02ccp+48 : -0x3.f2b37e0ca7ac4p-4 : inexact-ok
+= atan2 tonearest binary64 -0x3.f39e9p+48 0xf.b02ccp+48 : -0x3.f2b37e0ca7ac4p-4 : inexact-ok
+= atan2 towardzero binary64 -0x3.f39e9p+48 0xf.b02ccp+48 : -0x3.f2b37e0ca7ac2p-4 : inexact-ok
+= atan2 upward binary64 -0x3.f39e9p+48 0xf.b02ccp+48 : -0x3.f2b37e0ca7ac2p-4 : inexact-ok
+= atan2 downward intel96 -0x3.f39e9p+48 0xf.b02ccp+48 : -0x3.f2b37e0ca7ac31a4p-4 : inexact-ok
+= atan2 tonearest intel96 -0x3.f39e9p+48 0xf.b02ccp+48 : -0x3.f2b37e0ca7ac31ap-4 : inexact-ok
+= atan2 towardzero intel96 -0x3.f39e9p+48 0xf.b02ccp+48 : -0x3.f2b37e0ca7ac31ap-4 : inexact-ok
+= atan2 upward intel96 -0x3.f39e9p+48 0xf.b02ccp+48 : -0x3.f2b37e0ca7ac31ap-4 : inexact-ok
+= atan2 downward m68k96 -0x3.f39e9p+48 0xf.b02ccp+48 : -0x3.f2b37e0ca7ac31a4p-4 : inexact-ok
+= atan2 tonearest m68k96 -0x3.f39e9p+48 0xf.b02ccp+48 : -0x3.f2b37e0ca7ac31ap-4 : inexact-ok
+= atan2 towardzero m68k96 -0x3.f39e9p+48 0xf.b02ccp+48 : -0x3.f2b37e0ca7ac31ap-4 : inexact-ok
+= atan2 upward m68k96 -0x3.f39e9p+48 0xf.b02ccp+48 : -0x3.f2b37e0ca7ac31ap-4 : inexact-ok
+= atan2 downward binary128 -0x3.f39e9p+48 0xf.b02ccp+48 : -0x3.f2b37e0ca7ac31a1c0615ac92a5ep-4 : inexact-ok
+= atan2 tonearest binary128 -0x3.f39e9p+48 0xf.b02ccp+48 : -0x3.f2b37e0ca7ac31a1c0615ac92a5cp-4 : inexact-ok
+= atan2 towardzero binary128 -0x3.f39e9p+48 0xf.b02ccp+48 : -0x3.f2b37e0ca7ac31a1c0615ac92a5cp-4 : inexact-ok
+= atan2 upward binary128 -0x3.f39e9p+48 0xf.b02ccp+48 : -0x3.f2b37e0ca7ac31a1c0615ac92a5cp-4 : inexact-ok
+= atan2 downward ibm128 -0x3.f39e9p+48 0xf.b02ccp+48 : -0x3.f2b37e0ca7ac31a1c0615ac92bp-4 : inexact-ok
+= atan2 tonearest ibm128 -0x3.f39e9p+48 0xf.b02ccp+48 : -0x3.f2b37e0ca7ac31a1c0615ac92ap-4 : inexact-ok
+= atan2 towardzero ibm128 -0x3.f39e9p+48 0xf.b02ccp+48 : -0x3.f2b37e0ca7ac31a1c0615ac92ap-4 : inexact-ok
+= atan2 upward ibm128 -0x3.f39e9p+48 0xf.b02ccp+48 : -0x3.f2b37e0ca7ac31a1c0615ac92ap-4 : inexact-ok
+atan2 0x1.41df5aa214612c7e019fa6ade88p-13316 0x5.e53b26a270a29eb9f77ef8ef7af8p-13316
+= atan2 downward binary32 0x8p-152 0x8p-152 : 0xc.90fdap-4 : inexact-ok
+= atan2 tonearest binary32 0x8p-152 0x8p-152 : 0xc.90fdbp-4 : inexact-ok
+= atan2 towardzero binary32 0x8p-152 0x8p-152 : 0xc.90fdap-4 : inexact-ok
+= atan2 upward binary32 0x8p-152 0x8p-152 : 0xc.90fdbp-4 : inexact-ok
+= atan2 downward binary64 0x8p-152 0x8p-152 : 0xc.90fdaa22168cp-4 : inexact-ok
+= atan2 tonearest binary64 0x8p-152 0x8p-152 : 0xc.90fdaa22168cp-4 : inexact-ok
+= atan2 towardzero binary64 0x8p-152 0x8p-152 : 0xc.90fdaa22168cp-4 : inexact-ok
+= atan2 upward binary64 0x8p-152 0x8p-152 : 0xc.90fdaa22168c8p-4 : inexact-ok
+= atan2 downward intel96 0x8p-152 0x8p-152 : 0xc.90fdaa22168c234p-4 : inexact-ok
+= atan2 tonearest intel96 0x8p-152 0x8p-152 : 0xc.90fdaa22168c235p-4 : inexact-ok
+= atan2 towardzero intel96 0x8p-152 0x8p-152 : 0xc.90fdaa22168c234p-4 : inexact-ok
+= atan2 upward intel96 0x8p-152 0x8p-152 : 0xc.90fdaa22168c235p-4 : inexact-ok
+= atan2 downward m68k96 0x8p-152 0x8p-152 : 0xc.90fdaa22168c234p-4 : inexact-ok
+= atan2 tonearest m68k96 0x8p-152 0x8p-152 : 0xc.90fdaa22168c235p-4 : inexact-ok
+= atan2 towardzero m68k96 0x8p-152 0x8p-152 : 0xc.90fdaa22168c234p-4 : inexact-ok
+= atan2 upward m68k96 0x8p-152 0x8p-152 : 0xc.90fdaa22168c235p-4 : inexact-ok
+= atan2 downward binary128 0x8p-152 0x8p-152 : 0xc.90fdaa22168c234c4c6628b80dcp-4 : inexact-ok
+= atan2 tonearest binary128 0x8p-152 0x8p-152 : 0xc.90fdaa22168c234c4c6628b80dcp-4 : inexact-ok
+= atan2 towardzero binary128 0x8p-152 0x8p-152 : 0xc.90fdaa22168c234c4c6628b80dcp-4 : inexact-ok
+= atan2 upward binary128 0x8p-152 0x8p-152 : 0xc.90fdaa22168c234c4c6628b80dc8p-4 : inexact-ok
+= atan2 downward ibm128 0x8p-152 0x8p-152 : 0xc.90fdaa22168c234c4c6628b80cp-4 : inexact-ok
+= atan2 tonearest ibm128 0x8p-152 0x8p-152 : 0xc.90fdaa22168c234c4c6628b80cp-4 : inexact-ok
+= atan2 towardzero ibm128 0x8p-152 0x8p-152 : 0xc.90fdaa22168c234c4c6628b80cp-4 : inexact-ok
+= atan2 upward ibm128 0x8p-152 0x8p-152 : 0xc.90fdaa22168c234c4c6628b81p-4 : inexact-ok
+= atan2 downward binary32 0x8p-152 0x0p+0 : 0x1.921fb4p+0 : inexact-ok
+= atan2 tonearest binary32 0x8p-152 0x0p+0 : 0x1.921fb6p+0 : inexact-ok
+= atan2 towardzero binary32 0x8p-152 0x0p+0 : 0x1.921fb4p+0 : inexact-ok
+= atan2 upward binary32 0x8p-152 0x0p+0 : 0x1.921fb6p+0 : inexact-ok
+= atan2 downward binary64 0x8p-152 0x0p+0 : 0x1.921fb54442d18p+0 : inexact-ok
+= atan2 tonearest binary64 0x8p-152 0x0p+0 : 0x1.921fb54442d18p+0 : inexact-ok
+= atan2 towardzero binary64 0x8p-152 0x0p+0 : 0x1.921fb54442d18p+0 : inexact-ok
+= atan2 upward binary64 0x8p-152 0x0p+0 : 0x1.921fb54442d19p+0 : inexact-ok
+= atan2 downward intel96 0x8p-152 0x0p+0 : 0x1.921fb54442d18468p+0 : inexact-ok
+= atan2 tonearest intel96 0x8p-152 0x0p+0 : 0x1.921fb54442d1846ap+0 : inexact-ok
+= atan2 towardzero intel96 0x8p-152 0x0p+0 : 0x1.921fb54442d18468p+0 : inexact-ok
+= atan2 upward intel96 0x8p-152 0x0p+0 : 0x1.921fb54442d1846ap+0 : inexact-ok
+= atan2 downward m68k96 0x8p-152 0x0p+0 : 0x1.921fb54442d18468p+0 : inexact-ok
+= atan2 tonearest m68k96 0x8p-152 0x0p+0 : 0x1.921fb54442d1846ap+0 : inexact-ok
+= atan2 towardzero m68k96 0x8p-152 0x0p+0 : 0x1.921fb54442d18468p+0 : inexact-ok
+= atan2 upward m68k96 0x8p-152 0x0p+0 : 0x1.921fb54442d1846ap+0 : inexact-ok
+= atan2 downward binary128 0x8p-152 0x0p+0 : 0x1.921fb54442d18469898cc51701b8p+0 : inexact-ok
+= atan2 tonearest binary128 0x8p-152 0x0p+0 : 0x1.921fb54442d18469898cc51701b8p+0 : inexact-ok
+= atan2 towardzero binary128 0x8p-152 0x0p+0 : 0x1.921fb54442d18469898cc51701b8p+0 : inexact-ok
+= atan2 upward binary128 0x8p-152 0x0p+0 : 0x1.921fb54442d18469898cc51701b9p+0 : inexact-ok
+= atan2 downward ibm128 0x8p-152 0x0p+0 : 0x1.921fb54442d18469898cc517018p+0 : inexact-ok
+= atan2 tonearest ibm128 0x8p-152 0x0p+0 : 0x1.921fb54442d18469898cc517018p+0 : inexact-ok
+= atan2 towardzero ibm128 0x8p-152 0x0p+0 : 0x1.921fb54442d18469898cc517018p+0 : inexact-ok
+= atan2 upward ibm128 0x8p-152 0x0p+0 : 0x1.921fb54442d18469898cc51702p+0 : inexact-ok
+= atan2 downward binary64 0x8p-152 0x4p-1076 : 0x1.921fb54442d18p+0 : inexact-ok
+= atan2 tonearest binary64 0x8p-152 0x4p-1076 : 0x1.921fb54442d18p+0 : inexact-ok
+= atan2 towardzero binary64 0x8p-152 0x4p-1076 : 0x1.921fb54442d18p+0 : inexact-ok
+= atan2 upward binary64 0x8p-152 0x4p-1076 : 0x1.921fb54442d19p+0 : inexact-ok
+= atan2 downward intel96 0x8p-152 0x4p-1076 : 0x1.921fb54442d18468p+0 : inexact-ok
+= atan2 tonearest intel96 0x8p-152 0x4p-1076 : 0x1.921fb54442d1846ap+0 : inexact-ok
+= atan2 towardzero intel96 0x8p-152 0x4p-1076 : 0x1.921fb54442d18468p+0 : inexact-ok
+= atan2 upward intel96 0x8p-152 0x4p-1076 : 0x1.921fb54442d1846ap+0 : inexact-ok
+= atan2 downward m68k96 0x8p-152 0x4p-1076 : 0x1.921fb54442d18468p+0 : inexact-ok
+= atan2 tonearest m68k96 0x8p-152 0x4p-1076 : 0x1.921fb54442d1846ap+0 : inexact-ok
+= atan2 towardzero m68k96 0x8p-152 0x4p-1076 : 0x1.921fb54442d18468p+0 : inexact-ok
+= atan2 upward m68k96 0x8p-152 0x4p-1076 : 0x1.921fb54442d1846ap+0 : inexact-ok
+= atan2 downward binary128 0x8p-152 0x4p-1076 : 0x1.921fb54442d18469898cc51701b8p+0 : inexact-ok
+= atan2 tonearest binary128 0x8p-152 0x4p-1076 : 0x1.921fb54442d18469898cc51701b8p+0 : inexact-ok
+= atan2 towardzero binary128 0x8p-152 0x4p-1076 : 0x1.921fb54442d18469898cc51701b8p+0 : inexact-ok
+= atan2 upward binary128 0x8p-152 0x4p-1076 : 0x1.921fb54442d18469898cc51701b9p+0 : inexact-ok
+= atan2 downward ibm128 0x8p-152 0x4p-1076 : 0x1.921fb54442d18469898cc517018p+0 : inexact-ok
+= atan2 tonearest ibm128 0x8p-152 0x4p-1076 : 0x1.921fb54442d18469898cc517018p+0 : inexact-ok
+= atan2 towardzero ibm128 0x8p-152 0x4p-1076 : 0x1.921fb54442d18469898cc517018p+0 : inexact-ok
+= atan2 upward ibm128 0x8p-152 0x4p-1076 : 0x1.921fb54442d18469898cc51702p+0 : inexact-ok
+= atan2 downward intel96 0x8p-152 0x5.e53b26a270a29ecp-13316 : 0x1.921fb54442d18468p+0 : inexact-ok
+= atan2 tonearest intel96 0x8p-152 0x5.e53b26a270a29ecp-13316 : 0x1.921fb54442d1846ap+0 : inexact-ok
+= atan2 towardzero intel96 0x8p-152 0x5.e53b26a270a29ecp-13316 : 0x1.921fb54442d18468p+0 : inexact-ok
+= atan2 upward intel96 0x8p-152 0x5.e53b26a270a29ecp-13316 : 0x1.921fb54442d1846ap+0 : inexact-ok
+= atan2 downward m68k96 0x8p-152 0x5.e53b26a270a29ecp-13316 : 0x1.921fb54442d18468p+0 : inexact-ok
+= atan2 tonearest m68k96 0x8p-152 0x5.e53b26a270a29ecp-13316 : 0x1.921fb54442d1846ap+0 : inexact-ok
+= atan2 towardzero m68k96 0x8p-152 0x5.e53b26a270a29ecp-13316 : 0x1.921fb54442d18468p+0 : inexact-ok
+= atan2 upward m68k96 0x8p-152 0x5.e53b26a270a29ecp-13316 : 0x1.921fb54442d1846ap+0 : inexact-ok
+= atan2 downward binary128 0x8p-152 0x5.e53b26a270a29ecp-13316 : 0x1.921fb54442d18469898cc51701b8p+0 : inexact-ok
+= atan2 tonearest binary128 0x8p-152 0x5.e53b26a270a29ecp-13316 : 0x1.921fb54442d18469898cc51701b8p+0 : inexact-ok
+= atan2 towardzero binary128 0x8p-152 0x5.e53b26a270a29ecp-13316 : 0x1.921fb54442d18469898cc51701b8p+0 : inexact-ok
+= atan2 upward binary128 0x8p-152 0x5.e53b26a270a29ecp-13316 : 0x1.921fb54442d18469898cc51701b9p+0 : inexact-ok
+= atan2 downward intel96 0x8p-152 0x5.e53b26a270a29eb8p-13316 : 0x1.921fb54442d18468p+0 : inexact-ok
+= atan2 tonearest intel96 0x8p-152 0x5.e53b26a270a29eb8p-13316 : 0x1.921fb54442d1846ap+0 : inexact-ok
+= atan2 towardzero intel96 0x8p-152 0x5.e53b26a270a29eb8p-13316 : 0x1.921fb54442d18468p+0 : inexact-ok
+= atan2 upward intel96 0x8p-152 0x5.e53b26a270a29eb8p-13316 : 0x1.921fb54442d1846ap+0 : inexact-ok
+= atan2 downward m68k96 0x8p-152 0x5.e53b26a270a29eb8p-13316 : 0x1.921fb54442d18468p+0 : inexact-ok
+= atan2 tonearest m68k96 0x8p-152 0x5.e53b26a270a29eb8p-13316 : 0x1.921fb54442d1846ap+0 : inexact-ok
+= atan2 towardzero m68k96 0x8p-152 0x5.e53b26a270a29eb8p-13316 : 0x1.921fb54442d18468p+0 : inexact-ok
+= atan2 upward m68k96 0x8p-152 0x5.e53b26a270a29eb8p-13316 : 0x1.921fb54442d1846ap+0 : inexact-ok
+= atan2 downward binary128 0x8p-152 0x5.e53b26a270a29eb8p-13316 : 0x1.921fb54442d18469898cc51701b8p+0 : inexact-ok
+= atan2 tonearest binary128 0x8p-152 0x5.e53b26a270a29eb8p-13316 : 0x1.921fb54442d18469898cc51701b8p+0 : inexact-ok
+= atan2 towardzero binary128 0x8p-152 0x5.e53b26a270a29eb8p-13316 : 0x1.921fb54442d18469898cc51701b8p+0 : inexact-ok
+= atan2 upward binary128 0x8p-152 0x5.e53b26a270a29eb8p-13316 : 0x1.921fb54442d18469898cc51701b9p+0 : inexact-ok
+= atan2 downward binary128 0x8p-152 0x5.e53b26a270a29eb9f77ef8ef7af8p-13316 : 0x1.921fb54442d18469898cc51701b8p+0 : inexact-ok
+= atan2 tonearest binary128 0x8p-152 0x5.e53b26a270a29eb9f77ef8ef7af8p-13316 : 0x1.921fb54442d18469898cc51701b8p+0 : inexact-ok
+= atan2 towardzero binary128 0x8p-152 0x5.e53b26a270a29eb9f77ef8ef7af8p-13316 : 0x1.921fb54442d18469898cc51701b8p+0 : inexact-ok
+= atan2 upward binary128 0x8p-152 0x5.e53b26a270a29eb9f77ef8ef7af8p-13316 : 0x1.921fb54442d18469898cc51701b9p+0 : inexact-ok
+= atan2 downward binary32 0x0p+0 0x8p-152 : 0x0p+0 : inexact-ok
+= atan2 tonearest binary32 0x0p+0 0x8p-152 : 0x0p+0 : inexact-ok
+= atan2 towardzero binary32 0x0p+0 0x8p-152 : 0x0p+0 : inexact-ok
+= atan2 upward binary32 0x0p+0 0x8p-152 : 0x0p+0 : inexact-ok
+= atan2 downward binary64 0x0p+0 0x8p-152 : 0x0p+0 : inexact-ok
+= atan2 tonearest binary64 0x0p+0 0x8p-152 : 0x0p+0 : inexact-ok
+= atan2 towardzero binary64 0x0p+0 0x8p-152 : 0x0p+0 : inexact-ok
+= atan2 upward binary64 0x0p+0 0x8p-152 : 0x0p+0 : inexact-ok
+= atan2 downward intel96 0x0p+0 0x8p-152 : 0x0p+0 : inexact-ok
+= atan2 tonearest intel96 0x0p+0 0x8p-152 : 0x0p+0 : inexact-ok
+= atan2 towardzero intel96 0x0p+0 0x8p-152 : 0x0p+0 : inexact-ok
+= atan2 upward intel96 0x0p+0 0x8p-152 : 0x0p+0 : inexact-ok
+= atan2 downward m68k96 0x0p+0 0x8p-152 : 0x0p+0 : inexact-ok
+= atan2 tonearest m68k96 0x0p+0 0x8p-152 : 0x0p+0 : inexact-ok
+= atan2 towardzero m68k96 0x0p+0 0x8p-152 : 0x0p+0 : inexact-ok
+= atan2 upward m68k96 0x0p+0 0x8p-152 : 0x0p+0 : inexact-ok
+= atan2 downward binary128 0x0p+0 0x8p-152 : 0x0p+0 : inexact-ok
+= atan2 tonearest binary128 0x0p+0 0x8p-152 : 0x0p+0 : inexact-ok
+= atan2 towardzero binary128 0x0p+0 0x8p-152 : 0x0p+0 : inexact-ok
+= atan2 upward binary128 0x0p+0 0x8p-152 : 0x0p+0 : inexact-ok
+= atan2 downward ibm128 0x0p+0 0x8p-152 : 0x0p+0 : inexact-ok
+= atan2 tonearest ibm128 0x0p+0 0x8p-152 : 0x0p+0 : inexact-ok
+= atan2 towardzero ibm128 0x0p+0 0x8p-152 : 0x0p+0 : inexact-ok
+= atan2 upward ibm128 0x0p+0 0x8p-152 : 0x0p+0 : inexact-ok
+= atan2 downward binary32 0x0p+0 0x0p+0 : 0x0p+0 : inexact-ok
+= atan2 tonearest binary32 0x0p+0 0x0p+0 : 0x0p+0 : inexact-ok
+= atan2 towardzero binary32 0x0p+0 0x0p+0 : 0x0p+0 : inexact-ok
+= atan2 upward binary32 0x0p+0 0x0p+0 : 0x0p+0 : inexact-ok
+= atan2 downward binary64 0x0p+0 0x0p+0 : 0x0p+0 : inexact-ok
+= atan2 tonearest binary64 0x0p+0 0x0p+0 : 0x0p+0 : inexact-ok
+= atan2 towardzero binary64 0x0p+0 0x0p+0 : 0x0p+0 : inexact-ok
+= atan2 upward binary64 0x0p+0 0x0p+0 : 0x0p+0 : inexact-ok
+= atan2 downward intel96 0x0p+0 0x0p+0 : 0x0p+0 : inexact-ok
+= atan2 tonearest intel96 0x0p+0 0x0p+0 : 0x0p+0 : inexact-ok
+= atan2 towardzero intel96 0x0p+0 0x0p+0 : 0x0p+0 : inexact-ok
+= atan2 upward intel96 0x0p+0 0x0p+0 : 0x0p+0 : inexact-ok
+= atan2 downward m68k96 0x0p+0 0x0p+0 : 0x0p+0 : inexact-ok
+= atan2 tonearest m68k96 0x0p+0 0x0p+0 : 0x0p+0 : inexact-ok
+= atan2 towardzero m68k96 0x0p+0 0x0p+0 : 0x0p+0 : inexact-ok
+= atan2 upward m68k96 0x0p+0 0x0p+0 : 0x0p+0 : inexact-ok
+= atan2 downward binary128 0x0p+0 0x0p+0 : 0x0p+0 : inexact-ok
+= atan2 tonearest binary128 0x0p+0 0x0p+0 : 0x0p+0 : inexact-ok
+= atan2 towardzero binary128 0x0p+0 0x0p+0 : 0x0p+0 : inexact-ok
+= atan2 upward binary128 0x0p+0 0x0p+0 : 0x0p+0 : inexact-ok
+= atan2 downward ibm128 0x0p+0 0x0p+0 : 0x0p+0 : inexact-ok
+= atan2 tonearest ibm128 0x0p+0 0x0p+0 : 0x0p+0 : inexact-ok
+= atan2 towardzero ibm128 0x0p+0 0x0p+0 : 0x0p+0 : inexact-ok
+= atan2 upward ibm128 0x0p+0 0x0p+0 : 0x0p+0 : inexact-ok
+= atan2 downward binary64 0x0p+0 0x4p-1076 : 0x0p+0 : inexact-ok
+= atan2 tonearest binary64 0x0p+0 0x4p-1076 : 0x0p+0 : inexact-ok
+= atan2 towardzero binary64 0x0p+0 0x4p-1076 : 0x0p+0 : inexact-ok
+= atan2 upward binary64 0x0p+0 0x4p-1076 : 0x0p+0 : inexact-ok
+= atan2 downward intel96 0x0p+0 0x4p-1076 : 0x0p+0 : inexact-ok
+= atan2 tonearest intel96 0x0p+0 0x4p-1076 : 0x0p+0 : inexact-ok
+= atan2 towardzero intel96 0x0p+0 0x4p-1076 : 0x0p+0 : inexact-ok
+= atan2 upward intel96 0x0p+0 0x4p-1076 : 0x0p+0 : inexact-ok
+= atan2 downward m68k96 0x0p+0 0x4p-1076 : 0x0p+0 : inexact-ok
+= atan2 tonearest m68k96 0x0p+0 0x4p-1076 : 0x0p+0 : inexact-ok
+= atan2 towardzero m68k96 0x0p+0 0x4p-1076 : 0x0p+0 : inexact-ok
+= atan2 upward m68k96 0x0p+0 0x4p-1076 : 0x0p+0 : inexact-ok
+= atan2 downward binary128 0x0p+0 0x4p-1076 : 0x0p+0 : inexact-ok
+= atan2 tonearest binary128 0x0p+0 0x4p-1076 : 0x0p+0 : inexact-ok
+= atan2 towardzero binary128 0x0p+0 0x4p-1076 : 0x0p+0 : inexact-ok
+= atan2 upward binary128 0x0p+0 0x4p-1076 : 0x0p+0 : inexact-ok
+= atan2 downward ibm128 0x0p+0 0x4p-1076 : 0x0p+0 : inexact-ok
+= atan2 tonearest ibm128 0x0p+0 0x4p-1076 : 0x0p+0 : inexact-ok
+= atan2 towardzero ibm128 0x0p+0 0x4p-1076 : 0x0p+0 : inexact-ok
+= atan2 upward ibm128 0x0p+0 0x4p-1076 : 0x0p+0 : inexact-ok
+= atan2 downward intel96 0x0p+0 0x5.e53b26a270a29ecp-13316 : 0x0p+0 : inexact-ok
+= atan2 tonearest intel96 0x0p+0 0x5.e53b26a270a29ecp-13316 : 0x0p+0 : inexact-ok
+= atan2 towardzero intel96 0x0p+0 0x5.e53b26a270a29ecp-13316 : 0x0p+0 : inexact-ok
+= atan2 upward intel96 0x0p+0 0x5.e53b26a270a29ecp-13316 : 0x0p+0 : inexact-ok
+= atan2 downward m68k96 0x0p+0 0x5.e53b26a270a29ecp-13316 : 0x0p+0 : inexact-ok
+= atan2 tonearest m68k96 0x0p+0 0x5.e53b26a270a29ecp-13316 : 0x0p+0 : inexact-ok
+= atan2 towardzero m68k96 0x0p+0 0x5.e53b26a270a29ecp-13316 : 0x0p+0 : inexact-ok
+= atan2 upward m68k96 0x0p+0 0x5.e53b26a270a29ecp-13316 : 0x0p+0 : inexact-ok
+= atan2 downward binary128 0x0p+0 0x5.e53b26a270a29ecp-13316 : 0x0p+0 : inexact-ok
+= atan2 tonearest binary128 0x0p+0 0x5.e53b26a270a29ecp-13316 : 0x0p+0 : inexact-ok
+= atan2 towardzero binary128 0x0p+0 0x5.e53b26a270a29ecp-13316 : 0x0p+0 : inexact-ok
+= atan2 upward binary128 0x0p+0 0x5.e53b26a270a29ecp-13316 : 0x0p+0 : inexact-ok
+= atan2 downward intel96 0x0p+0 0x5.e53b26a270a29eb8p-13316 : 0x0p+0 : inexact-ok
+= atan2 tonearest intel96 0x0p+0 0x5.e53b26a270a29eb8p-13316 : 0x0p+0 : inexact-ok
+= atan2 towardzero intel96 0x0p+0 0x5.e53b26a270a29eb8p-13316 : 0x0p+0 : inexact-ok
+= atan2 upward intel96 0x0p+0 0x5.e53b26a270a29eb8p-13316 : 0x0p+0 : inexact-ok
+= atan2 downward m68k96 0x0p+0 0x5.e53b26a270a29eb8p-13316 : 0x0p+0 : inexact-ok
+= atan2 tonearest m68k96 0x0p+0 0x5.e53b26a270a29eb8p-13316 : 0x0p+0 : inexact-ok
+= atan2 towardzero m68k96 0x0p+0 0x5.e53b26a270a29eb8p-13316 : 0x0p+0 : inexact-ok
+= atan2 upward m68k96 0x0p+0 0x5.e53b26a270a29eb8p-13316 : 0x0p+0 : inexact-ok
+= atan2 downward binary128 0x0p+0 0x5.e53b26a270a29eb8p-13316 : 0x0p+0 : inexact-ok
+= atan2 tonearest binary128 0x0p+0 0x5.e53b26a270a29eb8p-13316 : 0x0p+0 : inexact-ok
+= atan2 towardzero binary128 0x0p+0 0x5.e53b26a270a29eb8p-13316 : 0x0p+0 : inexact-ok
+= atan2 upward binary128 0x0p+0 0x5.e53b26a270a29eb8p-13316 : 0x0p+0 : inexact-ok
+= atan2 downward binary128 0x0p+0 0x5.e53b26a270a29eb9f77ef8ef7af8p-13316 : 0x0p+0 : inexact-ok
+= atan2 tonearest binary128 0x0p+0 0x5.e53b26a270a29eb9f77ef8ef7af8p-13316 : 0x0p+0 : inexact-ok
+= atan2 towardzero binary128 0x0p+0 0x5.e53b26a270a29eb9f77ef8ef7af8p-13316 : 0x0p+0 : inexact-ok
+= atan2 upward binary128 0x0p+0 0x5.e53b26a270a29eb9f77ef8ef7af8p-13316 : 0x0p+0 : inexact-ok
+= atan2 downward binary64 0x4p-1076 0x8p-152 : 0x7.ffffffffffffcp-928 : inexact-ok
+= atan2 tonearest binary64 0x4p-1076 0x8p-152 : 0x8p-928 : inexact-ok
+= atan2 towardzero binary64 0x4p-1076 0x8p-152 : 0x7.ffffffffffffcp-928 : inexact-ok
+= atan2 upward binary64 0x4p-1076 0x8p-152 : 0x8p-928 : inexact-ok
+= atan2 downward intel96 0x4p-1076 0x8p-152 : 0x7.fffffffffffffff8p-928 : inexact-ok
+= atan2 tonearest intel96 0x4p-1076 0x8p-152 : 0x8p-928 : inexact-ok
+= atan2 towardzero intel96 0x4p-1076 0x8p-152 : 0x7.fffffffffffffff8p-928 : inexact-ok
+= atan2 upward intel96 0x4p-1076 0x8p-152 : 0x8p-928 : inexact-ok
+= atan2 downward m68k96 0x4p-1076 0x8p-152 : 0x7.fffffffffffffff8p-928 : inexact-ok
+= atan2 tonearest m68k96 0x4p-1076 0x8p-152 : 0x8p-928 : inexact-ok
+= atan2 towardzero m68k96 0x4p-1076 0x8p-152 : 0x7.fffffffffffffff8p-928 : inexact-ok
+= atan2 upward m68k96 0x4p-1076 0x8p-152 : 0x8p-928 : inexact-ok
+= atan2 downward binary128 0x4p-1076 0x8p-152 : 0x7.fffffffffffffffffffffffffffcp-928 : inexact-ok
+= atan2 tonearest binary128 0x4p-1076 0x8p-152 : 0x8p-928 : inexact-ok
+= atan2 towardzero binary128 0x4p-1076 0x8p-152 : 0x7.fffffffffffffffffffffffffffcp-928 : inexact-ok
+= atan2 upward binary128 0x4p-1076 0x8p-152 : 0x8p-928 : inexact-ok
+= atan2 downward ibm128 0x4p-1076 0x8p-152 : 0x7.fffffffffffffffffffffffffep-928 : inexact-ok
+= atan2 tonearest ibm128 0x4p-1076 0x8p-152 : 0x8p-928 : inexact-ok
+= atan2 towardzero ibm128 0x4p-1076 0x8p-152 : 0x7.fffffffffffffffffffffffffep-928 : inexact-ok
+= atan2 upward ibm128 0x4p-1076 0x8p-152 : 0x8p-928 : inexact-ok
+= atan2 downward binary64 0x4p-1076 0x0p+0 : 0x1.921fb54442d18p+0 : inexact-ok
+= atan2 tonearest binary64 0x4p-1076 0x0p+0 : 0x1.921fb54442d18p+0 : inexact-ok
+= atan2 towardzero binary64 0x4p-1076 0x0p+0 : 0x1.921fb54442d18p+0 : inexact-ok
+= atan2 upward binary64 0x4p-1076 0x0p+0 : 0x1.921fb54442d19p+0 : inexact-ok
+= atan2 downward intel96 0x4p-1076 0x0p+0 : 0x1.921fb54442d18468p+0 : inexact-ok
+= atan2 tonearest intel96 0x4p-1076 0x0p+0 : 0x1.921fb54442d1846ap+0 : inexact-ok
+= atan2 towardzero intel96 0x4p-1076 0x0p+0 : 0x1.921fb54442d18468p+0 : inexact-ok
+= atan2 upward intel96 0x4p-1076 0x0p+0 : 0x1.921fb54442d1846ap+0 : inexact-ok
+= atan2 downward m68k96 0x4p-1076 0x0p+0 : 0x1.921fb54442d18468p+0 : inexact-ok
+= atan2 tonearest m68k96 0x4p-1076 0x0p+0 : 0x1.921fb54442d1846ap+0 : inexact-ok
+= atan2 towardzero m68k96 0x4p-1076 0x0p+0 : 0x1.921fb54442d18468p+0 : inexact-ok
+= atan2 upward m68k96 0x4p-1076 0x0p+0 : 0x1.921fb54442d1846ap+0 : inexact-ok
+= atan2 downward binary128 0x4p-1076 0x0p+0 : 0x1.921fb54442d18469898cc51701b8p+0 : inexact-ok
+= atan2 tonearest binary128 0x4p-1076 0x0p+0 : 0x1.921fb54442d18469898cc51701b8p+0 : inexact-ok
+= atan2 towardzero binary128 0x4p-1076 0x0p+0 : 0x1.921fb54442d18469898cc51701b8p+0 : inexact-ok
+= atan2 upward binary128 0x4p-1076 0x0p+0 : 0x1.921fb54442d18469898cc51701b9p+0 : inexact-ok
+= atan2 downward ibm128 0x4p-1076 0x0p+0 : 0x1.921fb54442d18469898cc517018p+0 : inexact-ok
+= atan2 tonearest ibm128 0x4p-1076 0x0p+0 : 0x1.921fb54442d18469898cc517018p+0 : inexact-ok
+= atan2 towardzero ibm128 0x4p-1076 0x0p+0 : 0x1.921fb54442d18469898cc517018p+0 : inexact-ok
+= atan2 upward ibm128 0x4p-1076 0x0p+0 : 0x1.921fb54442d18469898cc51702p+0 : inexact-ok
+= atan2 downward binary64 0x4p-1076 0x4p-1076 : 0xc.90fdaa22168cp-4 : inexact-ok
+= atan2 tonearest binary64 0x4p-1076 0x4p-1076 : 0xc.90fdaa22168cp-4 : inexact-ok
+= atan2 towardzero binary64 0x4p-1076 0x4p-1076 : 0xc.90fdaa22168cp-4 : inexact-ok
+= atan2 upward binary64 0x4p-1076 0x4p-1076 : 0xc.90fdaa22168c8p-4 : inexact-ok
+= atan2 downward intel96 0x4p-1076 0x4p-1076 : 0xc.90fdaa22168c234p-4 : inexact-ok
+= atan2 tonearest intel96 0x4p-1076 0x4p-1076 : 0xc.90fdaa22168c235p-4 : inexact-ok
+= atan2 towardzero intel96 0x4p-1076 0x4p-1076 : 0xc.90fdaa22168c234p-4 : inexact-ok
+= atan2 upward intel96 0x4p-1076 0x4p-1076 : 0xc.90fdaa22168c235p-4 : inexact-ok
+= atan2 downward m68k96 0x4p-1076 0x4p-1076 : 0xc.90fdaa22168c234p-4 : inexact-ok
+= atan2 tonearest m68k96 0x4p-1076 0x4p-1076 : 0xc.90fdaa22168c235p-4 : inexact-ok
+= atan2 towardzero m68k96 0x4p-1076 0x4p-1076 : 0xc.90fdaa22168c234p-4 : inexact-ok
+= atan2 upward m68k96 0x4p-1076 0x4p-1076 : 0xc.90fdaa22168c235p-4 : inexact-ok
+= atan2 downward binary128 0x4p-1076 0x4p-1076 : 0xc.90fdaa22168c234c4c6628b80dcp-4 : inexact-ok
+= atan2 tonearest binary128 0x4p-1076 0x4p-1076 : 0xc.90fdaa22168c234c4c6628b80dcp-4 : inexact-ok
+= atan2 towardzero binary128 0x4p-1076 0x4p-1076 : 0xc.90fdaa22168c234c4c6628b80dcp-4 : inexact-ok
+= atan2 upward binary128 0x4p-1076 0x4p-1076 : 0xc.90fdaa22168c234c4c6628b80dc8p-4 : inexact-ok
+= atan2 downward ibm128 0x4p-1076 0x4p-1076 : 0xc.90fdaa22168c234c4c6628b80cp-4 : inexact-ok
+= atan2 tonearest ibm128 0x4p-1076 0x4p-1076 : 0xc.90fdaa22168c234c4c6628b80cp-4 : inexact-ok
+= atan2 towardzero ibm128 0x4p-1076 0x4p-1076 : 0xc.90fdaa22168c234c4c6628b80cp-4 : inexact-ok
+= atan2 upward ibm128 0x4p-1076 0x4p-1076 : 0xc.90fdaa22168c234c4c6628b81p-4 : inexact-ok
+= atan2 downward intel96 0x4p-1076 0x5.e53b26a270a29ecp-13316 : 0x1.921fb54442d18468p+0 : inexact-ok
+= atan2 tonearest intel96 0x4p-1076 0x5.e53b26a270a29ecp-13316 : 0x1.921fb54442d1846ap+0 : inexact-ok
+= atan2 towardzero intel96 0x4p-1076 0x5.e53b26a270a29ecp-13316 : 0x1.921fb54442d18468p+0 : inexact-ok
+= atan2 upward intel96 0x4p-1076 0x5.e53b26a270a29ecp-13316 : 0x1.921fb54442d1846ap+0 : inexact-ok
+= atan2 downward m68k96 0x4p-1076 0x5.e53b26a270a29ecp-13316 : 0x1.921fb54442d18468p+0 : inexact-ok
+= atan2 tonearest m68k96 0x4p-1076 0x5.e53b26a270a29ecp-13316 : 0x1.921fb54442d1846ap+0 : inexact-ok
+= atan2 towardzero m68k96 0x4p-1076 0x5.e53b26a270a29ecp-13316 : 0x1.921fb54442d18468p+0 : inexact-ok
+= atan2 upward m68k96 0x4p-1076 0x5.e53b26a270a29ecp-13316 : 0x1.921fb54442d1846ap+0 : inexact-ok
+= atan2 downward binary128 0x4p-1076 0x5.e53b26a270a29ecp-13316 : 0x1.921fb54442d18469898cc51701b8p+0 : inexact-ok
+= atan2 tonearest binary128 0x4p-1076 0x5.e53b26a270a29ecp-13316 : 0x1.921fb54442d18469898cc51701b8p+0 : inexact-ok
+= atan2 towardzero binary128 0x4p-1076 0x5.e53b26a270a29ecp-13316 : 0x1.921fb54442d18469898cc51701b8p+0 : inexact-ok
+= atan2 upward binary128 0x4p-1076 0x5.e53b26a270a29ecp-13316 : 0x1.921fb54442d18469898cc51701b9p+0 : inexact-ok
+= atan2 downward intel96 0x4p-1076 0x5.e53b26a270a29eb8p-13316 : 0x1.921fb54442d18468p+0 : inexact-ok
+= atan2 tonearest intel96 0x4p-1076 0x5.e53b26a270a29eb8p-13316 : 0x1.921fb54442d1846ap+0 : inexact-ok
+= atan2 towardzero intel96 0x4p-1076 0x5.e53b26a270a29eb8p-13316 : 0x1.921fb54442d18468p+0 : inexact-ok
+= atan2 upward intel96 0x4p-1076 0x5.e53b26a270a29eb8p-13316 : 0x1.921fb54442d1846ap+0 : inexact-ok
+= atan2 downward m68k96 0x4p-1076 0x5.e53b26a270a29eb8p-13316 : 0x1.921fb54442d18468p+0 : inexact-ok
+= atan2 tonearest m68k96 0x4p-1076 0x5.e53b26a270a29eb8p-13316 : 0x1.921fb54442d1846ap+0 : inexact-ok
+= atan2 towardzero m68k96 0x4p-1076 0x5.e53b26a270a29eb8p-13316 : 0x1.921fb54442d18468p+0 : inexact-ok
+= atan2 upward m68k96 0x4p-1076 0x5.e53b26a270a29eb8p-13316 : 0x1.921fb54442d1846ap+0 : inexact-ok
+= atan2 downward binary128 0x4p-1076 0x5.e53b26a270a29eb8p-13316 : 0x1.921fb54442d18469898cc51701b8p+0 : inexact-ok
+= atan2 tonearest binary128 0x4p-1076 0x5.e53b26a270a29eb8p-13316 : 0x1.921fb54442d18469898cc51701b8p+0 : inexact-ok
+= atan2 towardzero binary128 0x4p-1076 0x5.e53b26a270a29eb8p-13316 : 0x1.921fb54442d18469898cc51701b8p+0 : inexact-ok
+= atan2 upward binary128 0x4p-1076 0x5.e53b26a270a29eb8p-13316 : 0x1.921fb54442d18469898cc51701b9p+0 : inexact-ok
+= atan2 downward binary128 0x4p-1076 0x5.e53b26a270a29eb9f77ef8ef7af8p-13316 : 0x1.921fb54442d18469898cc51701b8p+0 : inexact-ok
+= atan2 tonearest binary128 0x4p-1076 0x5.e53b26a270a29eb9f77ef8ef7af8p-13316 : 0x1.921fb54442d18469898cc51701b8p+0 : inexact-ok
+= atan2 towardzero binary128 0x4p-1076 0x5.e53b26a270a29eb9f77ef8ef7af8p-13316 : 0x1.921fb54442d18469898cc51701b8p+0 : inexact-ok
+= atan2 upward binary128 0x4p-1076 0x5.e53b26a270a29eb9f77ef8ef7af8p-13316 : 0x1.921fb54442d18469898cc51701b9p+0 : inexact-ok
+= atan2 downward intel96 0x1.41df5aa214612c8p-13316 0x8p-152 : 0x2.83beb54428c258fcp-13168 : inexact-ok
+= atan2 tonearest intel96 0x1.41df5aa214612c8p-13316 0x8p-152 : 0x2.83beb54428c259p-13168 : inexact-ok
+= atan2 towardzero intel96 0x1.41df5aa214612c8p-13316 0x8p-152 : 0x2.83beb54428c258fcp-13168 : inexact-ok
+= atan2 upward intel96 0x1.41df5aa214612c8p-13316 0x8p-152 : 0x2.83beb54428c259p-13168 : inexact-ok
+= atan2 downward m68k96 0x1.41df5aa214612c8p-13316 0x8p-152 : 0x2.83beb54428c258fcp-13168 : inexact-ok
+= atan2 tonearest m68k96 0x1.41df5aa214612c8p-13316 0x8p-152 : 0x2.83beb54428c259p-13168 : inexact-ok
+= atan2 towardzero m68k96 0x1.41df5aa214612c8p-13316 0x8p-152 : 0x2.83beb54428c258fcp-13168 : inexact-ok
+= atan2 upward m68k96 0x1.41df5aa214612c8p-13316 0x8p-152 : 0x2.83beb54428c259p-13168 : inexact-ok
+= atan2 downward binary128 0x1.41df5aa214612c8p-13316 0x8p-152 : 0x2.83beb54428c258fffffffffffffep-13168 : inexact-ok
+= atan2 tonearest binary128 0x1.41df5aa214612c8p-13316 0x8p-152 : 0x2.83beb54428c259p-13168 : inexact-ok
+= atan2 towardzero binary128 0x1.41df5aa214612c8p-13316 0x8p-152 : 0x2.83beb54428c258fffffffffffffep-13168 : inexact-ok
+= atan2 upward binary128 0x1.41df5aa214612c8p-13316 0x8p-152 : 0x2.83beb54428c259p-13168 : inexact-ok
+= atan2 downward intel96 0x1.41df5aa214612c8p-13316 0x0p+0 : 0x1.921fb54442d18468p+0 : inexact-ok
+= atan2 tonearest intel96 0x1.41df5aa214612c8p-13316 0x0p+0 : 0x1.921fb54442d1846ap+0 : inexact-ok
+= atan2 towardzero intel96 0x1.41df5aa214612c8p-13316 0x0p+0 : 0x1.921fb54442d18468p+0 : inexact-ok
+= atan2 upward intel96 0x1.41df5aa214612c8p-13316 0x0p+0 : 0x1.921fb54442d1846ap+0 : inexact-ok
+= atan2 downward m68k96 0x1.41df5aa214612c8p-13316 0x0p+0 : 0x1.921fb54442d18468p+0 : inexact-ok
+= atan2 tonearest m68k96 0x1.41df5aa214612c8p-13316 0x0p+0 : 0x1.921fb54442d1846ap+0 : inexact-ok
+= atan2 towardzero m68k96 0x1.41df5aa214612c8p-13316 0x0p+0 : 0x1.921fb54442d18468p+0 : inexact-ok
+= atan2 upward m68k96 0x1.41df5aa214612c8p-13316 0x0p+0 : 0x1.921fb54442d1846ap+0 : inexact-ok
+= atan2 downward binary128 0x1.41df5aa214612c8p-13316 0x0p+0 : 0x1.921fb54442d18469898cc51701b8p+0 : inexact-ok
+= atan2 tonearest binary128 0x1.41df5aa214612c8p-13316 0x0p+0 : 0x1.921fb54442d18469898cc51701b8p+0 : inexact-ok
+= atan2 towardzero binary128 0x1.41df5aa214612c8p-13316 0x0p+0 : 0x1.921fb54442d18469898cc51701b8p+0 : inexact-ok
+= atan2 upward binary128 0x1.41df5aa214612c8p-13316 0x0p+0 : 0x1.921fb54442d18469898cc51701b9p+0 : inexact-ok
+= atan2 downward intel96 0x1.41df5aa214612c8p-13316 0x4p-1076 : 0x5.077d6a885184b1f8p-12244 : inexact-ok
+= atan2 tonearest intel96 0x1.41df5aa214612c8p-13316 0x4p-1076 : 0x5.077d6a885184b2p-12244 : inexact-ok
+= atan2 towardzero intel96 0x1.41df5aa214612c8p-13316 0x4p-1076 : 0x5.077d6a885184b1f8p-12244 : inexact-ok
+= atan2 upward intel96 0x1.41df5aa214612c8p-13316 0x4p-1076 : 0x5.077d6a885184b2p-12244 : inexact-ok
+= atan2 downward m68k96 0x1.41df5aa214612c8p-13316 0x4p-1076 : 0x5.077d6a885184b1f8p-12244 : inexact-ok
+= atan2 tonearest m68k96 0x1.41df5aa214612c8p-13316 0x4p-1076 : 0x5.077d6a885184b2p-12244 : inexact-ok
+= atan2 towardzero m68k96 0x1.41df5aa214612c8p-13316 0x4p-1076 : 0x5.077d6a885184b1f8p-12244 : inexact-ok
+= atan2 upward m68k96 0x1.41df5aa214612c8p-13316 0x4p-1076 : 0x5.077d6a885184b2p-12244 : inexact-ok
+= atan2 downward binary128 0x1.41df5aa214612c8p-13316 0x4p-1076 : 0x5.077d6a885184b1fffffffffffffcp-12244 : inexact-ok
+= atan2 tonearest binary128 0x1.41df5aa214612c8p-13316 0x4p-1076 : 0x5.077d6a885184b2p-12244 : inexact-ok
+= atan2 towardzero binary128 0x1.41df5aa214612c8p-13316 0x4p-1076 : 0x5.077d6a885184b1fffffffffffffcp-12244 : inexact-ok
+= atan2 upward binary128 0x1.41df5aa214612c8p-13316 0x4p-1076 : 0x5.077d6a885184b2p-12244 : inexact-ok
+= atan2 downward intel96 0x1.41df5aa214612c8p-13316 0x5.e53b26a270a29ecp-13316 : 0x3.5ca813fb6ec1edb8p-4 : inexact-ok
+= atan2 tonearest intel96 0x1.41df5aa214612c8p-13316 0x5.e53b26a270a29ecp-13316 : 0x3.5ca813fb6ec1edbcp-4 : inexact-ok
+= atan2 towardzero intel96 0x1.41df5aa214612c8p-13316 0x5.e53b26a270a29ecp-13316 : 0x3.5ca813fb6ec1edb8p-4 : inexact-ok
+= atan2 upward intel96 0x1.41df5aa214612c8p-13316 0x5.e53b26a270a29ecp-13316 : 0x3.5ca813fb6ec1edbcp-4 : inexact-ok
+= atan2 downward m68k96 0x1.41df5aa214612c8p-13316 0x5.e53b26a270a29ecp-13316 : 0x3.5ca813fb6ec1edb8p-4 : inexact-ok
+= atan2 tonearest m68k96 0x1.41df5aa214612c8p-13316 0x5.e53b26a270a29ecp-13316 : 0x3.5ca813fb6ec1edbcp-4 : inexact-ok
+= atan2 towardzero m68k96 0x1.41df5aa214612c8p-13316 0x5.e53b26a270a29ecp-13316 : 0x3.5ca813fb6ec1edb8p-4 : inexact-ok
+= atan2 upward m68k96 0x1.41df5aa214612c8p-13316 0x5.e53b26a270a29ecp-13316 : 0x3.5ca813fb6ec1edbcp-4 : inexact-ok
+= atan2 downward binary128 0x1.41df5aa214612c8p-13316 0x5.e53b26a270a29ecp-13316 : 0x3.5ca813fb6ec1edbb4ddcc1a43932p-4 : inexact-ok
+= atan2 tonearest binary128 0x1.41df5aa214612c8p-13316 0x5.e53b26a270a29ecp-13316 : 0x3.5ca813fb6ec1edbb4ddcc1a43934p-4 : inexact-ok
+= atan2 towardzero binary128 0x1.41df5aa214612c8p-13316 0x5.e53b26a270a29ecp-13316 : 0x3.5ca813fb6ec1edbb4ddcc1a43932p-4 : inexact-ok
+= atan2 upward binary128 0x1.41df5aa214612c8p-13316 0x5.e53b26a270a29ecp-13316 : 0x3.5ca813fb6ec1edbb4ddcc1a43934p-4 : inexact-ok
+= atan2 downward intel96 0x1.41df5aa214612c8p-13316 0x5.e53b26a270a29eb8p-13316 : 0x3.5ca813fb6ec1edbcp-4 : inexact-ok
+= atan2 tonearest intel96 0x1.41df5aa214612c8p-13316 0x5.e53b26a270a29eb8p-13316 : 0x3.5ca813fb6ec1edcp-4 : inexact-ok
+= atan2 towardzero intel96 0x1.41df5aa214612c8p-13316 0x5.e53b26a270a29eb8p-13316 : 0x3.5ca813fb6ec1edbcp-4 : inexact-ok
+= atan2 upward intel96 0x1.41df5aa214612c8p-13316 0x5.e53b26a270a29eb8p-13316 : 0x3.5ca813fb6ec1edcp-4 : inexact-ok
+= atan2 downward m68k96 0x1.41df5aa214612c8p-13316 0x5.e53b26a270a29eb8p-13316 : 0x3.5ca813fb6ec1edbcp-4 : inexact-ok
+= atan2 tonearest m68k96 0x1.41df5aa214612c8p-13316 0x5.e53b26a270a29eb8p-13316 : 0x3.5ca813fb6ec1edcp-4 : inexact-ok
+= atan2 towardzero m68k96 0x1.41df5aa214612c8p-13316 0x5.e53b26a270a29eb8p-13316 : 0x3.5ca813fb6ec1edbcp-4 : inexact-ok
+= atan2 upward m68k96 0x1.41df5aa214612c8p-13316 0x5.e53b26a270a29eb8p-13316 : 0x3.5ca813fb6ec1edcp-4 : inexact-ok
+= atan2 downward binary128 0x1.41df5aa214612c8p-13316 0x5.e53b26a270a29eb8p-13316 : 0x3.5ca813fb6ec1edbfbbaf43070b84p-4 : inexact-ok
+= atan2 tonearest binary128 0x1.41df5aa214612c8p-13316 0x5.e53b26a270a29eb8p-13316 : 0x3.5ca813fb6ec1edbfbbaf43070b86p-4 : inexact-ok
+= atan2 towardzero binary128 0x1.41df5aa214612c8p-13316 0x5.e53b26a270a29eb8p-13316 : 0x3.5ca813fb6ec1edbfbbaf43070b84p-4 : inexact-ok
+= atan2 upward binary128 0x1.41df5aa214612c8p-13316 0x5.e53b26a270a29eb8p-13316 : 0x3.5ca813fb6ec1edbfbbaf43070b86p-4 : inexact-ok
+= atan2 downward binary128 0x1.41df5aa214612c8p-13316 0x5.e53b26a270a29eb9f77ef8ef7af8p-13316 : 0x3.5ca813fb6ec1edbea4efe3fb5d98p-4 : inexact-ok
+= atan2 tonearest binary128 0x1.41df5aa214612c8p-13316 0x5.e53b26a270a29eb9f77ef8ef7af8p-13316 : 0x3.5ca813fb6ec1edbea4efe3fb5d9ap-4 : inexact-ok
+= atan2 towardzero binary128 0x1.41df5aa214612c8p-13316 0x5.e53b26a270a29eb9f77ef8ef7af8p-13316 : 0x3.5ca813fb6ec1edbea4efe3fb5d98p-4 : inexact-ok
+= atan2 upward binary128 0x1.41df5aa214612c8p-13316 0x5.e53b26a270a29eb9f77ef8ef7af8p-13316 : 0x3.5ca813fb6ec1edbea4efe3fb5d9ap-4 : inexact-ok
+= atan2 downward intel96 0x1.41df5aa214612c7ep-13316 0x8p-152 : 0x2.83beb54428c258f8p-13168 : inexact-ok
+= atan2 tonearest intel96 0x1.41df5aa214612c7ep-13316 0x8p-152 : 0x2.83beb54428c258fcp-13168 : inexact-ok
+= atan2 towardzero intel96 0x1.41df5aa214612c7ep-13316 0x8p-152 : 0x2.83beb54428c258f8p-13168 : inexact-ok
+= atan2 upward intel96 0x1.41df5aa214612c7ep-13316 0x8p-152 : 0x2.83beb54428c258fcp-13168 : inexact-ok
+= atan2 downward m68k96 0x1.41df5aa214612c7ep-13316 0x8p-152 : 0x2.83beb54428c258f8p-13168 : inexact-ok
+= atan2 tonearest m68k96 0x1.41df5aa214612c7ep-13316 0x8p-152 : 0x2.83beb54428c258fcp-13168 : inexact-ok
+= atan2 towardzero m68k96 0x1.41df5aa214612c7ep-13316 0x8p-152 : 0x2.83beb54428c258f8p-13168 : inexact-ok
+= atan2 upward m68k96 0x1.41df5aa214612c7ep-13316 0x8p-152 : 0x2.83beb54428c258fcp-13168 : inexact-ok
+= atan2 downward binary128 0x1.41df5aa214612c7ep-13316 0x8p-152 : 0x2.83beb54428c258fbfffffffffffep-13168 : inexact-ok
+= atan2 tonearest binary128 0x1.41df5aa214612c7ep-13316 0x8p-152 : 0x2.83beb54428c258fcp-13168 : inexact-ok
+= atan2 towardzero binary128 0x1.41df5aa214612c7ep-13316 0x8p-152 : 0x2.83beb54428c258fbfffffffffffep-13168 : inexact-ok
+= atan2 upward binary128 0x1.41df5aa214612c7ep-13316 0x8p-152 : 0x2.83beb54428c258fcp-13168 : inexact-ok
+= atan2 downward intel96 0x1.41df5aa214612c7ep-13316 0x0p+0 : 0x1.921fb54442d18468p+0 : inexact-ok
+= atan2 tonearest intel96 0x1.41df5aa214612c7ep-13316 0x0p+0 : 0x1.921fb54442d1846ap+0 : inexact-ok
+= atan2 towardzero intel96 0x1.41df5aa214612c7ep-13316 0x0p+0 : 0x1.921fb54442d18468p+0 : inexact-ok
+= atan2 upward intel96 0x1.41df5aa214612c7ep-13316 0x0p+0 : 0x1.921fb54442d1846ap+0 : inexact-ok
+= atan2 downward m68k96 0x1.41df5aa214612c7ep-13316 0x0p+0 : 0x1.921fb54442d18468p+0 : inexact-ok
+= atan2 tonearest m68k96 0x1.41df5aa214612c7ep-13316 0x0p+0 : 0x1.921fb54442d1846ap+0 : inexact-ok
+= atan2 towardzero m68k96 0x1.41df5aa214612c7ep-13316 0x0p+0 : 0x1.921fb54442d18468p+0 : inexact-ok
+= atan2 upward m68k96 0x1.41df5aa214612c7ep-13316 0x0p+0 : 0x1.921fb54442d1846ap+0 : inexact-ok
+= atan2 downward binary128 0x1.41df5aa214612c7ep-13316 0x0p+0 : 0x1.921fb54442d18469898cc51701b8p+0 : inexact-ok
+= atan2 tonearest binary128 0x1.41df5aa214612c7ep-13316 0x0p+0 : 0x1.921fb54442d18469898cc51701b8p+0 : inexact-ok
+= atan2 towardzero binary128 0x1.41df5aa214612c7ep-13316 0x0p+0 : 0x1.921fb54442d18469898cc51701b8p+0 : inexact-ok
+= atan2 upward binary128 0x1.41df5aa214612c7ep-13316 0x0p+0 : 0x1.921fb54442d18469898cc51701b9p+0 : inexact-ok
+= atan2 downward intel96 0x1.41df5aa214612c7ep-13316 0x4p-1076 : 0x5.077d6a885184b1fp-12244 : inexact-ok
+= atan2 tonearest intel96 0x1.41df5aa214612c7ep-13316 0x4p-1076 : 0x5.077d6a885184b1f8p-12244 : inexact-ok
+= atan2 towardzero intel96 0x1.41df5aa214612c7ep-13316 0x4p-1076 : 0x5.077d6a885184b1fp-12244 : inexact-ok
+= atan2 upward intel96 0x1.41df5aa214612c7ep-13316 0x4p-1076 : 0x5.077d6a885184b1f8p-12244 : inexact-ok
+= atan2 downward m68k96 0x1.41df5aa214612c7ep-13316 0x4p-1076 : 0x5.077d6a885184b1fp-12244 : inexact-ok
+= atan2 tonearest m68k96 0x1.41df5aa214612c7ep-13316 0x4p-1076 : 0x5.077d6a885184b1f8p-12244 : inexact-ok
+= atan2 towardzero m68k96 0x1.41df5aa214612c7ep-13316 0x4p-1076 : 0x5.077d6a885184b1fp-12244 : inexact-ok
+= atan2 upward m68k96 0x1.41df5aa214612c7ep-13316 0x4p-1076 : 0x5.077d6a885184b1f8p-12244 : inexact-ok
+= atan2 downward binary128 0x1.41df5aa214612c7ep-13316 0x4p-1076 : 0x5.077d6a885184b1f7fffffffffffcp-12244 : inexact-ok
+= atan2 tonearest binary128 0x1.41df5aa214612c7ep-13316 0x4p-1076 : 0x5.077d6a885184b1f8p-12244 : inexact-ok
+= atan2 towardzero binary128 0x1.41df5aa214612c7ep-13316 0x4p-1076 : 0x5.077d6a885184b1f7fffffffffffcp-12244 : inexact-ok
+= atan2 upward binary128 0x1.41df5aa214612c7ep-13316 0x4p-1076 : 0x5.077d6a885184b1f8p-12244 : inexact-ok
+= atan2 downward intel96 0x1.41df5aa214612c7ep-13316 0x5.e53b26a270a29ecp-13316 : 0x3.5ca813fb6ec1edb4p-4 : inexact-ok
+= atan2 tonearest intel96 0x1.41df5aa214612c7ep-13316 0x5.e53b26a270a29ecp-13316 : 0x3.5ca813fb6ec1edb8p-4 : inexact-ok
+= atan2 towardzero intel96 0x1.41df5aa214612c7ep-13316 0x5.e53b26a270a29ecp-13316 : 0x3.5ca813fb6ec1edb4p-4 : inexact-ok
+= atan2 upward intel96 0x1.41df5aa214612c7ep-13316 0x5.e53b26a270a29ecp-13316 : 0x3.5ca813fb6ec1edb8p-4 : inexact-ok
+= atan2 downward m68k96 0x1.41df5aa214612c7ep-13316 0x5.e53b26a270a29ecp-13316 : 0x3.5ca813fb6ec1edb4p-4 : inexact-ok
+= atan2 tonearest m68k96 0x1.41df5aa214612c7ep-13316 0x5.e53b26a270a29ecp-13316 : 0x3.5ca813fb6ec1edb8p-4 : inexact-ok
+= atan2 towardzero m68k96 0x1.41df5aa214612c7ep-13316 0x5.e53b26a270a29ecp-13316 : 0x3.5ca813fb6ec1edb4p-4 : inexact-ok
+= atan2 upward m68k96 0x1.41df5aa214612c7ep-13316 0x5.e53b26a270a29ecp-13316 : 0x3.5ca813fb6ec1edb8p-4 : inexact-ok
+= atan2 downward binary128 0x1.41df5aa214612c7ep-13316 0x5.e53b26a270a29ecp-13316 : 0x3.5ca813fb6ec1edb61cc3c20a3d84p-4 : inexact-ok
+= atan2 tonearest binary128 0x1.41df5aa214612c7ep-13316 0x5.e53b26a270a29ecp-13316 : 0x3.5ca813fb6ec1edb61cc3c20a3d86p-4 : inexact-ok
+= atan2 towardzero binary128 0x1.41df5aa214612c7ep-13316 0x5.e53b26a270a29ecp-13316 : 0x3.5ca813fb6ec1edb61cc3c20a3d84p-4 : inexact-ok
+= atan2 upward binary128 0x1.41df5aa214612c7ep-13316 0x5.e53b26a270a29ecp-13316 : 0x3.5ca813fb6ec1edb61cc3c20a3d86p-4 : inexact-ok
+= atan2 downward intel96 0x1.41df5aa214612c7ep-13316 0x5.e53b26a270a29eb8p-13316 : 0x3.5ca813fb6ec1edb8p-4 : inexact-ok
+= atan2 tonearest intel96 0x1.41df5aa214612c7ep-13316 0x5.e53b26a270a29eb8p-13316 : 0x3.5ca813fb6ec1edbcp-4 : inexact-ok
+= atan2 towardzero intel96 0x1.41df5aa214612c7ep-13316 0x5.e53b26a270a29eb8p-13316 : 0x3.5ca813fb6ec1edb8p-4 : inexact-ok
+= atan2 upward intel96 0x1.41df5aa214612c7ep-13316 0x5.e53b26a270a29eb8p-13316 : 0x3.5ca813fb6ec1edbcp-4 : inexact-ok
+= atan2 downward m68k96 0x1.41df5aa214612c7ep-13316 0x5.e53b26a270a29eb8p-13316 : 0x3.5ca813fb6ec1edb8p-4 : inexact-ok
+= atan2 tonearest m68k96 0x1.41df5aa214612c7ep-13316 0x5.e53b26a270a29eb8p-13316 : 0x3.5ca813fb6ec1edbcp-4 : inexact-ok
+= atan2 towardzero m68k96 0x1.41df5aa214612c7ep-13316 0x5.e53b26a270a29eb8p-13316 : 0x3.5ca813fb6ec1edb8p-4 : inexact-ok
+= atan2 upward m68k96 0x1.41df5aa214612c7ep-13316 0x5.e53b26a270a29eb8p-13316 : 0x3.5ca813fb6ec1edbcp-4 : inexact-ok
+= atan2 downward binary128 0x1.41df5aa214612c7ep-13316 0x5.e53b26a270a29eb8p-13316 : 0x3.5ca813fb6ec1edba8a96436d0fd6p-4 : inexact-ok
+= atan2 tonearest binary128 0x1.41df5aa214612c7ep-13316 0x5.e53b26a270a29eb8p-13316 : 0x3.5ca813fb6ec1edba8a96436d0fd8p-4 : inexact-ok
+= atan2 towardzero binary128 0x1.41df5aa214612c7ep-13316 0x5.e53b26a270a29eb8p-13316 : 0x3.5ca813fb6ec1edba8a96436d0fd6p-4 : inexact-ok
+= atan2 upward binary128 0x1.41df5aa214612c7ep-13316 0x5.e53b26a270a29eb8p-13316 : 0x3.5ca813fb6ec1edba8a96436d0fd8p-4 : inexact-ok
+= atan2 downward binary128 0x1.41df5aa214612c7ep-13316 0x5.e53b26a270a29eb9f77ef8ef7af8p-13316 : 0x3.5ca813fb6ec1edb973d6e46161eap-4 : inexact-ok
+= atan2 tonearest binary128 0x1.41df5aa214612c7ep-13316 0x5.e53b26a270a29eb9f77ef8ef7af8p-13316 : 0x3.5ca813fb6ec1edb973d6e46161ecp-4 : inexact-ok
+= atan2 towardzero binary128 0x1.41df5aa214612c7ep-13316 0x5.e53b26a270a29eb9f77ef8ef7af8p-13316 : 0x3.5ca813fb6ec1edb973d6e46161eap-4 : inexact-ok
+= atan2 upward binary128 0x1.41df5aa214612c7ep-13316 0x5.e53b26a270a29eb9f77ef8ef7af8p-13316 : 0x3.5ca813fb6ec1edb973d6e46161ecp-4 : inexact-ok
+= atan2 downward binary128 0x1.41df5aa214612c7e019fa6ade88p-13316 0x8p-152 : 0x2.83beb54428c258fc033f4d5bd0fep-13168 : inexact-ok
+= atan2 tonearest binary128 0x1.41df5aa214612c7e019fa6ade88p-13316 0x8p-152 : 0x2.83beb54428c258fc033f4d5bd1p-13168 : inexact-ok
+= atan2 towardzero binary128 0x1.41df5aa214612c7e019fa6ade88p-13316 0x8p-152 : 0x2.83beb54428c258fc033f4d5bd0fep-13168 : inexact-ok
+= atan2 upward binary128 0x1.41df5aa214612c7e019fa6ade88p-13316 0x8p-152 : 0x2.83beb54428c258fc033f4d5bd1p-13168 : inexact-ok
+= atan2 downward binary128 0x1.41df5aa214612c7e019fa6ade88p-13316 0x0p+0 : 0x1.921fb54442d18469898cc51701b8p+0 : inexact-ok
+= atan2 tonearest binary128 0x1.41df5aa214612c7e019fa6ade88p-13316 0x0p+0 : 0x1.921fb54442d18469898cc51701b8p+0 : inexact-ok
+= atan2 towardzero binary128 0x1.41df5aa214612c7e019fa6ade88p-13316 0x0p+0 : 0x1.921fb54442d18469898cc51701b8p+0 : inexact-ok
+= atan2 upward binary128 0x1.41df5aa214612c7e019fa6ade88p-13316 0x0p+0 : 0x1.921fb54442d18469898cc51701b9p+0 : inexact-ok
+= atan2 downward binary128 0x1.41df5aa214612c7e019fa6ade88p-13316 0x4p-1076 : 0x5.077d6a885184b1f8067e9ab7a1fcp-12244 : inexact-ok
+= atan2 tonearest binary128 0x1.41df5aa214612c7e019fa6ade88p-13316 0x4p-1076 : 0x5.077d6a885184b1f8067e9ab7a2p-12244 : inexact-ok
+= atan2 towardzero binary128 0x1.41df5aa214612c7e019fa6ade88p-13316 0x4p-1076 : 0x5.077d6a885184b1f8067e9ab7a1fcp-12244 : inexact-ok
+= atan2 upward binary128 0x1.41df5aa214612c7e019fa6ade88p-13316 0x4p-1076 : 0x5.077d6a885184b1f8067e9ab7a2p-12244 : inexact-ok
+= atan2 downward binary128 0x1.41df5aa214612c7e019fa6ade88p-13316 0x5.e53b26a270a29ecp-13316 : 0x3.5ca813fb6ec1edb620fabe7bf83p-4 : inexact-ok
+= atan2 tonearest binary128 0x1.41df5aa214612c7e019fa6ade88p-13316 0x5.e53b26a270a29ecp-13316 : 0x3.5ca813fb6ec1edb620fabe7bf832p-4 : inexact-ok
+= atan2 towardzero binary128 0x1.41df5aa214612c7e019fa6ade88p-13316 0x5.e53b26a270a29ecp-13316 : 0x3.5ca813fb6ec1edb620fabe7bf83p-4 : inexact-ok
+= atan2 upward binary128 0x1.41df5aa214612c7e019fa6ade88p-13316 0x5.e53b26a270a29ecp-13316 : 0x3.5ca813fb6ec1edb620fabe7bf832p-4 : inexact-ok
+= atan2 downward binary128 0x1.41df5aa214612c7e019fa6ade88p-13316 0x5.e53b26a270a29eb8p-13316 : 0x3.5ca813fb6ec1edba8ecd3fdeca84p-4 : inexact-ok
+= atan2 tonearest binary128 0x1.41df5aa214612c7e019fa6ade88p-13316 0x5.e53b26a270a29eb8p-13316 : 0x3.5ca813fb6ec1edba8ecd3fdeca84p-4 : inexact-ok
+= atan2 towardzero binary128 0x1.41df5aa214612c7e019fa6ade88p-13316 0x5.e53b26a270a29eb8p-13316 : 0x3.5ca813fb6ec1edba8ecd3fdeca84p-4 : inexact-ok
+= atan2 upward binary128 0x1.41df5aa214612c7e019fa6ade88p-13316 0x5.e53b26a270a29eb8p-13316 : 0x3.5ca813fb6ec1edba8ecd3fdeca86p-4 : inexact-ok
+= atan2 downward binary128 0x1.41df5aa214612c7e019fa6ade88p-13316 0x5.e53b26a270a29eb9f77ef8ef7af8p-13316 : 0x3.5ca813fb6ec1edb9780de0d31c96p-4 : inexact-ok
+= atan2 tonearest binary128 0x1.41df5aa214612c7e019fa6ade88p-13316 0x5.e53b26a270a29eb9f77ef8ef7af8p-13316 : 0x3.5ca813fb6ec1edb9780de0d31c98p-4 : inexact-ok
+= atan2 towardzero binary128 0x1.41df5aa214612c7e019fa6ade88p-13316 0x5.e53b26a270a29eb9f77ef8ef7af8p-13316 : 0x3.5ca813fb6ec1edb9780de0d31c96p-4 : inexact-ok
+= atan2 upward binary128 0x1.41df5aa214612c7e019fa6ade88p-13316 0x5.e53b26a270a29eb9f77ef8ef7af8p-13316 : 0x3.5ca813fb6ec1edb9780de0d31c98p-4 : inexact-ok
 atan2 min min
 = atan2 downward binary32 0x4p-128 0x4p-128 : 0xc.90fdap-4 : inexact-ok
 = atan2 tonearest binary32 0x4p-128 0x4p-128 : 0xc.90fdbp-4 : inexact-ok
diff --git a/math/auto-libm-test-out-atanh b/math/auto-libm-test-out-atanh
index d90a390f19..378ef6e8cf 100644
--- a/math/auto-libm-test-out-atanh
+++ b/math/auto-libm-test-out-atanh
@@ -3112,6 +3112,147 @@ atanh 0x1p-5000
 = atanh tonearest binary128 0x1p-5000 : 0x1p-5000 : inexact-ok
 = atanh towardzero binary128 0x1p-5000 : 0x1p-5000 : inexact-ok
 = atanh upward binary128 0x1p-5000 : 0x1.0000000000000000000000000001p-5000 : inexact-ok
+atanh 0x2.c02a24f3472c7840afbd8cfb68bap-4
+= atanh downward binary32 0x2.c02a28p-4 : 0x2.c73a3cp-4 : inexact-ok
+= atanh tonearest binary32 0x2.c02a28p-4 : 0x2.c73a3cp-4 : inexact-ok
+= atanh towardzero binary32 0x2.c02a28p-4 : 0x2.c73a3cp-4 : inexact-ok
+= atanh upward binary32 0x2.c02a28p-4 : 0x2.c73a4p-4 : inexact-ok
+= atanh downward binary64 0x2.c02a28p-4 : 0x2.c73a3db8f5676p-4 : inexact-ok
+= atanh tonearest binary64 0x2.c02a28p-4 : 0x2.c73a3db8f5678p-4 : inexact-ok
+= atanh towardzero binary64 0x2.c02a28p-4 : 0x2.c73a3db8f5676p-4 : inexact-ok
+= atanh upward binary64 0x2.c02a28p-4 : 0x2.c73a3db8f5678p-4 : inexact-ok
+= atanh downward intel96 0x2.c02a28p-4 : 0x2.c73a3db8f5677cc8p-4 : inexact-ok
+= atanh tonearest intel96 0x2.c02a28p-4 : 0x2.c73a3db8f5677cccp-4 : inexact-ok
+= atanh towardzero intel96 0x2.c02a28p-4 : 0x2.c73a3db8f5677cc8p-4 : inexact-ok
+= atanh upward intel96 0x2.c02a28p-4 : 0x2.c73a3db8f5677cccp-4 : inexact-ok
+= atanh downward m68k96 0x2.c02a28p-4 : 0x2.c73a3db8f5677cc8p-4 : inexact-ok
+= atanh tonearest m68k96 0x2.c02a28p-4 : 0x2.c73a3db8f5677cccp-4 : inexact-ok
+= atanh towardzero m68k96 0x2.c02a28p-4 : 0x2.c73a3db8f5677cc8p-4 : inexact-ok
+= atanh upward m68k96 0x2.c02a28p-4 : 0x2.c73a3db8f5677cccp-4 : inexact-ok
+= atanh downward binary128 0x2.c02a28p-4 : 0x2.c73a3db8f5677ccbe692a02b4a1ep-4 : inexact-ok
+= atanh tonearest binary128 0x2.c02a28p-4 : 0x2.c73a3db8f5677ccbe692a02b4a1ep-4 : inexact-ok
+= atanh towardzero binary128 0x2.c02a28p-4 : 0x2.c73a3db8f5677ccbe692a02b4a1ep-4 : inexact-ok
+= atanh upward binary128 0x2.c02a28p-4 : 0x2.c73a3db8f5677ccbe692a02b4a2p-4 : inexact-ok
+= atanh downward ibm128 0x2.c02a28p-4 : 0x2.c73a3db8f5677ccbe692a02b4ap-4 : inexact-ok
+= atanh tonearest ibm128 0x2.c02a28p-4 : 0x2.c73a3db8f5677ccbe692a02b4ap-4 : inexact-ok
+= atanh towardzero ibm128 0x2.c02a28p-4 : 0x2.c73a3db8f5677ccbe692a02b4ap-4 : inexact-ok
+= atanh upward ibm128 0x2.c02a28p-4 : 0x2.c73a3db8f5677ccbe692a02b4bp-4 : inexact-ok
+= atanh downward binary32 0x2.c02a24p-4 : 0x2.c73a38p-4 : inexact-ok
+= atanh tonearest binary32 0x2.c02a24p-4 : 0x2.c73a38p-4 : inexact-ok
+= atanh towardzero binary32 0x2.c02a24p-4 : 0x2.c73a38p-4 : inexact-ok
+= atanh upward binary32 0x2.c02a24p-4 : 0x2.c73a3cp-4 : inexact-ok
+= atanh downward binary64 0x2.c02a24p-4 : 0x2.c73a3999c5d4p-4 : inexact-ok
+= atanh tonearest binary64 0x2.c02a24p-4 : 0x2.c73a3999c5d42p-4 : inexact-ok
+= atanh towardzero binary64 0x2.c02a24p-4 : 0x2.c73a3999c5d4p-4 : inexact-ok
+= atanh upward binary64 0x2.c02a24p-4 : 0x2.c73a3999c5d42p-4 : inexact-ok
+= atanh downward intel96 0x2.c02a24p-4 : 0x2.c73a3999c5d41404p-4 : inexact-ok
+= atanh tonearest intel96 0x2.c02a24p-4 : 0x2.c73a3999c5d41404p-4 : inexact-ok
+= atanh towardzero intel96 0x2.c02a24p-4 : 0x2.c73a3999c5d41404p-4 : inexact-ok
+= atanh upward intel96 0x2.c02a24p-4 : 0x2.c73a3999c5d41408p-4 : inexact-ok
+= atanh downward m68k96 0x2.c02a24p-4 : 0x2.c73a3999c5d41404p-4 : inexact-ok
+= atanh tonearest m68k96 0x2.c02a24p-4 : 0x2.c73a3999c5d41404p-4 : inexact-ok
+= atanh towardzero m68k96 0x2.c02a24p-4 : 0x2.c73a3999c5d41404p-4 : inexact-ok
+= atanh upward m68k96 0x2.c02a24p-4 : 0x2.c73a3999c5d41408p-4 : inexact-ok
+= atanh downward binary128 0x2.c02a24p-4 : 0x2.c73a3999c5d414054dd8dece68d4p-4 : inexact-ok
+= atanh tonearest binary128 0x2.c02a24p-4 : 0x2.c73a3999c5d414054dd8dece68d6p-4 : inexact-ok
+= atanh towardzero binary128 0x2.c02a24p-4 : 0x2.c73a3999c5d414054dd8dece68d4p-4 : inexact-ok
+= atanh upward binary128 0x2.c02a24p-4 : 0x2.c73a3999c5d414054dd8dece68d6p-4 : inexact-ok
+= atanh downward ibm128 0x2.c02a24p-4 : 0x2.c73a3999c5d414054dd8dece68p-4 : inexact-ok
+= atanh tonearest ibm128 0x2.c02a24p-4 : 0x2.c73a3999c5d414054dd8dece69p-4 : inexact-ok
+= atanh towardzero ibm128 0x2.c02a24p-4 : 0x2.c73a3999c5d414054dd8dece68p-4 : inexact-ok
+= atanh upward ibm128 0x2.c02a24p-4 : 0x2.c73a3999c5d414054dd8dece69p-4 : inexact-ok
+= atanh downward binary64 0x2.c02a24f3472c8p-4 : 0x2.c73a3a9475b5ap-4 : inexact-ok
+= atanh tonearest binary64 0x2.c02a24f3472c8p-4 : 0x2.c73a3a9475b5ap-4 : inexact-ok
+= atanh towardzero binary64 0x2.c02a24f3472c8p-4 : 0x2.c73a3a9475b5ap-4 : inexact-ok
+= atanh upward binary64 0x2.c02a24f3472c8p-4 : 0x2.c73a3a9475b5cp-4 : inexact-ok
+= atanh downward intel96 0x2.c02a24f3472c8p-4 : 0x2.c73a3a9475b5ae14p-4 : inexact-ok
+= atanh tonearest intel96 0x2.c02a24f3472c8p-4 : 0x2.c73a3a9475b5ae14p-4 : inexact-ok
+= atanh towardzero intel96 0x2.c02a24f3472c8p-4 : 0x2.c73a3a9475b5ae14p-4 : inexact-ok
+= atanh upward intel96 0x2.c02a24f3472c8p-4 : 0x2.c73a3a9475b5ae18p-4 : inexact-ok
+= atanh downward m68k96 0x2.c02a24f3472c8p-4 : 0x2.c73a3a9475b5ae14p-4 : inexact-ok
+= atanh tonearest m68k96 0x2.c02a24f3472c8p-4 : 0x2.c73a3a9475b5ae14p-4 : inexact-ok
+= atanh towardzero m68k96 0x2.c02a24f3472c8p-4 : 0x2.c73a3a9475b5ae14p-4 : inexact-ok
+= atanh upward m68k96 0x2.c02a24f3472c8p-4 : 0x2.c73a3a9475b5ae18p-4 : inexact-ok
+= atanh downward binary128 0x2.c02a24f3472c8p-4 : 0x2.c73a3a9475b5ae1543ad4fac71f4p-4 : inexact-ok
+= atanh tonearest binary128 0x2.c02a24f3472c8p-4 : 0x2.c73a3a9475b5ae1543ad4fac71f4p-4 : inexact-ok
+= atanh towardzero binary128 0x2.c02a24f3472c8p-4 : 0x2.c73a3a9475b5ae1543ad4fac71f4p-4 : inexact-ok
+= atanh upward binary128 0x2.c02a24f3472c8p-4 : 0x2.c73a3a9475b5ae1543ad4fac71f6p-4 : inexact-ok
+= atanh downward ibm128 0x2.c02a24f3472c8p-4 : 0x2.c73a3a9475b5ae1543ad4fac71p-4 : inexact-ok
+= atanh tonearest ibm128 0x2.c02a24f3472c8p-4 : 0x2.c73a3a9475b5ae1543ad4fac72p-4 : inexact-ok
+= atanh towardzero ibm128 0x2.c02a24f3472c8p-4 : 0x2.c73a3a9475b5ae1543ad4fac71p-4 : inexact-ok
+= atanh upward ibm128 0x2.c02a24f3472c8p-4 : 0x2.c73a3a9475b5ae1543ad4fac72p-4 : inexact-ok
+= atanh downward binary64 0x2.c02a24f3472c6p-4 : 0x2.c73a3a9475b58p-4 : inexact-ok
+= atanh tonearest binary64 0x2.c02a24f3472c6p-4 : 0x2.c73a3a9475b58p-4 : inexact-ok
+= atanh towardzero binary64 0x2.c02a24f3472c6p-4 : 0x2.c73a3a9475b58p-4 : inexact-ok
+= atanh upward binary64 0x2.c02a24f3472c6p-4 : 0x2.c73a3a9475b5ap-4 : inexact-ok
+= atanh downward intel96 0x2.c02a24f3472c6p-4 : 0x2.c73a3a9475b58d18p-4 : inexact-ok
+= atanh tonearest intel96 0x2.c02a24f3472c6p-4 : 0x2.c73a3a9475b58d1cp-4 : inexact-ok
+= atanh towardzero intel96 0x2.c02a24f3472c6p-4 : 0x2.c73a3a9475b58d18p-4 : inexact-ok
+= atanh upward intel96 0x2.c02a24f3472c6p-4 : 0x2.c73a3a9475b58d1cp-4 : inexact-ok
+= atanh downward m68k96 0x2.c02a24f3472c6p-4 : 0x2.c73a3a9475b58d18p-4 : inexact-ok
+= atanh tonearest m68k96 0x2.c02a24f3472c6p-4 : 0x2.c73a3a9475b58d1cp-4 : inexact-ok
+= atanh towardzero m68k96 0x2.c02a24f3472c6p-4 : 0x2.c73a3a9475b58d18p-4 : inexact-ok
+= atanh upward m68k96 0x2.c02a24f3472c6p-4 : 0x2.c73a3a9475b58d1cp-4 : inexact-ok
+= atanh downward binary128 0x2.c02a24f3472c6p-4 : 0x2.c73a3a9475b58d1bc712cdaf1656p-4 : inexact-ok
+= atanh tonearest binary128 0x2.c02a24f3472c6p-4 : 0x2.c73a3a9475b58d1bc712cdaf1658p-4 : inexact-ok
+= atanh towardzero binary128 0x2.c02a24f3472c6p-4 : 0x2.c73a3a9475b58d1bc712cdaf1656p-4 : inexact-ok
+= atanh upward binary128 0x2.c02a24f3472c6p-4 : 0x2.c73a3a9475b58d1bc712cdaf1658p-4 : inexact-ok
+= atanh downward ibm128 0x2.c02a24f3472c6p-4 : 0x2.c73a3a9475b58d1bc712cdaf16p-4 : inexact-ok
+= atanh tonearest ibm128 0x2.c02a24f3472c6p-4 : 0x2.c73a3a9475b58d1bc712cdaf16p-4 : inexact-ok
+= atanh towardzero ibm128 0x2.c02a24f3472c6p-4 : 0x2.c73a3a9475b58d1bc712cdaf16p-4 : inexact-ok
+= atanh upward ibm128 0x2.c02a24f3472c6p-4 : 0x2.c73a3a9475b58d1bc712cdaf17p-4 : inexact-ok
+= atanh downward intel96 0x2.c02a24f3472c7844p-4 : 0x2.c73a3a9475b5a61cp-4 : inexact-ok
+= atanh tonearest intel96 0x2.c02a24f3472c7844p-4 : 0x2.c73a3a9475b5a61cp-4 : inexact-ok
+= atanh towardzero intel96 0x2.c02a24f3472c7844p-4 : 0x2.c73a3a9475b5a61cp-4 : inexact-ok
+= atanh upward intel96 0x2.c02a24f3472c7844p-4 : 0x2.c73a3a9475b5a62p-4 : inexact-ok
+= atanh downward m68k96 0x2.c02a24f3472c7844p-4 : 0x2.c73a3a9475b5a61cp-4 : inexact-ok
+= atanh tonearest m68k96 0x2.c02a24f3472c7844p-4 : 0x2.c73a3a9475b5a61cp-4 : inexact-ok
+= atanh towardzero m68k96 0x2.c02a24f3472c7844p-4 : 0x2.c73a3a9475b5a61cp-4 : inexact-ok
+= atanh upward m68k96 0x2.c02a24f3472c7844p-4 : 0x2.c73a3a9475b5a62p-4 : inexact-ok
+= atanh downward binary128 0x2.c02a24f3472c7844p-4 : 0x2.c73a3a9475b5a61cf6af7781556ep-4 : inexact-ok
+= atanh tonearest binary128 0x2.c02a24f3472c7844p-4 : 0x2.c73a3a9475b5a61cf6af7781556ep-4 : inexact-ok
+= atanh towardzero binary128 0x2.c02a24f3472c7844p-4 : 0x2.c73a3a9475b5a61cf6af7781556ep-4 : inexact-ok
+= atanh upward binary128 0x2.c02a24f3472c7844p-4 : 0x2.c73a3a9475b5a61cf6af7781557p-4 : inexact-ok
+= atanh downward ibm128 0x2.c02a24f3472c7844p-4 : 0x2.c73a3a9475b5a61cf6af778155p-4 : inexact-ok
+= atanh tonearest ibm128 0x2.c02a24f3472c7844p-4 : 0x2.c73a3a9475b5a61cf6af778155p-4 : inexact-ok
+= atanh towardzero ibm128 0x2.c02a24f3472c7844p-4 : 0x2.c73a3a9475b5a61cf6af778155p-4 : inexact-ok
+= atanh upward ibm128 0x2.c02a24f3472c7844p-4 : 0x2.c73a3a9475b5a61cf6af778156p-4 : inexact-ok
+= atanh downward intel96 0x2.c02a24f3472c784p-4 : 0x2.c73a3a9475b5a618p-4 : inexact-ok
+= atanh tonearest intel96 0x2.c02a24f3472c784p-4 : 0x2.c73a3a9475b5a618p-4 : inexact-ok
+= atanh towardzero intel96 0x2.c02a24f3472c784p-4 : 0x2.c73a3a9475b5a618p-4 : inexact-ok
+= atanh upward intel96 0x2.c02a24f3472c784p-4 : 0x2.c73a3a9475b5a61cp-4 : inexact-ok
+= atanh downward m68k96 0x2.c02a24f3472c784p-4 : 0x2.c73a3a9475b5a618p-4 : inexact-ok
+= atanh tonearest m68k96 0x2.c02a24f3472c784p-4 : 0x2.c73a3a9475b5a618p-4 : inexact-ok
+= atanh towardzero m68k96 0x2.c02a24f3472c784p-4 : 0x2.c73a3a9475b5a618p-4 : inexact-ok
+= atanh upward m68k96 0x2.c02a24f3472c784p-4 : 0x2.c73a3a9475b5a61cp-4 : inexact-ok
+= atanh downward binary128 0x2.c02a24f3472c784p-4 : 0x2.c73a3a9475b5a618d77fe43115c2p-4 : inexact-ok
+= atanh tonearest binary128 0x2.c02a24f3472c784p-4 : 0x2.c73a3a9475b5a618d77fe43115c2p-4 : inexact-ok
+= atanh towardzero binary128 0x2.c02a24f3472c784p-4 : 0x2.c73a3a9475b5a618d77fe43115c2p-4 : inexact-ok
+= atanh upward binary128 0x2.c02a24f3472c784p-4 : 0x2.c73a3a9475b5a618d77fe43115c4p-4 : inexact-ok
+= atanh downward ibm128 0x2.c02a24f3472c784p-4 : 0x2.c73a3a9475b5a618d77fe43115p-4 : inexact-ok
+= atanh tonearest ibm128 0x2.c02a24f3472c784p-4 : 0x2.c73a3a9475b5a618d77fe43116p-4 : inexact-ok
+= atanh towardzero ibm128 0x2.c02a24f3472c784p-4 : 0x2.c73a3a9475b5a618d77fe43115p-4 : inexact-ok
+= atanh upward ibm128 0x2.c02a24f3472c784p-4 : 0x2.c73a3a9475b5a618d77fe43116p-4 : inexact-ok
+= atanh downward binary128 0x2.c02a24f3472c7840afbd8cfb68bap-4 : 0x2.c73a3a9475b5a6198c97986c8f2ap-4 : inexact-ok
+= atanh tonearest binary128 0x2.c02a24f3472c7840afbd8cfb68bap-4 : 0x2.c73a3a9475b5a6198c97986c8f2cp-4 : inexact-ok
+= atanh towardzero binary128 0x2.c02a24f3472c7840afbd8cfb68bap-4 : 0x2.c73a3a9475b5a6198c97986c8f2ap-4 : inexact-ok
+= atanh upward binary128 0x2.c02a24f3472c7840afbd8cfb68bap-4 : 0x2.c73a3a9475b5a6198c97986c8f2cp-4 : inexact-ok
+= atanh downward binary128 0x2.c02a24f3472c7840afbd8cfb69p-4 : 0x2.c73a3a9475b5a6198c97986c8f72p-4 : inexact-ok
+= atanh tonearest binary128 0x2.c02a24f3472c7840afbd8cfb69p-4 : 0x2.c73a3a9475b5a6198c97986c8f74p-4 : inexact-ok
+= atanh towardzero binary128 0x2.c02a24f3472c7840afbd8cfb69p-4 : 0x2.c73a3a9475b5a6198c97986c8f72p-4 : inexact-ok
+= atanh upward binary128 0x2.c02a24f3472c7840afbd8cfb69p-4 : 0x2.c73a3a9475b5a6198c97986c8f74p-4 : inexact-ok
+= atanh downward ibm128 0x2.c02a24f3472c7840afbd8cfb69p-4 : 0x2.c73a3a9475b5a6198c97986c8fp-4 : inexact-ok
+= atanh tonearest ibm128 0x2.c02a24f3472c7840afbd8cfb69p-4 : 0x2.c73a3a9475b5a6198c97986c8fp-4 : inexact-ok
+= atanh towardzero ibm128 0x2.c02a24f3472c7840afbd8cfb69p-4 : 0x2.c73a3a9475b5a6198c97986c8fp-4 : inexact-ok
+= atanh upward ibm128 0x2.c02a24f3472c7840afbd8cfb69p-4 : 0x2.c73a3a9475b5a6198c97986c9p-4 : inexact-ok
+= atanh downward binary128 0x2.c02a24f3472c7840afbd8cfb68p-4 : 0x2.c73a3a9475b5a6198c97986c8e6cp-4 : inexact-ok
+= atanh tonearest binary128 0x2.c02a24f3472c7840afbd8cfb68p-4 : 0x2.c73a3a9475b5a6198c97986c8e6cp-4 : inexact-ok
+= atanh towardzero binary128 0x2.c02a24f3472c7840afbd8cfb68p-4 : 0x2.c73a3a9475b5a6198c97986c8e6cp-4 : inexact-ok
+= atanh upward binary128 0x2.c02a24f3472c7840afbd8cfb68p-4 : 0x2.c73a3a9475b5a6198c97986c8e6ep-4 : inexact-ok
+= atanh downward ibm128 0x2.c02a24f3472c7840afbd8cfb68p-4 : 0x2.c73a3a9475b5a6198c97986c8ep-4 : inexact-ok
+= atanh tonearest ibm128 0x2.c02a24f3472c7840afbd8cfb68p-4 : 0x2.c73a3a9475b5a6198c97986c8ep-4 : inexact-ok
+= atanh towardzero ibm128 0x2.c02a24f3472c7840afbd8cfb68p-4 : 0x2.c73a3a9475b5a6198c97986c8ep-4 : inexact-ok
+= atanh upward ibm128 0x2.c02a24f3472c7840afbd8cfb68p-4 : 0x2.c73a3a9475b5a6198c97986c8fp-4 : inexact-ok
 atanh min
 = atanh downward binary32 0x4p-128 : 0x4p-128 : inexact-ok underflow-ok errno-erange-ok
 = atanh tonearest binary32 0x4p-128 : 0x4p-128 : inexact-ok underflow-ok errno-erange-ok
diff --git a/math/auto-libm-test-out-cos b/math/auto-libm-test-out-cos
index fcb5d17924..795a6eb447 100644
--- a/math/auto-libm-test-out-cos
+++ b/math/auto-libm-test-out-cos
@@ -3248,3 +3248,144 @@ cos 0x2.3c6ef4p-12
 = cos tonearest ibm128 0x2.3c6ef4p-12 : 0xf.ffffd7fffffcf5e6384f874e68p-4 : inexact-ok
 = cos towardzero ibm128 0x2.3c6ef4p-12 : 0xf.ffffd7fffffcf5e6384f874e68p-4 : inexact-ok
 = cos upward ibm128 0x2.3c6ef4p-12 : 0xf.ffffd7fffffcf5e6384f874e6cp-4 : inexact-ok
+cos 0xe.6672d458b05edf50af4fab1a42p+40
+= cos downward binary32 0xe.6672ep+40 : -0xc.04e3ep-8 : inexact-ok
+= cos tonearest binary32 0xe.6672ep+40 : -0xc.04e3dp-8 : inexact-ok
+= cos towardzero binary32 0xe.6672ep+40 : -0xc.04e3dp-8 : inexact-ok
+= cos upward binary32 0xe.6672ep+40 : -0xc.04e3dp-8 : inexact-ok
+= cos downward binary64 0xe.6672ep+40 : -0xc.04e3d7b33316p-8 : inexact-ok
+= cos tonearest binary64 0xe.6672ep+40 : -0xc.04e3d7b33316p-8 : inexact-ok
+= cos towardzero binary64 0xe.6672ep+40 : -0xc.04e3d7b333158p-8 : inexact-ok
+= cos upward binary64 0xe.6672ep+40 : -0xc.04e3d7b333158p-8 : inexact-ok
+= cos downward intel96 0xe.6672ep+40 : -0xc.04e3d7b33315e57p-8 : inexact-ok
+= cos tonearest intel96 0xe.6672ep+40 : -0xc.04e3d7b33315e57p-8 : inexact-ok
+= cos towardzero intel96 0xe.6672ep+40 : -0xc.04e3d7b33315e56p-8 : inexact-ok
+= cos upward intel96 0xe.6672ep+40 : -0xc.04e3d7b33315e56p-8 : inexact-ok
+= cos downward m68k96 0xe.6672ep+40 : -0xc.04e3d7b33315e57p-8 : inexact-ok
+= cos tonearest m68k96 0xe.6672ep+40 : -0xc.04e3d7b33315e57p-8 : inexact-ok
+= cos towardzero m68k96 0xe.6672ep+40 : -0xc.04e3d7b33315e56p-8 : inexact-ok
+= cos upward m68k96 0xe.6672ep+40 : -0xc.04e3d7b33315e56p-8 : inexact-ok
+= cos downward binary128 0xe.6672ep+40 : -0xc.04e3d7b33315e56d155d1ce9ee18p-8 : inexact-ok
+= cos tonearest binary128 0xe.6672ep+40 : -0xc.04e3d7b33315e56d155d1ce9ee18p-8 : inexact-ok
+= cos towardzero binary128 0xe.6672ep+40 : -0xc.04e3d7b33315e56d155d1ce9ee1p-8 : inexact-ok
+= cos upward binary128 0xe.6672ep+40 : -0xc.04e3d7b33315e56d155d1ce9ee1p-8 : inexact-ok
+= cos downward ibm128 0xe.6672ep+40 : -0xc.04e3d7b33315e56d155d1ce9fp-8 : inexact-ok
+= cos tonearest ibm128 0xe.6672ep+40 : -0xc.04e3d7b33315e56d155d1ce9fp-8 : inexact-ok
+= cos towardzero ibm128 0xe.6672ep+40 : -0xc.04e3d7b33315e56d155d1ce9ecp-8 : inexact-ok
+= cos upward ibm128 0xe.6672ep+40 : -0xc.04e3d7b33315e56d155d1ce9ecp-8 : inexact-ok
+= cos downward binary32 0xe.6672dp+40 : 0x4.92b518p-4 : inexact-ok
+= cos tonearest binary32 0xe.6672dp+40 : 0x4.92b518p-4 : inexact-ok
+= cos towardzero binary32 0xe.6672dp+40 : 0x4.92b518p-4 : inexact-ok
+= cos upward binary32 0xe.6672dp+40 : 0x4.92b52p-4 : inexact-ok
+= cos downward binary64 0xe.6672dp+40 : 0x4.92b51be9ed22cp-4 : inexact-ok
+= cos tonearest binary64 0xe.6672dp+40 : 0x4.92b51be9ed23p-4 : inexact-ok
+= cos towardzero binary64 0xe.6672dp+40 : 0x4.92b51be9ed22cp-4 : inexact-ok
+= cos upward binary64 0xe.6672dp+40 : 0x4.92b51be9ed23p-4 : inexact-ok
+= cos downward intel96 0xe.6672dp+40 : 0x4.92b51be9ed22fb5p-4 : inexact-ok
+= cos tonearest intel96 0xe.6672dp+40 : 0x4.92b51be9ed22fb58p-4 : inexact-ok
+= cos towardzero intel96 0xe.6672dp+40 : 0x4.92b51be9ed22fb5p-4 : inexact-ok
+= cos upward intel96 0xe.6672dp+40 : 0x4.92b51be9ed22fb58p-4 : inexact-ok
+= cos downward m68k96 0xe.6672dp+40 : 0x4.92b51be9ed22fb5p-4 : inexact-ok
+= cos tonearest m68k96 0xe.6672dp+40 : 0x4.92b51be9ed22fb58p-4 : inexact-ok
+= cos towardzero m68k96 0xe.6672dp+40 : 0x4.92b51be9ed22fb5p-4 : inexact-ok
+= cos upward m68k96 0xe.6672dp+40 : 0x4.92b51be9ed22fb58p-4 : inexact-ok
+= cos downward binary128 0xe.6672dp+40 : 0x4.92b51be9ed22fb55105031b7163p-4 : inexact-ok
+= cos tonearest binary128 0xe.6672dp+40 : 0x4.92b51be9ed22fb55105031b7163p-4 : inexact-ok
+= cos towardzero binary128 0xe.6672dp+40 : 0x4.92b51be9ed22fb55105031b7163p-4 : inexact-ok
+= cos upward binary128 0xe.6672dp+40 : 0x4.92b51be9ed22fb55105031b71634p-4 : inexact-ok
+= cos downward ibm128 0xe.6672dp+40 : 0x4.92b51be9ed22fb55105031b716p-4 : inexact-ok
+= cos tonearest ibm128 0xe.6672dp+40 : 0x4.92b51be9ed22fb55105031b716p-4 : inexact-ok
+= cos towardzero ibm128 0xe.6672dp+40 : 0x4.92b51be9ed22fb55105031b716p-4 : inexact-ok
+= cos upward ibm128 0xe.6672dp+40 : 0x4.92b51be9ed22fb55105031b718p-4 : inexact-ok
+= cos downward binary64 0xe.6672d458b05fp+40 : 0x1.fd4fd52bd4269p-4 : inexact-ok
+= cos tonearest binary64 0xe.6672d458b05fp+40 : 0x1.fd4fd52bd426ap-4 : inexact-ok
+= cos towardzero binary64 0xe.6672d458b05fp+40 : 0x1.fd4fd52bd4269p-4 : inexact-ok
+= cos upward binary64 0xe.6672d458b05fp+40 : 0x1.fd4fd52bd426ap-4 : inexact-ok
+= cos downward intel96 0xe.6672d458b05fp+40 : 0x1.fd4fd52bd4269f44p-4 : inexact-ok
+= cos tonearest intel96 0xe.6672d458b05fp+40 : 0x1.fd4fd52bd4269f46p-4 : inexact-ok
+= cos towardzero intel96 0xe.6672d458b05fp+40 : 0x1.fd4fd52bd4269f44p-4 : inexact-ok
+= cos upward intel96 0xe.6672d458b05fp+40 : 0x1.fd4fd52bd4269f46p-4 : inexact-ok
+= cos downward m68k96 0xe.6672d458b05fp+40 : 0x1.fd4fd52bd4269f44p-4 : inexact-ok
+= cos tonearest m68k96 0xe.6672d458b05fp+40 : 0x1.fd4fd52bd4269f46p-4 : inexact-ok
+= cos towardzero m68k96 0xe.6672d458b05fp+40 : 0x1.fd4fd52bd4269f44p-4 : inexact-ok
+= cos upward m68k96 0xe.6672d458b05fp+40 : 0x1.fd4fd52bd4269f46p-4 : inexact-ok
+= cos downward binary128 0xe.6672d458b05fp+40 : 0x1.fd4fd52bd4269f45bd8a6a988d48p-4 : inexact-ok
+= cos tonearest binary128 0xe.6672d458b05fp+40 : 0x1.fd4fd52bd4269f45bd8a6a988d49p-4 : inexact-ok
+= cos towardzero binary128 0xe.6672d458b05fp+40 : 0x1.fd4fd52bd4269f45bd8a6a988d48p-4 : inexact-ok
+= cos upward binary128 0xe.6672d458b05fp+40 : 0x1.fd4fd52bd4269f45bd8a6a988d49p-4 : inexact-ok
+= cos downward ibm128 0xe.6672d458b05fp+40 : 0x1.fd4fd52bd4269f45bd8a6a988dp-4 : inexact-ok
+= cos tonearest ibm128 0xe.6672d458b05fp+40 : 0x1.fd4fd52bd4269f45bd8a6a988d8p-4 : inexact-ok
+= cos towardzero ibm128 0xe.6672d458b05fp+40 : 0x1.fd4fd52bd4269f45bd8a6a988dp-4 : inexact-ok
+= cos upward ibm128 0xe.6672d458b05fp+40 : 0x1.fd4fd52bd4269f45bd8a6a988d8p-4 : inexact-ok
+= cos downward binary64 0xe.6672d458b05e8p+40 : 0x2.053fb048fe646p-4 : inexact-ok
+= cos tonearest binary64 0xe.6672d458b05e8p+40 : 0x2.053fb048fe646p-4 : inexact-ok
+= cos towardzero binary64 0xe.6672d458b05e8p+40 : 0x2.053fb048fe646p-4 : inexact-ok
+= cos upward binary64 0xe.6672d458b05e8p+40 : 0x2.053fb048fe648p-4 : inexact-ok
+= cos downward intel96 0xe.6672d458b05e8p+40 : 0x2.053fb048fe6462f4p-4 : inexact-ok
+= cos tonearest intel96 0xe.6672d458b05e8p+40 : 0x2.053fb048fe6462f8p-4 : inexact-ok
+= cos towardzero intel96 0xe.6672d458b05e8p+40 : 0x2.053fb048fe6462f4p-4 : inexact-ok
+= cos upward intel96 0xe.6672d458b05e8p+40 : 0x2.053fb048fe6462f8p-4 : inexact-ok
+= cos downward m68k96 0xe.6672d458b05e8p+40 : 0x2.053fb048fe6462f4p-4 : inexact-ok
+= cos tonearest m68k96 0xe.6672d458b05e8p+40 : 0x2.053fb048fe6462f8p-4 : inexact-ok
+= cos towardzero m68k96 0xe.6672d458b05e8p+40 : 0x2.053fb048fe6462f4p-4 : inexact-ok
+= cos upward m68k96 0xe.6672d458b05e8p+40 : 0x2.053fb048fe6462f8p-4 : inexact-ok
+= cos downward binary128 0xe.6672d458b05e8p+40 : 0x2.053fb048fe6462f6c5d88f55f69ap-4 : inexact-ok
+= cos tonearest binary128 0xe.6672d458b05e8p+40 : 0x2.053fb048fe6462f6c5d88f55f69cp-4 : inexact-ok
+= cos towardzero binary128 0xe.6672d458b05e8p+40 : 0x2.053fb048fe6462f6c5d88f55f69ap-4 : inexact-ok
+= cos upward binary128 0xe.6672d458b05e8p+40 : 0x2.053fb048fe6462f6c5d88f55f69cp-4 : inexact-ok
+= cos downward ibm128 0xe.6672d458b05e8p+40 : 0x2.053fb048fe6462f6c5d88f55f6p-4 : inexact-ok
+= cos tonearest ibm128 0xe.6672d458b05e8p+40 : 0x2.053fb048fe6462f6c5d88f55f7p-4 : inexact-ok
+= cos towardzero ibm128 0xe.6672d458b05e8p+40 : 0x2.053fb048fe6462f6c5d88f55f6p-4 : inexact-ok
+= cos upward ibm128 0xe.6672d458b05e8p+40 : 0x2.053fb048fe6462f6c5d88f55f7p-4 : inexact-ok
+= cos downward intel96 0xe.6672d458b05edf6p+40 : 0x1.ff55c3f07675f506p-4 : inexact-ok
+= cos tonearest intel96 0xe.6672d458b05edf6p+40 : 0x1.ff55c3f07675f506p-4 : inexact-ok
+= cos towardzero intel96 0xe.6672d458b05edf6p+40 : 0x1.ff55c3f07675f506p-4 : inexact-ok
+= cos upward intel96 0xe.6672d458b05edf6p+40 : 0x1.ff55c3f07675f508p-4 : inexact-ok
+= cos downward m68k96 0xe.6672d458b05edf6p+40 : 0x1.ff55c3f07675f506p-4 : inexact-ok
+= cos tonearest m68k96 0xe.6672d458b05edf6p+40 : 0x1.ff55c3f07675f506p-4 : inexact-ok
+= cos towardzero m68k96 0xe.6672d458b05edf6p+40 : 0x1.ff55c3f07675f506p-4 : inexact-ok
+= cos upward m68k96 0xe.6672d458b05edf6p+40 : 0x1.ff55c3f07675f508p-4 : inexact-ok
+= cos downward binary128 0xe.6672d458b05edf6p+40 : 0x1.ff55c3f07675f5065a4c74830913p-4 : inexact-ok
+= cos tonearest binary128 0xe.6672d458b05edf6p+40 : 0x1.ff55c3f07675f5065a4c74830913p-4 : inexact-ok
+= cos towardzero binary128 0xe.6672d458b05edf6p+40 : 0x1.ff55c3f07675f5065a4c74830913p-4 : inexact-ok
+= cos upward binary128 0xe.6672d458b05edf6p+40 : 0x1.ff55c3f07675f5065a4c74830914p-4 : inexact-ok
+= cos downward ibm128 0xe.6672d458b05edf6p+40 : 0x1.ff55c3f07675f5065a4c748309p-4 : inexact-ok
+= cos tonearest ibm128 0xe.6672d458b05edf6p+40 : 0x1.ff55c3f07675f5065a4c748309p-4 : inexact-ok
+= cos towardzero ibm128 0xe.6672d458b05edf6p+40 : 0x1.ff55c3f07675f5065a4c748309p-4 : inexact-ok
+= cos upward ibm128 0xe.6672d458b05edf6p+40 : 0x1.ff55c3f07675f5065a4c7483098p-4 : inexact-ok
+= cos downward intel96 0xe.6672d458b05edf5p+40 : 0x1.ff56c1efc85b5ec6p-4 : inexact-ok
+= cos tonearest intel96 0xe.6672d458b05edf5p+40 : 0x1.ff56c1efc85b5ec6p-4 : inexact-ok
+= cos towardzero intel96 0xe.6672d458b05edf5p+40 : 0x1.ff56c1efc85b5ec6p-4 : inexact-ok
+= cos upward intel96 0xe.6672d458b05edf5p+40 : 0x1.ff56c1efc85b5ec8p-4 : inexact-ok
+= cos downward m68k96 0xe.6672d458b05edf5p+40 : 0x1.ff56c1efc85b5ec6p-4 : inexact-ok
+= cos tonearest m68k96 0xe.6672d458b05edf5p+40 : 0x1.ff56c1efc85b5ec6p-4 : inexact-ok
+= cos towardzero m68k96 0xe.6672d458b05edf5p+40 : 0x1.ff56c1efc85b5ec6p-4 : inexact-ok
+= cos upward m68k96 0xe.6672d458b05edf5p+40 : 0x1.ff56c1efc85b5ec8p-4 : inexact-ok
+= cos downward binary128 0xe.6672d458b05edf5p+40 : 0x1.ff56c1efc85b5ec6aad454c88dd9p-4 : inexact-ok
+= cos tonearest binary128 0xe.6672d458b05edf5p+40 : 0x1.ff56c1efc85b5ec6aad454c88ddap-4 : inexact-ok
+= cos towardzero binary128 0xe.6672d458b05edf5p+40 : 0x1.ff56c1efc85b5ec6aad454c88dd9p-4 : inexact-ok
+= cos upward binary128 0xe.6672d458b05edf5p+40 : 0x1.ff56c1efc85b5ec6aad454c88ddap-4 : inexact-ok
+= cos downward ibm128 0xe.6672d458b05edf5p+40 : 0x1.ff56c1efc85b5ec6aad454c88d8p-4 : inexact-ok
+= cos tonearest ibm128 0xe.6672d458b05edf5p+40 : 0x1.ff56c1efc85b5ec6aad454c88ep-4 : inexact-ok
+= cos towardzero ibm128 0xe.6672d458b05edf5p+40 : 0x1.ff56c1efc85b5ec6aad454c88d8p-4 : inexact-ok
+= cos upward ibm128 0xe.6672d458b05edf5p+40 : 0x1.ff56c1efc85b5ec6aad454c88ep-4 : inexact-ok
+= cos downward binary128 0xe.6672d458b05edf50af4fab1a42p+40 : 0x1.ff56b710bf1d3d16bf762e86d21p-4 : inexact-ok
+= cos tonearest binary128 0xe.6672d458b05edf50af4fab1a42p+40 : 0x1.ff56b710bf1d3d16bf762e86d21p-4 : inexact-ok
+= cos towardzero binary128 0xe.6672d458b05edf50af4fab1a42p+40 : 0x1.ff56b710bf1d3d16bf762e86d21p-4 : inexact-ok
+= cos upward binary128 0xe.6672d458b05edf50af4fab1a42p+40 : 0x1.ff56b710bf1d3d16bf762e86d211p-4 : inexact-ok
+= cos downward binary128 0xe.6672d458b05edf50af4fab1a44p+40 : 0x1.ff56b710bf1d3cf6ff8c0f12aa01p-4 : inexact-ok
+= cos tonearest binary128 0xe.6672d458b05edf50af4fab1a44p+40 : 0x1.ff56b710bf1d3cf6ff8c0f12aa02p-4 : inexact-ok
+= cos towardzero binary128 0xe.6672d458b05edf50af4fab1a44p+40 : 0x1.ff56b710bf1d3cf6ff8c0f12aa01p-4 : inexact-ok
+= cos upward binary128 0xe.6672d458b05edf50af4fab1a44p+40 : 0x1.ff56b710bf1d3cf6ff8c0f12aa02p-4 : inexact-ok
+= cos downward ibm128 0xe.6672d458b05edf50af4fab1a44p+40 : 0x1.ff56b710bf1d3cf6ff8c0f12aap-4 : inexact-ok
+= cos tonearest ibm128 0xe.6672d458b05edf50af4fab1a44p+40 : 0x1.ff56b710bf1d3cf6ff8c0f12aap-4 : inexact-ok
+= cos towardzero ibm128 0xe.6672d458b05edf50af4fab1a44p+40 : 0x1.ff56b710bf1d3cf6ff8c0f12aap-4 : inexact-ok
+= cos upward ibm128 0xe.6672d458b05edf50af4fab1a44p+40 : 0x1.ff56b710bf1d3cf6ff8c0f12aa8p-4 : inexact-ok
+= cos downward binary128 0xe.6672d458b05edf50af4fab1a4p+40 : 0x1.ff56b710bf1d3d367f604dfafa1ep-4 : inexact-ok
+= cos tonearest binary128 0xe.6672d458b05edf50af4fab1a4p+40 : 0x1.ff56b710bf1d3d367f604dfafa1fp-4 : inexact-ok
+= cos towardzero binary128 0xe.6672d458b05edf50af4fab1a4p+40 : 0x1.ff56b710bf1d3d367f604dfafa1ep-4 : inexact-ok
+= cos upward binary128 0xe.6672d458b05edf50af4fab1a4p+40 : 0x1.ff56b710bf1d3d367f604dfafa1fp-4 : inexact-ok
+= cos downward ibm128 0xe.6672d458b05edf50af4fab1a4p+40 : 0x1.ff56b710bf1d3d367f604dfafap-4 : inexact-ok
+= cos tonearest ibm128 0xe.6672d458b05edf50af4fab1a4p+40 : 0x1.ff56b710bf1d3d367f604dfafap-4 : inexact-ok
+= cos towardzero ibm128 0xe.6672d458b05edf50af4fab1a4p+40 : 0x1.ff56b710bf1d3d367f604dfafap-4 : inexact-ok
+= cos upward ibm128 0xe.6672d458b05edf50af4fab1a4p+40 : 0x1.ff56b710bf1d3d367f604dfafa8p-4 : inexact-ok
diff --git a/math/auto-libm-test-out-cosh b/math/auto-libm-test-out-cosh
index b2de615a8e..90825bf767 100644
--- a/math/auto-libm-test-out-cosh
+++ b/math/auto-libm-test-out-cosh
@@ -3479,3 +3479,249 @@ cosh 0x1.633c457f1e66bp+9
 = cosh tonearest ibm128 0x2.c6788afe3ccd6p+8 : 0xf.eb9d7748586375cf28c2e4264cp+1020 : inexact-ok
 = cosh towardzero ibm128 0x2.c6788afe3ccd6p+8 : 0xf.eb9d7748586375cf28c2e4264cp+1020 : inexact-ok
 = cosh upward ibm128 0x2.c6788afe3ccd6p+8 : 0xf.eb9d7748586375cf28c2e4265p+1020 : inexact-ok
+cosh 0x2.c5d376167f4052f4p+12
+= cosh downward binary32 0x2.c5d378p+12 : 0xf.fffffp+124 : inexact-ok overflow errno-erange-ok
+= cosh tonearest binary32 0x2.c5d378p+12 : plus_infty : inexact-ok overflow errno-erange
+= cosh towardzero binary32 0x2.c5d378p+12 : 0xf.fffffp+124 : inexact-ok overflow errno-erange-ok
+= cosh upward binary32 0x2.c5d378p+12 : plus_infty : inexact-ok overflow errno-erange
+= cosh downward binary64 0x2.c5d378p+12 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= cosh tonearest binary64 0x2.c5d378p+12 : plus_infty : inexact-ok overflow errno-erange
+= cosh towardzero binary64 0x2.c5d378p+12 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= cosh upward binary64 0x2.c5d378p+12 : plus_infty : inexact-ok overflow errno-erange
+= cosh downward intel96 0x2.c5d378p+12 : 0xf.fffffffffffffffp+16380 : inexact-ok overflow errno-erange-ok
+= cosh tonearest intel96 0x2.c5d378p+12 : plus_infty : inexact-ok overflow errno-erange
+= cosh towardzero intel96 0x2.c5d378p+12 : 0xf.fffffffffffffffp+16380 : inexact-ok overflow errno-erange-ok
+= cosh upward intel96 0x2.c5d378p+12 : plus_infty : inexact-ok overflow errno-erange
+= cosh downward m68k96 0x2.c5d378p+12 : 0xf.fffffffffffffffp+16380 : inexact-ok overflow errno-erange-ok
+= cosh tonearest m68k96 0x2.c5d378p+12 : plus_infty : inexact-ok overflow errno-erange
+= cosh towardzero m68k96 0x2.c5d378p+12 : 0xf.fffffffffffffffp+16380 : inexact-ok overflow errno-erange-ok
+= cosh upward m68k96 0x2.c5d378p+12 : plus_infty : inexact-ok overflow errno-erange
+= cosh downward binary128 0x2.c5d378p+12 : 0xf.fffffffffffffffffffffffffff8p+16380 : inexact-ok overflow errno-erange-ok
+= cosh tonearest binary128 0x2.c5d378p+12 : plus_infty : inexact-ok overflow errno-erange
+= cosh towardzero binary128 0x2.c5d378p+12 : 0xf.fffffffffffffffffffffffffff8p+16380 : inexact-ok overflow errno-erange-ok
+= cosh upward binary128 0x2.c5d378p+12 : plus_infty : inexact-ok overflow errno-erange
+= cosh downward ibm128 0x2.c5d378p+12 : 0xf.ffffffffffffbffffffffffffcp+1020 : xfail:ibm128-libgcc inexact-ok overflow errno-erange-ok
+= cosh tonearest ibm128 0x2.c5d378p+12 : plus_infty : inexact-ok overflow errno-erange
+= cosh towardzero ibm128 0x2.c5d378p+12 : 0xf.ffffffffffffbffffffffffffcp+1020 : xfail:ibm128-libgcc inexact-ok overflow errno-erange-ok
+= cosh upward ibm128 0x2.c5d378p+12 : plus_infty : xfail:ibm128-libgcc inexact-ok overflow errno-erange
+= cosh downward binary32 0x2.c5d374p+12 : 0xf.fffffp+124 : inexact-ok overflow errno-erange-ok
+= cosh tonearest binary32 0x2.c5d374p+12 : plus_infty : inexact-ok overflow errno-erange
+= cosh towardzero binary32 0x2.c5d374p+12 : 0xf.fffffp+124 : inexact-ok overflow errno-erange-ok
+= cosh upward binary32 0x2.c5d374p+12 : plus_infty : inexact-ok overflow errno-erange
+= cosh downward binary64 0x2.c5d374p+12 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= cosh tonearest binary64 0x2.c5d374p+12 : plus_infty : inexact-ok overflow errno-erange
+= cosh towardzero binary64 0x2.c5d374p+12 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= cosh upward binary64 0x2.c5d374p+12 : plus_infty : inexact-ok overflow errno-erange
+= cosh downward intel96 0x2.c5d374p+12 : 0xf.fcff8165c0f3206p+16380 : inexact-ok
+= cosh tonearest intel96 0x2.c5d374p+12 : 0xf.fcff8165c0f3207p+16380 : inexact-ok
+= cosh towardzero intel96 0x2.c5d374p+12 : 0xf.fcff8165c0f3206p+16380 : inexact-ok
+= cosh upward intel96 0x2.c5d374p+12 : 0xf.fcff8165c0f3207p+16380 : inexact-ok
+= cosh downward m68k96 0x2.c5d374p+12 : 0xf.fcff8165c0f3206p+16380 : inexact-ok
+= cosh tonearest m68k96 0x2.c5d374p+12 : 0xf.fcff8165c0f3207p+16380 : inexact-ok
+= cosh towardzero m68k96 0x2.c5d374p+12 : 0xf.fcff8165c0f3206p+16380 : inexact-ok
+= cosh upward m68k96 0x2.c5d374p+12 : 0xf.fcff8165c0f3207p+16380 : inexact-ok
+= cosh downward binary128 0x2.c5d374p+12 : 0xf.fcff8165c0f3206f5cab39217878p+16380 : inexact-ok
+= cosh tonearest binary128 0x2.c5d374p+12 : 0xf.fcff8165c0f3206f5cab3921788p+16380 : inexact-ok
+= cosh towardzero binary128 0x2.c5d374p+12 : 0xf.fcff8165c0f3206f5cab39217878p+16380 : inexact-ok
+= cosh upward binary128 0x2.c5d374p+12 : 0xf.fcff8165c0f3206f5cab3921788p+16380 : inexact-ok
+= cosh downward ibm128 0x2.c5d374p+12 : 0xf.ffffffffffffbffffffffffffcp+1020 : xfail:ibm128-libgcc inexact-ok overflow errno-erange-ok
+= cosh tonearest ibm128 0x2.c5d374p+12 : plus_infty : inexact-ok overflow errno-erange
+= cosh towardzero ibm128 0x2.c5d374p+12 : 0xf.ffffffffffffbffffffffffffcp+1020 : xfail:ibm128-libgcc inexact-ok overflow errno-erange-ok
+= cosh upward ibm128 0x2.c5d374p+12 : plus_infty : xfail:ibm128-libgcc inexact-ok overflow errno-erange
+= cosh downward binary64 0x2.c5d376167f406p+12 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= cosh tonearest binary64 0x2.c5d376167f406p+12 : plus_infty : inexact-ok overflow errno-erange
+= cosh towardzero binary64 0x2.c5d376167f406p+12 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= cosh upward binary64 0x2.c5d376167f406p+12 : plus_infty : inexact-ok overflow errno-erange
+= cosh downward intel96 0x2.c5d376167f406p+12 : 0xf.ff15bf3871a7576p+16380 : inexact-ok
+= cosh tonearest intel96 0x2.c5d376167f406p+12 : 0xf.ff15bf3871a7576p+16380 : inexact-ok
+= cosh towardzero intel96 0x2.c5d376167f406p+12 : 0xf.ff15bf3871a7576p+16380 : inexact-ok
+= cosh upward intel96 0x2.c5d376167f406p+12 : 0xf.ff15bf3871a7577p+16380 : inexact-ok
+= cosh downward m68k96 0x2.c5d376167f406p+12 : 0xf.ff15bf3871a7576p+16380 : inexact-ok
+= cosh tonearest m68k96 0x2.c5d376167f406p+12 : 0xf.ff15bf3871a7576p+16380 : inexact-ok
+= cosh towardzero m68k96 0x2.c5d376167f406p+12 : 0xf.ff15bf3871a7576p+16380 : inexact-ok
+= cosh upward m68k96 0x2.c5d376167f406p+12 : 0xf.ff15bf3871a7577p+16380 : inexact-ok
+= cosh downward binary128 0x2.c5d376167f406p+12 : 0xf.ff15bf3871a75761db61506a9ba8p+16380 : inexact-ok
+= cosh tonearest binary128 0x2.c5d376167f406p+12 : 0xf.ff15bf3871a75761db61506a9bbp+16380 : inexact-ok
+= cosh towardzero binary128 0x2.c5d376167f406p+12 : 0xf.ff15bf3871a75761db61506a9ba8p+16380 : inexact-ok
+= cosh upward binary128 0x2.c5d376167f406p+12 : 0xf.ff15bf3871a75761db61506a9bbp+16380 : inexact-ok
+= cosh downward ibm128 0x2.c5d376167f406p+12 : 0xf.ffffffffffffbffffffffffffcp+1020 : xfail:ibm128-libgcc inexact-ok overflow errno-erange-ok
+= cosh tonearest ibm128 0x2.c5d376167f406p+12 : plus_infty : inexact-ok overflow errno-erange
+= cosh towardzero ibm128 0x2.c5d376167f406p+12 : 0xf.ffffffffffffbffffffffffffcp+1020 : xfail:ibm128-libgcc inexact-ok overflow errno-erange-ok
+= cosh upward ibm128 0x2.c5d376167f406p+12 : plus_infty : xfail:ibm128-libgcc inexact-ok overflow errno-erange
+= cosh downward binary64 0x2.c5d376167f404p+12 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= cosh tonearest binary64 0x2.c5d376167f404p+12 : plus_infty : inexact-ok overflow errno-erange
+= cosh towardzero binary64 0x2.c5d376167f404p+12 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= cosh upward binary64 0x2.c5d376167f404p+12 : plus_infty : inexact-ok overflow errno-erange
+= cosh downward intel96 0x2.c5d376167f404p+12 : 0xf.ff15bf3851a92bep+16380 : inexact-ok
+= cosh tonearest intel96 0x2.c5d376167f404p+12 : 0xf.ff15bf3851a92bep+16380 : inexact-ok
+= cosh towardzero intel96 0x2.c5d376167f404p+12 : 0xf.ff15bf3851a92bep+16380 : inexact-ok
+= cosh upward intel96 0x2.c5d376167f404p+12 : 0xf.ff15bf3851a92bfp+16380 : inexact-ok
+= cosh downward m68k96 0x2.c5d376167f404p+12 : 0xf.ff15bf3851a92bep+16380 : inexact-ok
+= cosh tonearest m68k96 0x2.c5d376167f404p+12 : 0xf.ff15bf3851a92bep+16380 : inexact-ok
+= cosh towardzero m68k96 0x2.c5d376167f404p+12 : 0xf.ff15bf3851a92bep+16380 : inexact-ok
+= cosh upward m68k96 0x2.c5d376167f404p+12 : 0xf.ff15bf3851a92bfp+16380 : inexact-ok
+= cosh downward binary128 0x2.c5d376167f404p+12 : 0xf.ff15bf3851a92be36a9dffe7566p+16380 : inexact-ok
+= cosh tonearest binary128 0x2.c5d376167f404p+12 : 0xf.ff15bf3851a92be36a9dffe75668p+16380 : inexact-ok
+= cosh towardzero binary128 0x2.c5d376167f404p+12 : 0xf.ff15bf3851a92be36a9dffe7566p+16380 : inexact-ok
+= cosh upward binary128 0x2.c5d376167f404p+12 : 0xf.ff15bf3851a92be36a9dffe75668p+16380 : inexact-ok
+= cosh downward ibm128 0x2.c5d376167f404p+12 : 0xf.ffffffffffffbffffffffffffcp+1020 : xfail:ibm128-libgcc inexact-ok overflow errno-erange-ok
+= cosh tonearest ibm128 0x2.c5d376167f404p+12 : plus_infty : inexact-ok overflow errno-erange
+= cosh towardzero ibm128 0x2.c5d376167f404p+12 : 0xf.ffffffffffffbffffffffffffcp+1020 : xfail:ibm128-libgcc inexact-ok overflow errno-erange-ok
+= cosh upward ibm128 0x2.c5d376167f404p+12 : plus_infty : xfail:ibm128-libgcc inexact-ok overflow errno-erange
+= cosh downward intel96 0x2.c5d376167f4052f4p+12 : 0xf.ff15bf38649c166p+16380 : inexact-ok
+= cosh tonearest intel96 0x2.c5d376167f4052f4p+12 : 0xf.ff15bf38649c166p+16380 : inexact-ok
+= cosh towardzero intel96 0x2.c5d376167f4052f4p+12 : 0xf.ff15bf38649c166p+16380 : inexact-ok
+= cosh upward intel96 0x2.c5d376167f4052f4p+12 : 0xf.ff15bf38649c167p+16380 : inexact-ok
+= cosh downward m68k96 0x2.c5d376167f4052f4p+12 : 0xf.ff15bf38649c166p+16380 : inexact-ok
+= cosh tonearest m68k96 0x2.c5d376167f4052f4p+12 : 0xf.ff15bf38649c166p+16380 : inexact-ok
+= cosh towardzero m68k96 0x2.c5d376167f4052f4p+12 : 0xf.ff15bf38649c166p+16380 : inexact-ok
+= cosh upward m68k96 0x2.c5d376167f4052f4p+12 : 0xf.ff15bf38649c167p+16380 : inexact-ok
+= cosh downward binary128 0x2.c5d376167f4052f4p+12 : 0xf.ff15bf38649c16662e1ff4acb938p+16380 : inexact-ok
+= cosh tonearest binary128 0x2.c5d376167f4052f4p+12 : 0xf.ff15bf38649c16662e1ff4acb94p+16380 : inexact-ok
+= cosh towardzero binary128 0x2.c5d376167f4052f4p+12 : 0xf.ff15bf38649c16662e1ff4acb938p+16380 : inexact-ok
+= cosh upward binary128 0x2.c5d376167f4052f4p+12 : 0xf.ff15bf38649c16662e1ff4acb94p+16380 : inexact-ok
+= cosh downward ibm128 0x2.c5d376167f4052f4p+12 : 0xf.ffffffffffffbffffffffffffcp+1020 : xfail:ibm128-libgcc inexact-ok overflow errno-erange-ok
+= cosh tonearest ibm128 0x2.c5d376167f4052f4p+12 : plus_infty : inexact-ok overflow errno-erange
+= cosh towardzero ibm128 0x2.c5d376167f4052f4p+12 : 0xf.ffffffffffffbffffffffffffcp+1020 : xfail:ibm128-libgcc inexact-ok overflow errno-erange-ok
+= cosh upward ibm128 0x2.c5d376167f4052f4p+12 : plus_infty : xfail:ibm128-libgcc inexact-ok overflow errno-erange
+cosh -0x2.c5d376eefcd4bbeb000452d84662p+12
+= cosh downward binary32 -0x2.c5d374p+12 : 0xf.fffffp+124 : inexact-ok overflow errno-erange-ok
+= cosh tonearest binary32 -0x2.c5d374p+12 : plus_infty : inexact-ok overflow errno-erange
+= cosh towardzero binary32 -0x2.c5d374p+12 : 0xf.fffffp+124 : inexact-ok overflow errno-erange-ok
+= cosh upward binary32 -0x2.c5d374p+12 : plus_infty : inexact-ok overflow errno-erange
+= cosh downward binary64 -0x2.c5d374p+12 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= cosh tonearest binary64 -0x2.c5d374p+12 : plus_infty : inexact-ok overflow errno-erange
+= cosh towardzero binary64 -0x2.c5d374p+12 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= cosh upward binary64 -0x2.c5d374p+12 : plus_infty : inexact-ok overflow errno-erange
+= cosh downward intel96 -0x2.c5d374p+12 : 0xf.fcff8165c0f3206p+16380 : inexact-ok
+= cosh tonearest intel96 -0x2.c5d374p+12 : 0xf.fcff8165c0f3207p+16380 : inexact-ok
+= cosh towardzero intel96 -0x2.c5d374p+12 : 0xf.fcff8165c0f3206p+16380 : inexact-ok
+= cosh upward intel96 -0x2.c5d374p+12 : 0xf.fcff8165c0f3207p+16380 : inexact-ok
+= cosh downward m68k96 -0x2.c5d374p+12 : 0xf.fcff8165c0f3206p+16380 : inexact-ok
+= cosh tonearest m68k96 -0x2.c5d374p+12 : 0xf.fcff8165c0f3207p+16380 : inexact-ok
+= cosh towardzero m68k96 -0x2.c5d374p+12 : 0xf.fcff8165c0f3206p+16380 : inexact-ok
+= cosh upward m68k96 -0x2.c5d374p+12 : 0xf.fcff8165c0f3207p+16380 : inexact-ok
+= cosh downward binary128 -0x2.c5d374p+12 : 0xf.fcff8165c0f3206f5cab39217878p+16380 : inexact-ok
+= cosh tonearest binary128 -0x2.c5d374p+12 : 0xf.fcff8165c0f3206f5cab3921788p+16380 : inexact-ok
+= cosh towardzero binary128 -0x2.c5d374p+12 : 0xf.fcff8165c0f3206f5cab39217878p+16380 : inexact-ok
+= cosh upward binary128 -0x2.c5d374p+12 : 0xf.fcff8165c0f3206f5cab3921788p+16380 : inexact-ok
+= cosh downward ibm128 -0x2.c5d374p+12 : 0xf.ffffffffffffbffffffffffffcp+1020 : xfail:ibm128-libgcc inexact-ok overflow errno-erange-ok
+= cosh tonearest ibm128 -0x2.c5d374p+12 : plus_infty : inexact-ok overflow errno-erange
+= cosh towardzero ibm128 -0x2.c5d374p+12 : 0xf.ffffffffffffbffffffffffffcp+1020 : xfail:ibm128-libgcc inexact-ok overflow errno-erange-ok
+= cosh upward ibm128 -0x2.c5d374p+12 : plus_infty : xfail:ibm128-libgcc inexact-ok overflow errno-erange
+= cosh downward binary32 -0x2.c5d378p+12 : 0xf.fffffp+124 : inexact-ok overflow errno-erange-ok
+= cosh tonearest binary32 -0x2.c5d378p+12 : plus_infty : inexact-ok overflow errno-erange
+= cosh towardzero binary32 -0x2.c5d378p+12 : 0xf.fffffp+124 : inexact-ok overflow errno-erange-ok
+= cosh upward binary32 -0x2.c5d378p+12 : plus_infty : inexact-ok overflow errno-erange
+= cosh downward binary64 -0x2.c5d378p+12 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= cosh tonearest binary64 -0x2.c5d378p+12 : plus_infty : inexact-ok overflow errno-erange
+= cosh towardzero binary64 -0x2.c5d378p+12 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= cosh upward binary64 -0x2.c5d378p+12 : plus_infty : inexact-ok overflow errno-erange
+= cosh downward intel96 -0x2.c5d378p+12 : 0xf.fffffffffffffffp+16380 : inexact-ok overflow errno-erange-ok
+= cosh tonearest intel96 -0x2.c5d378p+12 : plus_infty : inexact-ok overflow errno-erange
+= cosh towardzero intel96 -0x2.c5d378p+12 : 0xf.fffffffffffffffp+16380 : inexact-ok overflow errno-erange-ok
+= cosh upward intel96 -0x2.c5d378p+12 : plus_infty : inexact-ok overflow errno-erange
+= cosh downward m68k96 -0x2.c5d378p+12 : 0xf.fffffffffffffffp+16380 : inexact-ok overflow errno-erange-ok
+= cosh tonearest m68k96 -0x2.c5d378p+12 : plus_infty : inexact-ok overflow errno-erange
+= cosh towardzero m68k96 -0x2.c5d378p+12 : 0xf.fffffffffffffffp+16380 : inexact-ok overflow errno-erange-ok
+= cosh upward m68k96 -0x2.c5d378p+12 : plus_infty : inexact-ok overflow errno-erange
+= cosh downward binary128 -0x2.c5d378p+12 : 0xf.fffffffffffffffffffffffffff8p+16380 : inexact-ok overflow errno-erange-ok
+= cosh tonearest binary128 -0x2.c5d378p+12 : plus_infty : inexact-ok overflow errno-erange
+= cosh towardzero binary128 -0x2.c5d378p+12 : 0xf.fffffffffffffffffffffffffff8p+16380 : inexact-ok overflow errno-erange-ok
+= cosh upward binary128 -0x2.c5d378p+12 : plus_infty : inexact-ok overflow errno-erange
+= cosh downward ibm128 -0x2.c5d378p+12 : 0xf.ffffffffffffbffffffffffffcp+1020 : xfail:ibm128-libgcc inexact-ok overflow errno-erange-ok
+= cosh tonearest ibm128 -0x2.c5d378p+12 : plus_infty : inexact-ok overflow errno-erange
+= cosh towardzero ibm128 -0x2.c5d378p+12 : 0xf.ffffffffffffbffffffffffffcp+1020 : xfail:ibm128-libgcc inexact-ok overflow errno-erange-ok
+= cosh upward ibm128 -0x2.c5d378p+12 : plus_infty : xfail:ibm128-libgcc inexact-ok overflow errno-erange
+= cosh downward binary64 -0x2.c5d376eefcd4ap+12 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= cosh tonearest binary64 -0x2.c5d376eefcd4ap+12 : plus_infty : inexact-ok overflow errno-erange
+= cosh towardzero binary64 -0x2.c5d376eefcd4ap+12 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= cosh upward binary64 -0x2.c5d376eefcd4ap+12 : plus_infty : inexact-ok overflow errno-erange
+= cosh downward intel96 -0x2.c5d376eefcd4ap+12 : 0xf.ffee36237fd43a2p+16380 : inexact-ok
+= cosh tonearest intel96 -0x2.c5d376eefcd4ap+12 : 0xf.ffee36237fd43a3p+16380 : inexact-ok
+= cosh towardzero intel96 -0x2.c5d376eefcd4ap+12 : 0xf.ffee36237fd43a2p+16380 : inexact-ok
+= cosh upward intel96 -0x2.c5d376eefcd4ap+12 : 0xf.ffee36237fd43a3p+16380 : inexact-ok
+= cosh downward m68k96 -0x2.c5d376eefcd4ap+12 : 0xf.ffee36237fd43a2p+16380 : inexact-ok
+= cosh tonearest m68k96 -0x2.c5d376eefcd4ap+12 : 0xf.ffee36237fd43a3p+16380 : inexact-ok
+= cosh towardzero m68k96 -0x2.c5d376eefcd4ap+12 : 0xf.ffee36237fd43a2p+16380 : inexact-ok
+= cosh upward m68k96 -0x2.c5d376eefcd4ap+12 : 0xf.ffee36237fd43a3p+16380 : inexact-ok
+= cosh downward binary128 -0x2.c5d376eefcd4ap+12 : 0xf.ffee36237fd43a2b15e5b20b6d68p+16380 : inexact-ok
+= cosh tonearest binary128 -0x2.c5d376eefcd4ap+12 : 0xf.ffee36237fd43a2b15e5b20b6d68p+16380 : inexact-ok
+= cosh towardzero binary128 -0x2.c5d376eefcd4ap+12 : 0xf.ffee36237fd43a2b15e5b20b6d68p+16380 : inexact-ok
+= cosh upward binary128 -0x2.c5d376eefcd4ap+12 : 0xf.ffee36237fd43a2b15e5b20b6d7p+16380 : inexact-ok
+= cosh downward ibm128 -0x2.c5d376eefcd4ap+12 : 0xf.ffffffffffffbffffffffffffcp+1020 : xfail:ibm128-libgcc inexact-ok overflow errno-erange-ok
+= cosh tonearest ibm128 -0x2.c5d376eefcd4ap+12 : plus_infty : inexact-ok overflow errno-erange
+= cosh towardzero ibm128 -0x2.c5d376eefcd4ap+12 : 0xf.ffffffffffffbffffffffffffcp+1020 : xfail:ibm128-libgcc inexact-ok overflow errno-erange-ok
+= cosh upward ibm128 -0x2.c5d376eefcd4ap+12 : plus_infty : xfail:ibm128-libgcc inexact-ok overflow errno-erange
+= cosh downward binary64 -0x2.c5d376eefcd4cp+12 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= cosh tonearest binary64 -0x2.c5d376eefcd4cp+12 : plus_infty : inexact-ok overflow errno-erange
+= cosh towardzero binary64 -0x2.c5d376eefcd4cp+12 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= cosh upward binary64 -0x2.c5d376eefcd4cp+12 : plus_infty : inexact-ok overflow errno-erange
+= cosh downward intel96 -0x2.c5d376eefcd4cp+12 : 0xf.ffee36239fd4169p+16380 : inexact-ok
+= cosh tonearest intel96 -0x2.c5d376eefcd4cp+12 : 0xf.ffee36239fd4169p+16380 : inexact-ok
+= cosh towardzero intel96 -0x2.c5d376eefcd4cp+12 : 0xf.ffee36239fd4169p+16380 : inexact-ok
+= cosh upward intel96 -0x2.c5d376eefcd4cp+12 : 0xf.ffee36239fd416ap+16380 : inexact-ok
+= cosh downward m68k96 -0x2.c5d376eefcd4cp+12 : 0xf.ffee36239fd4169p+16380 : inexact-ok
+= cosh tonearest m68k96 -0x2.c5d376eefcd4cp+12 : 0xf.ffee36239fd4169p+16380 : inexact-ok
+= cosh towardzero m68k96 -0x2.c5d376eefcd4cp+12 : 0xf.ffee36239fd4169p+16380 : inexact-ok
+= cosh upward m68k96 -0x2.c5d376eefcd4cp+12 : 0xf.ffee36239fd416ap+16380 : inexact-ok
+= cosh downward binary128 -0x2.c5d376eefcd4cp+12 : 0xf.ffee36239fd416975d055a5c2fd8p+16380 : inexact-ok
+= cosh tonearest binary128 -0x2.c5d376eefcd4cp+12 : 0xf.ffee36239fd416975d055a5c2fep+16380 : inexact-ok
+= cosh towardzero binary128 -0x2.c5d376eefcd4cp+12 : 0xf.ffee36239fd416975d055a5c2fd8p+16380 : inexact-ok
+= cosh upward binary128 -0x2.c5d376eefcd4cp+12 : 0xf.ffee36239fd416975d055a5c2fep+16380 : inexact-ok
+= cosh downward ibm128 -0x2.c5d376eefcd4cp+12 : 0xf.ffffffffffffbffffffffffffcp+1020 : xfail:ibm128-libgcc inexact-ok overflow errno-erange-ok
+= cosh tonearest ibm128 -0x2.c5d376eefcd4cp+12 : plus_infty : inexact-ok overflow errno-erange
+= cosh towardzero ibm128 -0x2.c5d376eefcd4cp+12 : 0xf.ffffffffffffbffffffffffffcp+1020 : xfail:ibm128-libgcc inexact-ok overflow errno-erange-ok
+= cosh upward ibm128 -0x2.c5d376eefcd4cp+12 : plus_infty : xfail:ibm128-libgcc inexact-ok overflow errno-erange
+= cosh downward intel96 -0x2.c5d376eefcd4bbe8p+12 : 0xf.ffee36239bbc1b2p+16380 : inexact-ok
+= cosh tonearest intel96 -0x2.c5d376eefcd4bbe8p+12 : 0xf.ffee36239bbc1b2p+16380 : inexact-ok
+= cosh towardzero intel96 -0x2.c5d376eefcd4bbe8p+12 : 0xf.ffee36239bbc1b2p+16380 : inexact-ok
+= cosh upward intel96 -0x2.c5d376eefcd4bbe8p+12 : 0xf.ffee36239bbc1b3p+16380 : inexact-ok
+= cosh downward m68k96 -0x2.c5d376eefcd4bbe8p+12 : 0xf.ffee36239bbc1b2p+16380 : inexact-ok
+= cosh tonearest m68k96 -0x2.c5d376eefcd4bbe8p+12 : 0xf.ffee36239bbc1b2p+16380 : inexact-ok
+= cosh towardzero m68k96 -0x2.c5d376eefcd4bbe8p+12 : 0xf.ffee36239bbc1b2p+16380 : inexact-ok
+= cosh upward m68k96 -0x2.c5d376eefcd4bbe8p+12 : 0xf.ffee36239bbc1b3p+16380 : inexact-ok
+= cosh downward binary128 -0x2.c5d376eefcd4bbe8p+12 : 0xf.ffee36239bbc1b2482e87ba9d31p+16380 : inexact-ok
+= cosh tonearest binary128 -0x2.c5d376eefcd4bbe8p+12 : 0xf.ffee36239bbc1b2482e87ba9d31p+16380 : inexact-ok
+= cosh towardzero binary128 -0x2.c5d376eefcd4bbe8p+12 : 0xf.ffee36239bbc1b2482e87ba9d31p+16380 : inexact-ok
+= cosh upward binary128 -0x2.c5d376eefcd4bbe8p+12 : 0xf.ffee36239bbc1b2482e87ba9d318p+16380 : inexact-ok
+= cosh downward ibm128 -0x2.c5d376eefcd4bbe8p+12 : 0xf.ffffffffffffbffffffffffffcp+1020 : xfail:ibm128-libgcc inexact-ok overflow errno-erange-ok
+= cosh tonearest ibm128 -0x2.c5d376eefcd4bbe8p+12 : plus_infty : inexact-ok overflow errno-erange
+= cosh towardzero ibm128 -0x2.c5d376eefcd4bbe8p+12 : 0xf.ffffffffffffbffffffffffffcp+1020 : xfail:ibm128-libgcc inexact-ok overflow errno-erange-ok
+= cosh upward ibm128 -0x2.c5d376eefcd4bbe8p+12 : plus_infty : xfail:ibm128-libgcc inexact-ok overflow errno-erange
+= cosh downward intel96 -0x2.c5d376eefcd4bbecp+12 : 0xf.ffee36239bc01b2p+16380 : inexact-ok
+= cosh tonearest intel96 -0x2.c5d376eefcd4bbecp+12 : 0xf.ffee36239bc01b2p+16380 : inexact-ok
+= cosh towardzero intel96 -0x2.c5d376eefcd4bbecp+12 : 0xf.ffee36239bc01b2p+16380 : inexact-ok
+= cosh upward intel96 -0x2.c5d376eefcd4bbecp+12 : 0xf.ffee36239bc01b3p+16380 : inexact-ok
+= cosh downward m68k96 -0x2.c5d376eefcd4bbecp+12 : 0xf.ffee36239bc01b2p+16380 : inexact-ok
+= cosh tonearest m68k96 -0x2.c5d376eefcd4bbecp+12 : 0xf.ffee36239bc01b2p+16380 : inexact-ok
+= cosh towardzero m68k96 -0x2.c5d376eefcd4bbecp+12 : 0xf.ffee36239bc01b2p+16380 : inexact-ok
+= cosh upward m68k96 -0x2.c5d376eefcd4bbecp+12 : 0xf.ffee36239bc01b3p+16380 : inexact-ok
+= cosh downward binary128 -0x2.c5d376eefcd4bbecp+12 : 0xf.ffee36239bc01b201071629959d8p+16380 : inexact-ok
+= cosh tonearest binary128 -0x2.c5d376eefcd4bbecp+12 : 0xf.ffee36239bc01b201071629959ep+16380 : inexact-ok
+= cosh towardzero binary128 -0x2.c5d376eefcd4bbecp+12 : 0xf.ffee36239bc01b201071629959d8p+16380 : inexact-ok
+= cosh upward binary128 -0x2.c5d376eefcd4bbecp+12 : 0xf.ffee36239bc01b201071629959ep+16380 : inexact-ok
+= cosh downward ibm128 -0x2.c5d376eefcd4bbecp+12 : 0xf.ffffffffffffbffffffffffffcp+1020 : xfail:ibm128-libgcc inexact-ok overflow errno-erange-ok
+= cosh tonearest ibm128 -0x2.c5d376eefcd4bbecp+12 : plus_infty : inexact-ok overflow errno-erange
+= cosh towardzero ibm128 -0x2.c5d376eefcd4bbecp+12 : 0xf.ffffffffffffbffffffffffffcp+1020 : xfail:ibm128-libgcc inexact-ok overflow errno-erange-ok
+= cosh upward ibm128 -0x2.c5d376eefcd4bbecp+12 : plus_infty : xfail:ibm128-libgcc inexact-ok overflow errno-erange
+= cosh downward binary128 -0x2.c5d376eefcd4bbeb000452d84662p+12 : 0xf.ffee36239bbf1b257fe2a0ad4a38p+16380 : inexact-ok
+= cosh tonearest binary128 -0x2.c5d376eefcd4bbeb000452d84662p+12 : 0xf.ffee36239bbf1b257fe2a0ad4a38p+16380 : inexact-ok
+= cosh towardzero binary128 -0x2.c5d376eefcd4bbeb000452d84662p+12 : 0xf.ffee36239bbf1b257fe2a0ad4a38p+16380 : inexact-ok
+= cosh upward binary128 -0x2.c5d376eefcd4bbeb000452d84662p+12 : 0xf.ffee36239bbf1b257fe2a0ad4a4p+16380 : inexact-ok
+= cosh downward binary128 -0x2.c5d376eefcd4bbeb000452d846p+12 : 0xf.ffee36239bbf1b257fe2a04b4aap+16380 : inexact-ok
+= cosh tonearest binary128 -0x2.c5d376eefcd4bbeb000452d846p+12 : 0xf.ffee36239bbf1b257fe2a04b4aa8p+16380 : inexact-ok
+= cosh towardzero binary128 -0x2.c5d376eefcd4bbeb000452d846p+12 : 0xf.ffee36239bbf1b257fe2a04b4aap+16380 : inexact-ok
+= cosh upward binary128 -0x2.c5d376eefcd4bbeb000452d846p+12 : 0xf.ffee36239bbf1b257fe2a04b4aa8p+16380 : inexact-ok
+= cosh downward ibm128 -0x2.c5d376eefcd4bbeb000452d846p+12 : 0xf.ffffffffffffbffffffffffffcp+1020 : xfail:ibm128-libgcc inexact-ok overflow errno-erange-ok
+= cosh tonearest ibm128 -0x2.c5d376eefcd4bbeb000452d846p+12 : plus_infty : inexact-ok overflow errno-erange
+= cosh towardzero ibm128 -0x2.c5d376eefcd4bbeb000452d846p+12 : 0xf.ffffffffffffbffffffffffffcp+1020 : xfail:ibm128-libgcc inexact-ok overflow errno-erange-ok
+= cosh upward ibm128 -0x2.c5d376eefcd4bbeb000452d846p+12 : plus_infty : xfail:ibm128-libgcc inexact-ok overflow errno-erange
+= cosh downward binary128 -0x2.c5d376eefcd4bbeb000452d847p+12 : 0xf.ffee36239bbf1b257fe2a14b4988p+16380 : inexact-ok
+= cosh tonearest binary128 -0x2.c5d376eefcd4bbeb000452d847p+12 : 0xf.ffee36239bbf1b257fe2a14b4988p+16380 : inexact-ok
+= cosh towardzero binary128 -0x2.c5d376eefcd4bbeb000452d847p+12 : 0xf.ffee36239bbf1b257fe2a14b4988p+16380 : inexact-ok
+= cosh upward binary128 -0x2.c5d376eefcd4bbeb000452d847p+12 : 0xf.ffee36239bbf1b257fe2a14b499p+16380 : inexact-ok
+= cosh downward ibm128 -0x2.c5d376eefcd4bbeb000452d847p+12 : 0xf.ffffffffffffbffffffffffffcp+1020 : xfail:ibm128-libgcc inexact-ok overflow errno-erange-ok
+= cosh tonearest ibm128 -0x2.c5d376eefcd4bbeb000452d847p+12 : plus_infty : inexact-ok overflow errno-erange
+= cosh towardzero ibm128 -0x2.c5d376eefcd4bbeb000452d847p+12 : 0xf.ffffffffffffbffffffffffffcp+1020 : xfail:ibm128-libgcc inexact-ok overflow errno-erange-ok
+= cosh upward ibm128 -0x2.c5d376eefcd4bbeb000452d847p+12 : plus_infty : xfail:ibm128-libgcc inexact-ok overflow errno-erange
diff --git a/math/auto-libm-test-out-erfc b/math/auto-libm-test-out-erfc
index 60ac9ed740..76f922ba03 100644
--- a/math/auto-libm-test-out-erfc
+++ b/math/auto-libm-test-out-erfc
@@ -2885,6 +2885,252 @@ erfc 0xd.03d06p-4
 = erfc tonearest ibm128 0xd.03d06p-4 : 0x3.fff91a7d782b006458655c2be8p-4 : inexact-ok
 = erfc towardzero ibm128 0xd.03d06p-4 : 0x3.fff91a7d782b006458655c2be8p-4 : inexact-ok
 = erfc upward ibm128 0xd.03d06p-4 : 0x3.fff91a7d782b006458655c2be9p-4 : inexact-ok
+erfc 0x1.5cf2167efe9207d2p+0
+= erfc downward binary32 0x1.5cf218p+0 : 0xd.cc226p-8 : inexact-ok
+= erfc tonearest binary32 0x1.5cf218p+0 : 0xd.cc226p-8 : inexact-ok
+= erfc towardzero binary32 0x1.5cf218p+0 : 0xd.cc226p-8 : inexact-ok
+= erfc upward binary32 0x1.5cf218p+0 : 0xd.cc227p-8 : inexact-ok
+= erfc downward binary64 0x1.5cf218p+0 : 0xd.cc22642cb5ab8p-8 : inexact-ok
+= erfc tonearest binary64 0x1.5cf218p+0 : 0xd.cc22642cb5ab8p-8 : inexact-ok
+= erfc towardzero binary64 0x1.5cf218p+0 : 0xd.cc22642cb5ab8p-8 : inexact-ok
+= erfc upward binary64 0x1.5cf218p+0 : 0xd.cc22642cb5acp-8 : inexact-ok
+= erfc downward intel96 0x1.5cf218p+0 : 0xd.cc22642cb5ab8dcp-8 : inexact-ok
+= erfc tonearest intel96 0x1.5cf218p+0 : 0xd.cc22642cb5ab8dcp-8 : inexact-ok
+= erfc towardzero intel96 0x1.5cf218p+0 : 0xd.cc22642cb5ab8dcp-8 : inexact-ok
+= erfc upward intel96 0x1.5cf218p+0 : 0xd.cc22642cb5ab8ddp-8 : inexact-ok
+= erfc downward m68k96 0x1.5cf218p+0 : 0xd.cc22642cb5ab8dcp-8 : inexact-ok
+= erfc tonearest m68k96 0x1.5cf218p+0 : 0xd.cc22642cb5ab8dcp-8 : inexact-ok
+= erfc towardzero m68k96 0x1.5cf218p+0 : 0xd.cc22642cb5ab8dcp-8 : inexact-ok
+= erfc upward m68k96 0x1.5cf218p+0 : 0xd.cc22642cb5ab8ddp-8 : inexact-ok
+= erfc downward binary128 0x1.5cf218p+0 : 0xd.cc22642cb5ab8dc55a1975e03bcp-8 : inexact-ok
+= erfc tonearest binary128 0x1.5cf218p+0 : 0xd.cc22642cb5ab8dc55a1975e03bcp-8 : inexact-ok
+= erfc towardzero binary128 0x1.5cf218p+0 : 0xd.cc22642cb5ab8dc55a1975e03bcp-8 : inexact-ok
+= erfc upward binary128 0x1.5cf218p+0 : 0xd.cc22642cb5ab8dc55a1975e03bc8p-8 : inexact-ok
+= erfc downward ibm128 0x1.5cf218p+0 : 0xd.cc22642cb5ab8dc55a1975e038p-8 : inexact-ok
+= erfc tonearest ibm128 0x1.5cf218p+0 : 0xd.cc22642cb5ab8dc55a1975e03cp-8 : inexact-ok
+= erfc towardzero ibm128 0x1.5cf218p+0 : 0xd.cc22642cb5ab8dc55a1975e038p-8 : inexact-ok
+= erfc upward ibm128 0x1.5cf218p+0 : 0xd.cc22642cb5ab8dc55a1975e03cp-8 : inexact-ok
+= erfc downward binary32 0x1.5cf216p+0 : 0xd.cc22bp-8 : inexact-ok
+= erfc tonearest binary32 0x1.5cf216p+0 : 0xd.cc22cp-8 : inexact-ok
+= erfc towardzero binary32 0x1.5cf216p+0 : 0xd.cc22bp-8 : inexact-ok
+= erfc upward binary32 0x1.5cf216p+0 : 0xd.cc22cp-8 : inexact-ok
+= erfc downward binary64 0x1.5cf216p+0 : 0xd.cc22be4b9b32p-8 : inexact-ok
+= erfc tonearest binary64 0x1.5cf216p+0 : 0xd.cc22be4b9b328p-8 : inexact-ok
+= erfc towardzero binary64 0x1.5cf216p+0 : 0xd.cc22be4b9b32p-8 : inexact-ok
+= erfc upward binary64 0x1.5cf216p+0 : 0xd.cc22be4b9b328p-8 : inexact-ok
+= erfc downward intel96 0x1.5cf216p+0 : 0xd.cc22be4b9b325bcp-8 : inexact-ok
+= erfc tonearest intel96 0x1.5cf216p+0 : 0xd.cc22be4b9b325bcp-8 : inexact-ok
+= erfc towardzero intel96 0x1.5cf216p+0 : 0xd.cc22be4b9b325bcp-8 : inexact-ok
+= erfc upward intel96 0x1.5cf216p+0 : 0xd.cc22be4b9b325bdp-8 : inexact-ok
+= erfc downward m68k96 0x1.5cf216p+0 : 0xd.cc22be4b9b325bcp-8 : inexact-ok
+= erfc tonearest m68k96 0x1.5cf216p+0 : 0xd.cc22be4b9b325bcp-8 : inexact-ok
+= erfc towardzero m68k96 0x1.5cf216p+0 : 0xd.cc22be4b9b325bcp-8 : inexact-ok
+= erfc upward m68k96 0x1.5cf216p+0 : 0xd.cc22be4b9b325bdp-8 : inexact-ok
+= erfc downward binary128 0x1.5cf216p+0 : 0xd.cc22be4b9b325bc5efb8f07224p-8 : inexact-ok
+= erfc tonearest binary128 0x1.5cf216p+0 : 0xd.cc22be4b9b325bc5efb8f07224p-8 : inexact-ok
+= erfc towardzero binary128 0x1.5cf216p+0 : 0xd.cc22be4b9b325bc5efb8f07224p-8 : inexact-ok
+= erfc upward binary128 0x1.5cf216p+0 : 0xd.cc22be4b9b325bc5efb8f0722408p-8 : inexact-ok
+= erfc downward ibm128 0x1.5cf216p+0 : 0xd.cc22be4b9b325bc5efb8f07224p-8 : inexact-ok
+= erfc tonearest ibm128 0x1.5cf216p+0 : 0xd.cc22be4b9b325bc5efb8f07224p-8 : inexact-ok
+= erfc towardzero ibm128 0x1.5cf216p+0 : 0xd.cc22be4b9b325bc5efb8f07224p-8 : inexact-ok
+= erfc upward ibm128 0x1.5cf216p+0 : 0xd.cc22be4b9b325bc5efb8f07228p-8 : inexact-ok
+= erfc downward binary64 0x1.5cf2167efe921p+0 : 0xd.cc22a7f1317e8p-8 : inexact-ok
+= erfc tonearest binary64 0x1.5cf2167efe921p+0 : 0xd.cc22a7f1317fp-8 : inexact-ok
+= erfc towardzero binary64 0x1.5cf2167efe921p+0 : 0xd.cc22a7f1317e8p-8 : inexact-ok
+= erfc upward binary64 0x1.5cf2167efe921p+0 : 0xd.cc22a7f1317fp-8 : inexact-ok
+= erfc downward intel96 0x1.5cf2167efe921p+0 : 0xd.cc22a7f1317ede1p-8 : inexact-ok
+= erfc tonearest intel96 0x1.5cf2167efe921p+0 : 0xd.cc22a7f1317ede1p-8 : inexact-ok
+= erfc towardzero intel96 0x1.5cf2167efe921p+0 : 0xd.cc22a7f1317ede1p-8 : inexact-ok
+= erfc upward intel96 0x1.5cf2167efe921p+0 : 0xd.cc22a7f1317ede2p-8 : inexact-ok
+= erfc downward m68k96 0x1.5cf2167efe921p+0 : 0xd.cc22a7f1317ede1p-8 : inexact-ok
+= erfc tonearest m68k96 0x1.5cf2167efe921p+0 : 0xd.cc22a7f1317ede1p-8 : inexact-ok
+= erfc towardzero m68k96 0x1.5cf2167efe921p+0 : 0xd.cc22a7f1317ede1p-8 : inexact-ok
+= erfc upward m68k96 0x1.5cf2167efe921p+0 : 0xd.cc22a7f1317ede2p-8 : inexact-ok
+= erfc downward binary128 0x1.5cf2167efe921p+0 : 0xd.cc22a7f1317ede14f24f95f12c68p-8 : inexact-ok
+= erfc tonearest binary128 0x1.5cf2167efe921p+0 : 0xd.cc22a7f1317ede14f24f95f12c7p-8 : inexact-ok
+= erfc towardzero binary128 0x1.5cf2167efe921p+0 : 0xd.cc22a7f1317ede14f24f95f12c68p-8 : inexact-ok
+= erfc upward binary128 0x1.5cf2167efe921p+0 : 0xd.cc22a7f1317ede14f24f95f12c7p-8 : inexact-ok
+= erfc downward ibm128 0x1.5cf2167efe921p+0 : 0xd.cc22a7f1317ede14f24f95f12cp-8 : inexact-ok
+= erfc tonearest ibm128 0x1.5cf2167efe921p+0 : 0xd.cc22a7f1317ede14f24f95f12cp-8 : inexact-ok
+= erfc towardzero ibm128 0x1.5cf2167efe921p+0 : 0xd.cc22a7f1317ede14f24f95f12cp-8 : inexact-ok
+= erfc upward ibm128 0x1.5cf2167efe921p+0 : 0xd.cc22a7f1317ede14f24f95f13p-8 : inexact-ok
+= erfc downward binary64 0x1.5cf2167efe92p+0 : 0xd.cc22a7f131818p-8 : inexact-ok
+= erfc tonearest binary64 0x1.5cf2167efe92p+0 : 0xd.cc22a7f131818p-8 : inexact-ok
+= erfc towardzero binary64 0x1.5cf2167efe92p+0 : 0xd.cc22a7f131818p-8 : inexact-ok
+= erfc upward binary64 0x1.5cf2167efe92p+0 : 0xd.cc22a7f13182p-8 : inexact-ok
+= erfc downward intel96 0x1.5cf2167efe92p+0 : 0xd.cc22a7f13181afp-8 : inexact-ok
+= erfc tonearest intel96 0x1.5cf2167efe92p+0 : 0xd.cc22a7f13181af1p-8 : inexact-ok
+= erfc towardzero intel96 0x1.5cf2167efe92p+0 : 0xd.cc22a7f13181afp-8 : inexact-ok
+= erfc upward intel96 0x1.5cf2167efe92p+0 : 0xd.cc22a7f13181af1p-8 : inexact-ok
+= erfc downward m68k96 0x1.5cf2167efe92p+0 : 0xd.cc22a7f13181afp-8 : inexact-ok
+= erfc tonearest m68k96 0x1.5cf2167efe92p+0 : 0xd.cc22a7f13181af1p-8 : inexact-ok
+= erfc towardzero m68k96 0x1.5cf2167efe92p+0 : 0xd.cc22a7f13181afp-8 : inexact-ok
+= erfc upward m68k96 0x1.5cf2167efe92p+0 : 0xd.cc22a7f13181af1p-8 : inexact-ok
+= erfc downward binary128 0x1.5cf2167efe92p+0 : 0xd.cc22a7f13181af0c2264782d18d8p-8 : inexact-ok
+= erfc tonearest binary128 0x1.5cf2167efe92p+0 : 0xd.cc22a7f13181af0c2264782d18d8p-8 : inexact-ok
+= erfc towardzero binary128 0x1.5cf2167efe92p+0 : 0xd.cc22a7f13181af0c2264782d18d8p-8 : inexact-ok
+= erfc upward binary128 0x1.5cf2167efe92p+0 : 0xd.cc22a7f13181af0c2264782d18ep-8 : inexact-ok
+= erfc downward ibm128 0x1.5cf2167efe92p+0 : 0xd.cc22a7f13181af0c2264782d18p-8 : inexact-ok
+= erfc tonearest ibm128 0x1.5cf2167efe92p+0 : 0xd.cc22a7f13181af0c2264782d18p-8 : inexact-ok
+= erfc towardzero ibm128 0x1.5cf2167efe92p+0 : 0xd.cc22a7f13181af0c2264782d18p-8 : inexact-ok
+= erfc upward ibm128 0x1.5cf2167efe92p+0 : 0xd.cc22a7f13181af0c2264782d1cp-8 : inexact-ok
+= erfc downward intel96 0x1.5cf2167efe9207d2p+0 : 0xd.cc22a7f131804eap-8 : inexact-ok
+= erfc tonearest intel96 0x1.5cf2167efe9207d2p+0 : 0xd.cc22a7f131804ebp-8 : inexact-ok
+= erfc towardzero intel96 0x1.5cf2167efe9207d2p+0 : 0xd.cc22a7f131804eap-8 : inexact-ok
+= erfc upward intel96 0x1.5cf2167efe9207d2p+0 : 0xd.cc22a7f131804ebp-8 : inexact-ok
+= erfc downward m68k96 0x1.5cf2167efe9207d2p+0 : 0xd.cc22a7f131804eap-8 : inexact-ok
+= erfc tonearest m68k96 0x1.5cf2167efe9207d2p+0 : 0xd.cc22a7f131804ebp-8 : inexact-ok
+= erfc towardzero m68k96 0x1.5cf2167efe9207d2p+0 : 0xd.cc22a7f131804eap-8 : inexact-ok
+= erfc upward m68k96 0x1.5cf2167efe9207d2p+0 : 0xd.cc22a7f131804ebp-8 : inexact-ok
+= erfc downward binary128 0x1.5cf2167efe9207d2p+0 : 0xd.cc22a7f131804ea9510443197f9p-8 : inexact-ok
+= erfc tonearest binary128 0x1.5cf2167efe9207d2p+0 : 0xd.cc22a7f131804ea9510443197f9p-8 : inexact-ok
+= erfc towardzero binary128 0x1.5cf2167efe9207d2p+0 : 0xd.cc22a7f131804ea9510443197f9p-8 : inexact-ok
+= erfc upward binary128 0x1.5cf2167efe9207d2p+0 : 0xd.cc22a7f131804ea9510443197f98p-8 : inexact-ok
+= erfc downward ibm128 0x1.5cf2167efe9207d2p+0 : 0xd.cc22a7f131804ea9510443197cp-8 : inexact-ok
+= erfc tonearest ibm128 0x1.5cf2167efe9207d2p+0 : 0xd.cc22a7f131804ea9510443198p-8 : inexact-ok
+= erfc towardzero ibm128 0x1.5cf2167efe9207d2p+0 : 0xd.cc22a7f131804ea9510443197cp-8 : inexact-ok
+= erfc upward ibm128 0x1.5cf2167efe9207d2p+0 : 0xd.cc22a7f131804ea9510443198p-8 : inexact-ok
+erfc 0x1.5166e0efc44a9dfc79b8c8873a99p+0
+= erfc downward binary32 0x1.5166e2p+0 : 0xf.f53dp-8 : inexact-ok
+= erfc tonearest binary32 0x1.5166e2p+0 : 0xf.f53dp-8 : inexact-ok
+= erfc towardzero binary32 0x1.5166e2p+0 : 0xf.f53dp-8 : inexact-ok
+= erfc upward binary32 0x1.5166e2p+0 : 0xf.f53d1p-8 : inexact-ok
+= erfc downward binary64 0x1.5166e2p+0 : 0xf.f53d075aa92bp-8 : inexact-ok
+= erfc tonearest binary64 0x1.5166e2p+0 : 0xf.f53d075aa92bp-8 : inexact-ok
+= erfc towardzero binary64 0x1.5166e2p+0 : 0xf.f53d075aa92bp-8 : inexact-ok
+= erfc upward binary64 0x1.5166e2p+0 : 0xf.f53d075aa92b8p-8 : inexact-ok
+= erfc downward intel96 0x1.5166e2p+0 : 0xf.f53d075aa92b1fp-8 : inexact-ok
+= erfc tonearest intel96 0x1.5166e2p+0 : 0xf.f53d075aa92b1fp-8 : inexact-ok
+= erfc towardzero intel96 0x1.5166e2p+0 : 0xf.f53d075aa92b1fp-8 : inexact-ok
+= erfc upward intel96 0x1.5166e2p+0 : 0xf.f53d075aa92b1f1p-8 : inexact-ok
+= erfc downward m68k96 0x1.5166e2p+0 : 0xf.f53d075aa92b1fp-8 : inexact-ok
+= erfc tonearest m68k96 0x1.5166e2p+0 : 0xf.f53d075aa92b1fp-8 : inexact-ok
+= erfc towardzero m68k96 0x1.5166e2p+0 : 0xf.f53d075aa92b1fp-8 : inexact-ok
+= erfc upward m68k96 0x1.5166e2p+0 : 0xf.f53d075aa92b1f1p-8 : inexact-ok
+= erfc downward binary128 0x1.5166e2p+0 : 0xf.f53d075aa92b1f075d1f393d6668p-8 : inexact-ok
+= erfc tonearest binary128 0x1.5166e2p+0 : 0xf.f53d075aa92b1f075d1f393d667p-8 : inexact-ok
+= erfc towardzero binary128 0x1.5166e2p+0 : 0xf.f53d075aa92b1f075d1f393d6668p-8 : inexact-ok
+= erfc upward binary128 0x1.5166e2p+0 : 0xf.f53d075aa92b1f075d1f393d667p-8 : inexact-ok
+= erfc downward ibm128 0x1.5166e2p+0 : 0xf.f53d075aa92b1f075d1f393d64p-8 : inexact-ok
+= erfc tonearest ibm128 0x1.5166e2p+0 : 0xf.f53d075aa92b1f075d1f393d68p-8 : inexact-ok
+= erfc towardzero ibm128 0x1.5166e2p+0 : 0xf.f53d075aa92b1f075d1f393d64p-8 : inexact-ok
+= erfc upward ibm128 0x1.5166e2p+0 : 0xf.f53d075aa92b1f075d1f393d68p-8 : inexact-ok
+= erfc downward binary32 0x1.5166ep+0 : 0xf.f53d6p-8 : inexact-ok
+= erfc tonearest binary32 0x1.5166ep+0 : 0xf.f53d7p-8 : inexact-ok
+= erfc towardzero binary32 0x1.5166ep+0 : 0xf.f53d6p-8 : inexact-ok
+= erfc upward binary32 0x1.5166ep+0 : 0xf.f53d7p-8 : inexact-ok
+= erfc downward binary64 0x1.5166ep+0 : 0xf.f53d6d0e58d08p-8 : inexact-ok
+= erfc tonearest binary64 0x1.5166ep+0 : 0xf.f53d6d0e58d08p-8 : inexact-ok
+= erfc towardzero binary64 0x1.5166ep+0 : 0xf.f53d6d0e58d08p-8 : inexact-ok
+= erfc upward binary64 0x1.5166ep+0 : 0xf.f53d6d0e58d1p-8 : inexact-ok
+= erfc downward intel96 0x1.5166ep+0 : 0xf.f53d6d0e58d08f8p-8 : inexact-ok
+= erfc tonearest intel96 0x1.5166ep+0 : 0xf.f53d6d0e58d08f8p-8 : inexact-ok
+= erfc towardzero intel96 0x1.5166ep+0 : 0xf.f53d6d0e58d08f8p-8 : inexact-ok
+= erfc upward intel96 0x1.5166ep+0 : 0xf.f53d6d0e58d08f9p-8 : inexact-ok
+= erfc downward m68k96 0x1.5166ep+0 : 0xf.f53d6d0e58d08f8p-8 : inexact-ok
+= erfc tonearest m68k96 0x1.5166ep+0 : 0xf.f53d6d0e58d08f8p-8 : inexact-ok
+= erfc towardzero m68k96 0x1.5166ep+0 : 0xf.f53d6d0e58d08f8p-8 : inexact-ok
+= erfc upward m68k96 0x1.5166ep+0 : 0xf.f53d6d0e58d08f9p-8 : inexact-ok
+= erfc downward binary128 0x1.5166ep+0 : 0xf.f53d6d0e58d08f84e4986455328p-8 : inexact-ok
+= erfc tonearest binary128 0x1.5166ep+0 : 0xf.f53d6d0e58d08f84e4986455328p-8 : inexact-ok
+= erfc towardzero binary128 0x1.5166ep+0 : 0xf.f53d6d0e58d08f84e4986455328p-8 : inexact-ok
+= erfc upward binary128 0x1.5166ep+0 : 0xf.f53d6d0e58d08f84e49864553288p-8 : inexact-ok
+= erfc downward ibm128 0x1.5166ep+0 : 0xf.f53d6d0e58d08f84e49864553p-8 : inexact-ok
+= erfc tonearest ibm128 0x1.5166ep+0 : 0xf.f53d6d0e58d08f84e498645534p-8 : inexact-ok
+= erfc towardzero ibm128 0x1.5166ep+0 : 0xf.f53d6d0e58d08f84e49864553p-8 : inexact-ok
+= erfc upward ibm128 0x1.5166ep+0 : 0xf.f53d6d0e58d08f84e498645534p-8 : inexact-ok
+= erfc downward binary64 0x1.5166e0efc44aap+0 : 0xf.f53d3d6dfa74p-8 : inexact-ok
+= erfc tonearest binary64 0x1.5166e0efc44aap+0 : 0xf.f53d3d6dfa74p-8 : inexact-ok
+= erfc towardzero binary64 0x1.5166e0efc44aap+0 : 0xf.f53d3d6dfa74p-8 : inexact-ok
+= erfc upward binary64 0x1.5166e0efc44aap+0 : 0xf.f53d3d6dfa748p-8 : inexact-ok
+= erfc downward intel96 0x1.5166e0efc44aap+0 : 0xf.f53d3d6dfa74176p-8 : inexact-ok
+= erfc tonearest intel96 0x1.5166e0efc44aap+0 : 0xf.f53d3d6dfa74177p-8 : inexact-ok
+= erfc towardzero intel96 0x1.5166e0efc44aap+0 : 0xf.f53d3d6dfa74176p-8 : inexact-ok
+= erfc upward intel96 0x1.5166e0efc44aap+0 : 0xf.f53d3d6dfa74177p-8 : inexact-ok
+= erfc downward m68k96 0x1.5166e0efc44aap+0 : 0xf.f53d3d6dfa74176p-8 : inexact-ok
+= erfc tonearest m68k96 0x1.5166e0efc44aap+0 : 0xf.f53d3d6dfa74177p-8 : inexact-ok
+= erfc towardzero m68k96 0x1.5166e0efc44aap+0 : 0xf.f53d3d6dfa74176p-8 : inexact-ok
+= erfc upward m68k96 0x1.5166e0efc44aap+0 : 0xf.f53d3d6dfa74177p-8 : inexact-ok
+= erfc downward binary128 0x1.5166e0efc44aap+0 : 0xf.f53d3d6dfa74176be2273d9c694p-8 : inexact-ok
+= erfc tonearest binary128 0x1.5166e0efc44aap+0 : 0xf.f53d3d6dfa74176be2273d9c6948p-8 : inexact-ok
+= erfc towardzero binary128 0x1.5166e0efc44aap+0 : 0xf.f53d3d6dfa74176be2273d9c694p-8 : inexact-ok
+= erfc upward binary128 0x1.5166e0efc44aap+0 : 0xf.f53d3d6dfa74176be2273d9c6948p-8 : inexact-ok
+= erfc downward ibm128 0x1.5166e0efc44aap+0 : 0xf.f53d3d6dfa74176be2273d9c68p-8 : inexact-ok
+= erfc tonearest ibm128 0x1.5166e0efc44aap+0 : 0xf.f53d3d6dfa74176be2273d9c68p-8 : inexact-ok
+= erfc towardzero ibm128 0x1.5166e0efc44aap+0 : 0xf.f53d3d6dfa74176be2273d9c68p-8 : inexact-ok
+= erfc upward ibm128 0x1.5166e0efc44aap+0 : 0xf.f53d3d6dfa74176be2273d9c6cp-8 : inexact-ok
+= erfc downward binary64 0x1.5166e0efc44a9p+0 : 0xf.f53d3d6dfa77p-8 : inexact-ok
+= erfc tonearest binary64 0x1.5166e0efc44a9p+0 : 0xf.f53d3d6dfa778p-8 : inexact-ok
+= erfc towardzero binary64 0x1.5166e0efc44a9p+0 : 0xf.f53d3d6dfa77p-8 : inexact-ok
+= erfc upward binary64 0x1.5166e0efc44a9p+0 : 0xf.f53d3d6dfa778p-8 : inexact-ok
+= erfc downward intel96 0x1.5166e0efc44a9p+0 : 0xf.f53d3d6dfa7745p-8 : inexact-ok
+= erfc tonearest intel96 0x1.5166e0efc44a9p+0 : 0xf.f53d3d6dfa77451p-8 : inexact-ok
+= erfc towardzero intel96 0x1.5166e0efc44a9p+0 : 0xf.f53d3d6dfa7745p-8 : inexact-ok
+= erfc upward intel96 0x1.5166e0efc44a9p+0 : 0xf.f53d3d6dfa77451p-8 : inexact-ok
+= erfc downward m68k96 0x1.5166e0efc44a9p+0 : 0xf.f53d3d6dfa7745p-8 : inexact-ok
+= erfc tonearest m68k96 0x1.5166e0efc44a9p+0 : 0xf.f53d3d6dfa77451p-8 : inexact-ok
+= erfc towardzero m68k96 0x1.5166e0efc44a9p+0 : 0xf.f53d3d6dfa7745p-8 : inexact-ok
+= erfc upward m68k96 0x1.5166e0efc44a9p+0 : 0xf.f53d3d6dfa77451p-8 : inexact-ok
+= erfc downward binary128 0x1.5166e0efc44a9p+0 : 0xf.f53d3d6dfa7745095fdac02562dp-8 : inexact-ok
+= erfc tonearest binary128 0x1.5166e0efc44a9p+0 : 0xf.f53d3d6dfa7745095fdac02562dp-8 : inexact-ok
+= erfc towardzero binary128 0x1.5166e0efc44a9p+0 : 0xf.f53d3d6dfa7745095fdac02562dp-8 : inexact-ok
+= erfc upward binary128 0x1.5166e0efc44a9p+0 : 0xf.f53d3d6dfa7745095fdac02562d8p-8 : inexact-ok
+= erfc downward ibm128 0x1.5166e0efc44a9p+0 : 0xf.f53d3d6dfa7745095fdac0256p-8 : inexact-ok
+= erfc tonearest ibm128 0x1.5166e0efc44a9p+0 : 0xf.f53d3d6dfa7745095fdac02564p-8 : inexact-ok
+= erfc towardzero ibm128 0x1.5166e0efc44a9p+0 : 0xf.f53d3d6dfa7745095fdac0256p-8 : inexact-ok
+= erfc upward ibm128 0x1.5166e0efc44a9p+0 : 0xf.f53d3d6dfa7745095fdac02564p-8 : inexact-ok
+= erfc downward intel96 0x1.5166e0efc44a9dfep+0 : 0xf.f53d3d6dfa747d8p-8 : inexact-ok
+= erfc tonearest intel96 0x1.5166e0efc44a9dfep+0 : 0xf.f53d3d6dfa747d8p-8 : inexact-ok
+= erfc towardzero intel96 0x1.5166e0efc44a9dfep+0 : 0xf.f53d3d6dfa747d8p-8 : inexact-ok
+= erfc upward intel96 0x1.5166e0efc44a9dfep+0 : 0xf.f53d3d6dfa747d9p-8 : inexact-ok
+= erfc downward m68k96 0x1.5166e0efc44a9dfep+0 : 0xf.f53d3d6dfa747d8p-8 : inexact-ok
+= erfc tonearest m68k96 0x1.5166e0efc44a9dfep+0 : 0xf.f53d3d6dfa747d8p-8 : inexact-ok
+= erfc towardzero m68k96 0x1.5166e0efc44a9dfep+0 : 0xf.f53d3d6dfa747d8p-8 : inexact-ok
+= erfc upward m68k96 0x1.5166e0efc44a9dfep+0 : 0xf.f53d3d6dfa747d9p-8 : inexact-ok
+= erfc downward binary128 0x1.5166e0efc44a9dfep+0 : 0xf.f53d3d6dfa747d85458d645dd238p-8 : inexact-ok
+= erfc tonearest binary128 0x1.5166e0efc44a9dfep+0 : 0xf.f53d3d6dfa747d85458d645dd238p-8 : inexact-ok
+= erfc towardzero binary128 0x1.5166e0efc44a9dfep+0 : 0xf.f53d3d6dfa747d85458d645dd238p-8 : inexact-ok
+= erfc upward binary128 0x1.5166e0efc44a9dfep+0 : 0xf.f53d3d6dfa747d85458d645dd24p-8 : inexact-ok
+= erfc downward ibm128 0x1.5166e0efc44a9dfep+0 : 0xf.f53d3d6dfa747d85458d645ddp-8 : inexact-ok
+= erfc tonearest ibm128 0x1.5166e0efc44a9dfep+0 : 0xf.f53d3d6dfa747d85458d645dd4p-8 : inexact-ok
+= erfc towardzero ibm128 0x1.5166e0efc44a9dfep+0 : 0xf.f53d3d6dfa747d85458d645ddp-8 : inexact-ok
+= erfc upward ibm128 0x1.5166e0efc44a9dfep+0 : 0xf.f53d3d6dfa747d85458d645dd4p-8 : inexact-ok
+= erfc downward intel96 0x1.5166e0efc44a9dfcp+0 : 0xf.f53d3d6dfa747dep-8 : inexact-ok
+= erfc tonearest intel96 0x1.5166e0efc44a9dfcp+0 : 0xf.f53d3d6dfa747dfp-8 : inexact-ok
+= erfc towardzero intel96 0x1.5166e0efc44a9dfcp+0 : 0xf.f53d3d6dfa747dep-8 : inexact-ok
+= erfc upward intel96 0x1.5166e0efc44a9dfcp+0 : 0xf.f53d3d6dfa747dfp-8 : inexact-ok
+= erfc downward m68k96 0x1.5166e0efc44a9dfcp+0 : 0xf.f53d3d6dfa747dep-8 : inexact-ok
+= erfc tonearest m68k96 0x1.5166e0efc44a9dfcp+0 : 0xf.f53d3d6dfa747dfp-8 : inexact-ok
+= erfc towardzero m68k96 0x1.5166e0efc44a9dfcp+0 : 0xf.f53d3d6dfa747dep-8 : inexact-ok
+= erfc upward m68k96 0x1.5166e0efc44a9dfcp+0 : 0xf.f53d3d6dfa747dfp-8 : inexact-ok
+= erfc downward binary128 0x1.5166e0efc44a9dfcp+0 : 0xf.f53d3d6dfa747deaf93d1ace235p-8 : inexact-ok
+= erfc tonearest binary128 0x1.5166e0efc44a9dfcp+0 : 0xf.f53d3d6dfa747deaf93d1ace2358p-8 : inexact-ok
+= erfc towardzero binary128 0x1.5166e0efc44a9dfcp+0 : 0xf.f53d3d6dfa747deaf93d1ace235p-8 : inexact-ok
+= erfc upward binary128 0x1.5166e0efc44a9dfcp+0 : 0xf.f53d3d6dfa747deaf93d1ace2358p-8 : inexact-ok
+= erfc downward ibm128 0x1.5166e0efc44a9dfcp+0 : 0xf.f53d3d6dfa747deaf93d1ace2p-8 : inexact-ok
+= erfc tonearest ibm128 0x1.5166e0efc44a9dfcp+0 : 0xf.f53d3d6dfa747deaf93d1ace24p-8 : inexact-ok
+= erfc towardzero ibm128 0x1.5166e0efc44a9dfcp+0 : 0xf.f53d3d6dfa747deaf93d1ace2p-8 : inexact-ok
+= erfc upward ibm128 0x1.5166e0efc44a9dfcp+0 : 0xf.f53d3d6dfa747deaf93d1ace24p-8 : inexact-ok
+= erfc downward binary128 0x1.5166e0efc44a9dfc79b8c8873a99p+0 : 0xf.f53d3d6dfa747dd2cb91abfddffp-8 : inexact-ok
+= erfc tonearest binary128 0x1.5166e0efc44a9dfc79b8c8873a99p+0 : 0xf.f53d3d6dfa747dd2cb91abfddff8p-8 : inexact-ok
+= erfc towardzero binary128 0x1.5166e0efc44a9dfc79b8c8873a99p+0 : 0xf.f53d3d6dfa747dd2cb91abfddffp-8 : inexact-ok
+= erfc upward binary128 0x1.5166e0efc44a9dfc79b8c8873a99p+0 : 0xf.f53d3d6dfa747dd2cb91abfddff8p-8 : inexact-ok
+= erfc downward binary128 0x1.5166e0efc44a9dfc79b8c8873bp+0 : 0xf.f53d3d6dfa747dd2cb91abfdcb78p-8 : inexact-ok
+= erfc tonearest binary128 0x1.5166e0efc44a9dfc79b8c8873bp+0 : 0xf.f53d3d6dfa747dd2cb91abfdcb8p-8 : inexact-ok
+= erfc towardzero binary128 0x1.5166e0efc44a9dfc79b8c8873bp+0 : 0xf.f53d3d6dfa747dd2cb91abfdcb78p-8 : inexact-ok
+= erfc upward binary128 0x1.5166e0efc44a9dfc79b8c8873bp+0 : 0xf.f53d3d6dfa747dd2cb91abfdcb8p-8 : inexact-ok
+= erfc downward ibm128 0x1.5166e0efc44a9dfc79b8c8873bp+0 : 0xf.f53d3d6dfa747dd2cb91abfdc8p-8 : inexact-ok
+= erfc tonearest ibm128 0x1.5166e0efc44a9dfc79b8c8873bp+0 : 0xf.f53d3d6dfa747dd2cb91abfdccp-8 : inexact-ok
+= erfc towardzero ibm128 0x1.5166e0efc44a9dfc79b8c8873bp+0 : 0xf.f53d3d6dfa747dd2cb91abfdc8p-8 : inexact-ok
+= erfc upward ibm128 0x1.5166e0efc44a9dfc79b8c8873bp+0 : 0xf.f53d3d6dfa747dd2cb91abfdccp-8 : inexact-ok
+= erfc downward binary128 0x1.5166e0efc44a9dfc79b8c8873a8p+0 : 0xf.f53d3d6dfa747dd2cb91abfde4e8p-8 : inexact-ok
+= erfc tonearest binary128 0x1.5166e0efc44a9dfc79b8c8873a8p+0 : 0xf.f53d3d6dfa747dd2cb91abfde4fp-8 : inexact-ok
+= erfc towardzero binary128 0x1.5166e0efc44a9dfc79b8c8873a8p+0 : 0xf.f53d3d6dfa747dd2cb91abfde4e8p-8 : inexact-ok
+= erfc upward binary128 0x1.5166e0efc44a9dfc79b8c8873a8p+0 : 0xf.f53d3d6dfa747dd2cb91abfde4fp-8 : inexact-ok
+= erfc downward ibm128 0x1.5166e0efc44a9dfc79b8c8873a8p+0 : 0xf.f53d3d6dfa747dd2cb91abfde4p-8 : inexact-ok
+= erfc tonearest ibm128 0x1.5166e0efc44a9dfc79b8c8873a8p+0 : 0xf.f53d3d6dfa747dd2cb91abfde4p-8 : inexact-ok
+= erfc towardzero ibm128 0x1.5166e0efc44a9dfc79b8c8873a8p+0 : 0xf.f53d3d6dfa747dd2cb91abfde4p-8 : inexact-ok
+= erfc upward ibm128 0x1.5166e0efc44a9dfc79b8c8873a8p+0 : 0xf.f53d3d6dfa747dd2cb91abfde8p-8 : inexact-ok
 erfc min
 = erfc downward binary32 0x4p-128 : 0xf.fffffp-4 : inexact-ok
 = erfc tonearest binary32 0x4p-128 : 0x1p+0 : inexact-ok
diff --git a/math/auto-libm-test-out-expm1 b/math/auto-libm-test-out-expm1
index 687a1aaa79..8483455801 100644
--- a/math/auto-libm-test-out-expm1
+++ b/math/auto-libm-test-out-expm1
@@ -2639,6 +2639,252 @@ expm1 0x4.0000000000000028p-16384
 = expm1 tonearest binary128 0x4.0000000000000028p-16384 : 0x4.0000000000000028p-16384 : inexact-ok
 = expm1 towardzero binary128 0x4.0000000000000028p-16384 : 0x4.0000000000000028p-16384 : inexact-ok
 = expm1 upward binary128 0x4.0000000000000028p-16384 : 0x4.0000000000000028000000000004p-16384 : inexact-ok
+expm1 0x5.8b911eb6733469c8p-4
+= expm1 downward binary32 0x5.8b912p-4 : 0x6.a09ee8p-4 : inexact-ok
+= expm1 tonearest binary32 0x5.8b912p-4 : 0x6.a09efp-4 : inexact-ok
+= expm1 towardzero binary32 0x5.8b912p-4 : 0x6.a09ee8p-4 : inexact-ok
+= expm1 upward binary32 0x5.8b912p-4 : 0x6.a09efp-4 : inexact-ok
+= expm1 downward binary64 0x5.8b912p-4 : 0x6.a09eee9f80d9cp-4 : inexact-ok
+= expm1 tonearest binary64 0x5.8b912p-4 : 0x6.a09eee9f80d9cp-4 : inexact-ok
+= expm1 towardzero binary64 0x5.8b912p-4 : 0x6.a09eee9f80d9cp-4 : inexact-ok
+= expm1 upward binary64 0x5.8b912p-4 : 0x6.a09eee9f80dap-4 : inexact-ok
+= expm1 downward intel96 0x5.8b912p-4 : 0x6.a09eee9f80d9d6fp-4 : inexact-ok
+= expm1 tonearest intel96 0x5.8b912p-4 : 0x6.a09eee9f80d9d6fp-4 : inexact-ok
+= expm1 towardzero intel96 0x5.8b912p-4 : 0x6.a09eee9f80d9d6fp-4 : inexact-ok
+= expm1 upward intel96 0x5.8b912p-4 : 0x6.a09eee9f80d9d6f8p-4 : inexact-ok
+= expm1 downward m68k96 0x5.8b912p-4 : 0x6.a09eee9f80d9d6fp-4 : inexact-ok
+= expm1 tonearest m68k96 0x5.8b912p-4 : 0x6.a09eee9f80d9d6fp-4 : inexact-ok
+= expm1 towardzero m68k96 0x5.8b912p-4 : 0x6.a09eee9f80d9d6fp-4 : inexact-ok
+= expm1 upward m68k96 0x5.8b912p-4 : 0x6.a09eee9f80d9d6f8p-4 : inexact-ok
+= expm1 downward binary128 0x5.8b912p-4 : 0x6.a09eee9f80d9d6f2256cdf5a8698p-4 : inexact-ok
+= expm1 tonearest binary128 0x5.8b912p-4 : 0x6.a09eee9f80d9d6f2256cdf5a8698p-4 : inexact-ok
+= expm1 towardzero binary128 0x5.8b912p-4 : 0x6.a09eee9f80d9d6f2256cdf5a8698p-4 : inexact-ok
+= expm1 upward binary128 0x5.8b912p-4 : 0x6.a09eee9f80d9d6f2256cdf5a869cp-4 : inexact-ok
+= expm1 downward ibm128 0x5.8b912p-4 : 0x6.a09eee9f80d9d6f2256cdf5a86p-4 : inexact-ok
+= expm1 tonearest ibm128 0x5.8b912p-4 : 0x6.a09eee9f80d9d6f2256cdf5a86p-4 : inexact-ok
+= expm1 towardzero ibm128 0x5.8b912p-4 : 0x6.a09eee9f80d9d6f2256cdf5a86p-4 : inexact-ok
+= expm1 upward ibm128 0x5.8b912p-4 : 0x6.a09eee9f80d9d6f2256cdf5a88p-4 : inexact-ok
+= expm1 downward binary32 0x5.8b9118p-4 : 0x6.a09eep-4 : inexact-ok
+= expm1 tonearest binary32 0x5.8b9118p-4 : 0x6.a09eep-4 : inexact-ok
+= expm1 towardzero binary32 0x5.8b9118p-4 : 0x6.a09eep-4 : inexact-ok
+= expm1 upward binary32 0x5.8b9118p-4 : 0x6.a09ee8p-4 : inexact-ok
+= expm1 downward binary64 0x5.8b9118p-4 : 0x6.a09ee34f31654p-4 : inexact-ok
+= expm1 tonearest binary64 0x5.8b9118p-4 : 0x6.a09ee34f31654p-4 : inexact-ok
+= expm1 towardzero binary64 0x5.8b9118p-4 : 0x6.a09ee34f31654p-4 : inexact-ok
+= expm1 upward binary64 0x5.8b9118p-4 : 0x6.a09ee34f31658p-4 : inexact-ok
+= expm1 downward intel96 0x5.8b9118p-4 : 0x6.a09ee34f31655b4p-4 : inexact-ok
+= expm1 tonearest intel96 0x5.8b9118p-4 : 0x6.a09ee34f31655b48p-4 : inexact-ok
+= expm1 towardzero intel96 0x5.8b9118p-4 : 0x6.a09ee34f31655b4p-4 : inexact-ok
+= expm1 upward intel96 0x5.8b9118p-4 : 0x6.a09ee34f31655b48p-4 : inexact-ok
+= expm1 downward m68k96 0x5.8b9118p-4 : 0x6.a09ee34f31655b4p-4 : inexact-ok
+= expm1 tonearest m68k96 0x5.8b9118p-4 : 0x6.a09ee34f31655b48p-4 : inexact-ok
+= expm1 towardzero m68k96 0x5.8b9118p-4 : 0x6.a09ee34f31655b4p-4 : inexact-ok
+= expm1 upward m68k96 0x5.8b9118p-4 : 0x6.a09ee34f31655b48p-4 : inexact-ok
+= expm1 downward binary128 0x5.8b9118p-4 : 0x6.a09ee34f31655b4595dca868cc2p-4 : inexact-ok
+= expm1 tonearest binary128 0x5.8b9118p-4 : 0x6.a09ee34f31655b4595dca868cc2p-4 : inexact-ok
+= expm1 towardzero binary128 0x5.8b9118p-4 : 0x6.a09ee34f31655b4595dca868cc2p-4 : inexact-ok
+= expm1 upward binary128 0x5.8b9118p-4 : 0x6.a09ee34f31655b4595dca868cc24p-4 : inexact-ok
+= expm1 downward ibm128 0x5.8b9118p-4 : 0x6.a09ee34f31655b4595dca868ccp-4 : inexact-ok
+= expm1 tonearest ibm128 0x5.8b9118p-4 : 0x6.a09ee34f31655b4595dca868ccp-4 : inexact-ok
+= expm1 towardzero ibm128 0x5.8b9118p-4 : 0x6.a09ee34f31655b4595dca868ccp-4 : inexact-ok
+= expm1 upward ibm128 0x5.8b9118p-4 : 0x6.a09ee34f31655b4595dca868cep-4 : inexact-ok
+= expm1 downward binary64 0x5.8b911eb673348p-4 : 0x6.a09eeccd72f88p-4 : inexact-ok
+= expm1 tonearest binary64 0x5.8b911eb673348p-4 : 0x6.a09eeccd72f8cp-4 : inexact-ok
+= expm1 towardzero binary64 0x5.8b911eb673348p-4 : 0x6.a09eeccd72f88p-4 : inexact-ok
+= expm1 upward binary64 0x5.8b911eb673348p-4 : 0x6.a09eeccd72f8cp-4 : inexact-ok
+= expm1 downward intel96 0x5.8b911eb673348p-4 : 0x6.a09eeccd72f8a57p-4 : inexact-ok
+= expm1 tonearest intel96 0x5.8b911eb673348p-4 : 0x6.a09eeccd72f8a578p-4 : inexact-ok
+= expm1 towardzero intel96 0x5.8b911eb673348p-4 : 0x6.a09eeccd72f8a57p-4 : inexact-ok
+= expm1 upward intel96 0x5.8b911eb673348p-4 : 0x6.a09eeccd72f8a578p-4 : inexact-ok
+= expm1 downward m68k96 0x5.8b911eb673348p-4 : 0x6.a09eeccd72f8a57p-4 : inexact-ok
+= expm1 tonearest m68k96 0x5.8b911eb673348p-4 : 0x6.a09eeccd72f8a578p-4 : inexact-ok
+= expm1 towardzero m68k96 0x5.8b911eb673348p-4 : 0x6.a09eeccd72f8a57p-4 : inexact-ok
+= expm1 upward m68k96 0x5.8b911eb673348p-4 : 0x6.a09eeccd72f8a578p-4 : inexact-ok
+= expm1 downward binary128 0x5.8b911eb673348p-4 : 0x6.a09eeccd72f8a5749e8d79476184p-4 : inexact-ok
+= expm1 tonearest binary128 0x5.8b911eb673348p-4 : 0x6.a09eeccd72f8a5749e8d79476188p-4 : inexact-ok
+= expm1 towardzero binary128 0x5.8b911eb673348p-4 : 0x6.a09eeccd72f8a5749e8d79476184p-4 : inexact-ok
+= expm1 upward binary128 0x5.8b911eb673348p-4 : 0x6.a09eeccd72f8a5749e8d79476188p-4 : inexact-ok
+= expm1 downward ibm128 0x5.8b911eb673348p-4 : 0x6.a09eeccd72f8a5749e8d79476p-4 : inexact-ok
+= expm1 tonearest ibm128 0x5.8b911eb673348p-4 : 0x6.a09eeccd72f8a5749e8d794762p-4 : inexact-ok
+= expm1 towardzero ibm128 0x5.8b911eb673348p-4 : 0x6.a09eeccd72f8a5749e8d79476p-4 : inexact-ok
+= expm1 upward ibm128 0x5.8b911eb673348p-4 : 0x6.a09eeccd72f8a5749e8d794762p-4 : inexact-ok
+= expm1 downward binary64 0x5.8b911eb673344p-4 : 0x6.a09eeccd72f84p-4 : inexact-ok
+= expm1 tonearest binary64 0x5.8b911eb673344p-4 : 0x6.a09eeccd72f84p-4 : inexact-ok
+= expm1 towardzero binary64 0x5.8b911eb673344p-4 : 0x6.a09eeccd72f84p-4 : inexact-ok
+= expm1 upward binary64 0x5.8b911eb673344p-4 : 0x6.a09eeccd72f88p-4 : inexact-ok
+= expm1 downward intel96 0x5.8b911eb673344p-4 : 0x6.a09eeccd72f84afp-4 : inexact-ok
+= expm1 tonearest intel96 0x5.8b911eb673344p-4 : 0x6.a09eeccd72f84afp-4 : inexact-ok
+= expm1 towardzero intel96 0x5.8b911eb673344p-4 : 0x6.a09eeccd72f84afp-4 : inexact-ok
+= expm1 upward intel96 0x5.8b911eb673344p-4 : 0x6.a09eeccd72f84af8p-4 : inexact-ok
+= expm1 downward m68k96 0x5.8b911eb673344p-4 : 0x6.a09eeccd72f84afp-4 : inexact-ok
+= expm1 tonearest m68k96 0x5.8b911eb673344p-4 : 0x6.a09eeccd72f84afp-4 : inexact-ok
+= expm1 towardzero m68k96 0x5.8b911eb673344p-4 : 0x6.a09eeccd72f84afp-4 : inexact-ok
+= expm1 upward m68k96 0x5.8b911eb673344p-4 : 0x6.a09eeccd72f84af8p-4 : inexact-ok
+= expm1 downward binary128 0x5.8b911eb673344p-4 : 0x6.a09eeccd72f84af222da437b7fa4p-4 : inexact-ok
+= expm1 tonearest binary128 0x5.8b911eb673344p-4 : 0x6.a09eeccd72f84af222da437b7fa4p-4 : inexact-ok
+= expm1 towardzero binary128 0x5.8b911eb673344p-4 : 0x6.a09eeccd72f84af222da437b7fa4p-4 : inexact-ok
+= expm1 upward binary128 0x5.8b911eb673344p-4 : 0x6.a09eeccd72f84af222da437b7fa8p-4 : inexact-ok
+= expm1 downward ibm128 0x5.8b911eb673344p-4 : 0x6.a09eeccd72f84af222da437b7ep-4 : inexact-ok
+= expm1 tonearest ibm128 0x5.8b911eb673344p-4 : 0x6.a09eeccd72f84af222da437b8p-4 : inexact-ok
+= expm1 towardzero ibm128 0x5.8b911eb673344p-4 : 0x6.a09eeccd72f84af222da437b7ep-4 : inexact-ok
+= expm1 upward ibm128 0x5.8b911eb673344p-4 : 0x6.a09eeccd72f84af222da437b8p-4 : inexact-ok
+= expm1 downward intel96 0x5.8b911eb6733469c8p-4 : 0x6.a09eeccd72f88608p-4 : inexact-ok
+= expm1 tonearest intel96 0x5.8b911eb6733469c8p-4 : 0x6.a09eeccd72f88608p-4 : inexact-ok
+= expm1 towardzero intel96 0x5.8b911eb6733469c8p-4 : 0x6.a09eeccd72f88608p-4 : inexact-ok
+= expm1 upward intel96 0x5.8b911eb6733469c8p-4 : 0x6.a09eeccd72f8861p-4 : inexact-ok
+= expm1 downward m68k96 0x5.8b911eb6733469c8p-4 : 0x6.a09eeccd72f88608p-4 : inexact-ok
+= expm1 tonearest m68k96 0x5.8b911eb6733469c8p-4 : 0x6.a09eeccd72f88608p-4 : inexact-ok
+= expm1 towardzero m68k96 0x5.8b911eb6733469c8p-4 : 0x6.a09eeccd72f88608p-4 : inexact-ok
+= expm1 upward m68k96 0x5.8b911eb6733469c8p-4 : 0x6.a09eeccd72f8861p-4 : inexact-ok
+= expm1 downward binary128 0x5.8b911eb6733469c8p-4 : 0x6.a09eeccd72f8860891dba1fa395p-4 : inexact-ok
+= expm1 tonearest binary128 0x5.8b911eb6733469c8p-4 : 0x6.a09eeccd72f8860891dba1fa3954p-4 : inexact-ok
+= expm1 towardzero binary128 0x5.8b911eb6733469c8p-4 : 0x6.a09eeccd72f8860891dba1fa395p-4 : inexact-ok
+= expm1 upward binary128 0x5.8b911eb6733469c8p-4 : 0x6.a09eeccd72f8860891dba1fa3954p-4 : inexact-ok
+= expm1 downward ibm128 0x5.8b911eb6733469c8p-4 : 0x6.a09eeccd72f8860891dba1fa38p-4 : inexact-ok
+= expm1 tonearest ibm128 0x5.8b911eb6733469c8p-4 : 0x6.a09eeccd72f8860891dba1fa3ap-4 : inexact-ok
+= expm1 towardzero ibm128 0x5.8b911eb6733469c8p-4 : 0x6.a09eeccd72f8860891dba1fa38p-4 : inexact-ok
+= expm1 upward ibm128 0x5.8b911eb6733469c8p-4 : 0x6.a09eeccd72f8860891dba1fa3ap-4 : inexact-ok
+expm1 0x5.a343df0d680099a7a1a873a751a8p-4
+= expm1 downward binary32 0x5.a343ep-4 : 0x6.c23b78p-4 : inexact-ok
+= expm1 tonearest binary32 0x5.a343ep-4 : 0x6.c23b78p-4 : inexact-ok
+= expm1 towardzero binary32 0x5.a343ep-4 : 0x6.c23b78p-4 : inexact-ok
+= expm1 upward binary32 0x5.a343ep-4 : 0x6.c23b8p-4 : inexact-ok
+= expm1 downward binary64 0x5.a343ep-4 : 0x6.c23b7ba6e78d8p-4 : inexact-ok
+= expm1 tonearest binary64 0x5.a343ep-4 : 0x6.c23b7ba6e78d8p-4 : inexact-ok
+= expm1 towardzero binary64 0x5.a343ep-4 : 0x6.c23b7ba6e78d8p-4 : inexact-ok
+= expm1 upward binary64 0x5.a343ep-4 : 0x6.c23b7ba6e78dcp-4 : inexact-ok
+= expm1 downward intel96 0x5.a343ep-4 : 0x6.c23b7ba6e78d9ebp-4 : inexact-ok
+= expm1 tonearest intel96 0x5.a343ep-4 : 0x6.c23b7ba6e78d9eb8p-4 : inexact-ok
+= expm1 towardzero intel96 0x5.a343ep-4 : 0x6.c23b7ba6e78d9ebp-4 : inexact-ok
+= expm1 upward intel96 0x5.a343ep-4 : 0x6.c23b7ba6e78d9eb8p-4 : inexact-ok
+= expm1 downward m68k96 0x5.a343ep-4 : 0x6.c23b7ba6e78d9ebp-4 : inexact-ok
+= expm1 tonearest m68k96 0x5.a343ep-4 : 0x6.c23b7ba6e78d9eb8p-4 : inexact-ok
+= expm1 towardzero m68k96 0x5.a343ep-4 : 0x6.c23b7ba6e78d9ebp-4 : inexact-ok
+= expm1 upward m68k96 0x5.a343ep-4 : 0x6.c23b7ba6e78d9eb8p-4 : inexact-ok
+= expm1 downward binary128 0x5.a343ep-4 : 0x6.c23b7ba6e78d9eb5a8c9564c513p-4 : inexact-ok
+= expm1 tonearest binary128 0x5.a343ep-4 : 0x6.c23b7ba6e78d9eb5a8c9564c5134p-4 : inexact-ok
+= expm1 towardzero binary128 0x5.a343ep-4 : 0x6.c23b7ba6e78d9eb5a8c9564c513p-4 : inexact-ok
+= expm1 upward binary128 0x5.a343ep-4 : 0x6.c23b7ba6e78d9eb5a8c9564c5134p-4 : inexact-ok
+= expm1 downward ibm128 0x5.a343ep-4 : 0x6.c23b7ba6e78d9eb5a8c9564c5p-4 : inexact-ok
+= expm1 tonearest ibm128 0x5.a343ep-4 : 0x6.c23b7ba6e78d9eb5a8c9564c52p-4 : inexact-ok
+= expm1 towardzero ibm128 0x5.a343ep-4 : 0x6.c23b7ba6e78d9eb5a8c9564c5p-4 : inexact-ok
+= expm1 upward ibm128 0x5.a343ep-4 : 0x6.c23b7ba6e78d9eb5a8c9564c52p-4 : inexact-ok
+= expm1 downward binary32 0x5.a343d8p-4 : 0x6.c23b7p-4 : inexact-ok
+= expm1 tonearest binary32 0x5.a343d8p-4 : 0x6.c23b7p-4 : inexact-ok
+= expm1 towardzero binary32 0x5.a343d8p-4 : 0x6.c23b7p-4 : inexact-ok
+= expm1 upward binary32 0x5.a343d8p-4 : 0x6.c23b78p-4 : inexact-ok
+= expm1 downward binary64 0x5.a343d8p-4 : 0x6.c23b7045c9d28p-4 : inexact-ok
+= expm1 tonearest binary64 0x5.a343d8p-4 : 0x6.c23b7045c9d2cp-4 : inexact-ok
+= expm1 towardzero binary64 0x5.a343d8p-4 : 0x6.c23b7045c9d28p-4 : inexact-ok
+= expm1 upward binary64 0x5.a343d8p-4 : 0x6.c23b7045c9d2cp-4 : inexact-ok
+= expm1 downward intel96 0x5.a343d8p-4 : 0x6.c23b7045c9d2a388p-4 : inexact-ok
+= expm1 tonearest intel96 0x5.a343d8p-4 : 0x6.c23b7045c9d2a388p-4 : inexact-ok
+= expm1 towardzero intel96 0x5.a343d8p-4 : 0x6.c23b7045c9d2a388p-4 : inexact-ok
+= expm1 upward intel96 0x5.a343d8p-4 : 0x6.c23b7045c9d2a39p-4 : inexact-ok
+= expm1 downward m68k96 0x5.a343d8p-4 : 0x6.c23b7045c9d2a388p-4 : inexact-ok
+= expm1 tonearest m68k96 0x5.a343d8p-4 : 0x6.c23b7045c9d2a388p-4 : inexact-ok
+= expm1 towardzero m68k96 0x5.a343d8p-4 : 0x6.c23b7045c9d2a388p-4 : inexact-ok
+= expm1 upward m68k96 0x5.a343d8p-4 : 0x6.c23b7045c9d2a39p-4 : inexact-ok
+= expm1 downward binary128 0x5.a343d8p-4 : 0x6.c23b7045c9d2a38950f5772c7164p-4 : inexact-ok
+= expm1 tonearest binary128 0x5.a343d8p-4 : 0x6.c23b7045c9d2a38950f5772c7164p-4 : inexact-ok
+= expm1 towardzero binary128 0x5.a343d8p-4 : 0x6.c23b7045c9d2a38950f5772c7164p-4 : inexact-ok
+= expm1 upward binary128 0x5.a343d8p-4 : 0x6.c23b7045c9d2a38950f5772c7168p-4 : inexact-ok
+= expm1 downward ibm128 0x5.a343d8p-4 : 0x6.c23b7045c9d2a38950f5772c7p-4 : inexact-ok
+= expm1 tonearest ibm128 0x5.a343d8p-4 : 0x6.c23b7045c9d2a38950f5772c72p-4 : inexact-ok
+= expm1 towardzero ibm128 0x5.a343d8p-4 : 0x6.c23b7045c9d2a38950f5772c7p-4 : inexact-ok
+= expm1 upward ibm128 0x5.a343d8p-4 : 0x6.c23b7045c9d2a38950f5772c72p-4 : inexact-ok
+= expm1 downward binary64 0x5.a343df0d6800cp-4 : 0x6.c23b7a4dd595cp-4 : inexact-ok
+= expm1 tonearest binary64 0x5.a343df0d6800cp-4 : 0x6.c23b7a4dd595cp-4 : inexact-ok
+= expm1 towardzero binary64 0x5.a343df0d6800cp-4 : 0x6.c23b7a4dd595cp-4 : inexact-ok
+= expm1 upward binary64 0x5.a343df0d6800cp-4 : 0x6.c23b7a4dd596p-4 : inexact-ok
+= expm1 downward intel96 0x5.a343df0d6800cp-4 : 0x6.c23b7a4dd595d6bp-4 : inexact-ok
+= expm1 tonearest intel96 0x5.a343df0d6800cp-4 : 0x6.c23b7a4dd595d6b8p-4 : inexact-ok
+= expm1 towardzero intel96 0x5.a343df0d6800cp-4 : 0x6.c23b7a4dd595d6bp-4 : inexact-ok
+= expm1 upward intel96 0x5.a343df0d6800cp-4 : 0x6.c23b7a4dd595d6b8p-4 : inexact-ok
+= expm1 downward m68k96 0x5.a343df0d6800cp-4 : 0x6.c23b7a4dd595d6bp-4 : inexact-ok
+= expm1 tonearest m68k96 0x5.a343df0d6800cp-4 : 0x6.c23b7a4dd595d6b8p-4 : inexact-ok
+= expm1 towardzero m68k96 0x5.a343df0d6800cp-4 : 0x6.c23b7a4dd595d6bp-4 : inexact-ok
+= expm1 upward m68k96 0x5.a343df0d6800cp-4 : 0x6.c23b7a4dd595d6b8p-4 : inexact-ok
+= expm1 downward binary128 0x5.a343df0d6800cp-4 : 0x6.c23b7a4dd595d6b551ae9c270edcp-4 : inexact-ok
+= expm1 tonearest binary128 0x5.a343df0d6800cp-4 : 0x6.c23b7a4dd595d6b551ae9c270edcp-4 : inexact-ok
+= expm1 towardzero binary128 0x5.a343df0d6800cp-4 : 0x6.c23b7a4dd595d6b551ae9c270edcp-4 : inexact-ok
+= expm1 upward binary128 0x5.a343df0d6800cp-4 : 0x6.c23b7a4dd595d6b551ae9c270eep-4 : inexact-ok
+= expm1 downward ibm128 0x5.a343df0d6800cp-4 : 0x6.c23b7a4dd595d6b551ae9c270ep-4 : inexact-ok
+= expm1 tonearest ibm128 0x5.a343df0d6800cp-4 : 0x6.c23b7a4dd595d6b551ae9c270ep-4 : inexact-ok
+= expm1 towardzero ibm128 0x5.a343df0d6800cp-4 : 0x6.c23b7a4dd595d6b551ae9c270ep-4 : inexact-ok
+= expm1 upward ibm128 0x5.a343df0d6800cp-4 : 0x6.c23b7a4dd595d6b551ae9c271p-4 : inexact-ok
+= expm1 downward binary64 0x5.a343df0d68008p-4 : 0x6.c23b7a4dd5954p-4 : inexact-ok
+= expm1 tonearest binary64 0x5.a343df0d68008p-4 : 0x6.c23b7a4dd5958p-4 : inexact-ok
+= expm1 towardzero binary64 0x5.a343df0d68008p-4 : 0x6.c23b7a4dd5954p-4 : inexact-ok
+= expm1 upward binary64 0x5.a343df0d68008p-4 : 0x6.c23b7a4dd5958p-4 : inexact-ok
+= expm1 downward intel96 0x5.a343df0d68008p-4 : 0x6.c23b7a4dd5957ba8p-4 : inexact-ok
+= expm1 tonearest intel96 0x5.a343df0d68008p-4 : 0x6.c23b7a4dd5957bbp-4 : inexact-ok
+= expm1 towardzero intel96 0x5.a343df0d68008p-4 : 0x6.c23b7a4dd5957ba8p-4 : inexact-ok
+= expm1 upward intel96 0x5.a343df0d68008p-4 : 0x6.c23b7a4dd5957bbp-4 : inexact-ok
+= expm1 downward m68k96 0x5.a343df0d68008p-4 : 0x6.c23b7a4dd5957ba8p-4 : inexact-ok
+= expm1 tonearest m68k96 0x5.a343df0d68008p-4 : 0x6.c23b7a4dd5957bbp-4 : inexact-ok
+= expm1 towardzero m68k96 0x5.a343df0d68008p-4 : 0x6.c23b7a4dd5957ba8p-4 : inexact-ok
+= expm1 upward m68k96 0x5.a343df0d68008p-4 : 0x6.c23b7a4dd5957bbp-4 : inexact-ok
+= expm1 downward binary128 0x5.a343df0d68008p-4 : 0x6.c23b7a4dd5957bac63c564d0b834p-4 : inexact-ok
+= expm1 tonearest binary128 0x5.a343df0d68008p-4 : 0x6.c23b7a4dd5957bac63c564d0b838p-4 : inexact-ok
+= expm1 towardzero binary128 0x5.a343df0d68008p-4 : 0x6.c23b7a4dd5957bac63c564d0b834p-4 : inexact-ok
+= expm1 upward binary128 0x5.a343df0d68008p-4 : 0x6.c23b7a4dd5957bac63c564d0b838p-4 : inexact-ok
+= expm1 downward ibm128 0x5.a343df0d68008p-4 : 0x6.c23b7a4dd5957bac63c564d0b8p-4 : inexact-ok
+= expm1 tonearest ibm128 0x5.a343df0d68008p-4 : 0x6.c23b7a4dd5957bac63c564d0b8p-4 : inexact-ok
+= expm1 towardzero ibm128 0x5.a343df0d68008p-4 : 0x6.c23b7a4dd5957bac63c564d0b8p-4 : inexact-ok
+= expm1 upward ibm128 0x5.a343df0d68008p-4 : 0x6.c23b7a4dd5957bac63c564d0bap-4 : inexact-ok
+= expm1 downward intel96 0x5.a343df0d680099a8p-4 : 0x6.c23b7a4dd595a028p-4 : inexact-ok
+= expm1 tonearest intel96 0x5.a343df0d680099a8p-4 : 0x6.c23b7a4dd595a028p-4 : inexact-ok
+= expm1 towardzero intel96 0x5.a343df0d680099a8p-4 : 0x6.c23b7a4dd595a028p-4 : inexact-ok
+= expm1 upward intel96 0x5.a343df0d680099a8p-4 : 0x6.c23b7a4dd595a03p-4 : inexact-ok
+= expm1 downward m68k96 0x5.a343df0d680099a8p-4 : 0x6.c23b7a4dd595a028p-4 : inexact-ok
+= expm1 tonearest m68k96 0x5.a343df0d680099a8p-4 : 0x6.c23b7a4dd595a028p-4 : inexact-ok
+= expm1 towardzero m68k96 0x5.a343df0d680099a8p-4 : 0x6.c23b7a4dd595a028p-4 : inexact-ok
+= expm1 upward m68k96 0x5.a343df0d680099a8p-4 : 0x6.c23b7a4dd595a03p-4 : inexact-ok
+= expm1 downward binary128 0x5.a343df0d680099a8p-4 : 0x6.c23b7a4dd595a02ad825029fb484p-4 : inexact-ok
+= expm1 tonearest binary128 0x5.a343df0d680099a8p-4 : 0x6.c23b7a4dd595a02ad825029fb488p-4 : inexact-ok
+= expm1 towardzero binary128 0x5.a343df0d680099a8p-4 : 0x6.c23b7a4dd595a02ad825029fb484p-4 : inexact-ok
+= expm1 upward binary128 0x5.a343df0d680099a8p-4 : 0x6.c23b7a4dd595a02ad825029fb488p-4 : inexact-ok
+= expm1 downward ibm128 0x5.a343df0d680099a8p-4 : 0x6.c23b7a4dd595a02ad825029fb4p-4 : inexact-ok
+= expm1 tonearest ibm128 0x5.a343df0d680099a8p-4 : 0x6.c23b7a4dd595a02ad825029fb4p-4 : inexact-ok
+= expm1 towardzero ibm128 0x5.a343df0d680099a8p-4 : 0x6.c23b7a4dd595a02ad825029fb4p-4 : inexact-ok
+= expm1 upward ibm128 0x5.a343df0d680099a8p-4 : 0x6.c23b7a4dd595a02ad825029fb6p-4 : inexact-ok
+= expm1 downward intel96 0x5.a343df0d680099ap-4 : 0x6.c23b7a4dd595a018p-4 : inexact-ok
+= expm1 tonearest intel96 0x5.a343df0d680099ap-4 : 0x6.c23b7a4dd595a02p-4 : inexact-ok
+= expm1 towardzero intel96 0x5.a343df0d680099ap-4 : 0x6.c23b7a4dd595a018p-4 : inexact-ok
+= expm1 upward intel96 0x5.a343df0d680099ap-4 : 0x6.c23b7a4dd595a02p-4 : inexact-ok
+= expm1 downward m68k96 0x5.a343df0d680099ap-4 : 0x6.c23b7a4dd595a018p-4 : inexact-ok
+= expm1 tonearest m68k96 0x5.a343df0d680099ap-4 : 0x6.c23b7a4dd595a02p-4 : inexact-ok
+= expm1 towardzero m68k96 0x5.a343df0d680099ap-4 : 0x6.c23b7a4dd595a018p-4 : inexact-ok
+= expm1 upward m68k96 0x5.a343df0d680099ap-4 : 0x6.c23b7a4dd595a02p-4 : inexact-ok
+= expm1 downward binary128 0x5.a343df0d680099ap-4 : 0x6.c23b7a4dd595a01f77074578c9bcp-4 : inexact-ok
+= expm1 tonearest binary128 0x5.a343df0d680099ap-4 : 0x6.c23b7a4dd595a01f77074578c9bcp-4 : inexact-ok
+= expm1 towardzero binary128 0x5.a343df0d680099ap-4 : 0x6.c23b7a4dd595a01f77074578c9bcp-4 : inexact-ok
+= expm1 upward binary128 0x5.a343df0d680099ap-4 : 0x6.c23b7a4dd595a01f77074578c9cp-4 : inexact-ok
+= expm1 downward ibm128 0x5.a343df0d680099ap-4 : 0x6.c23b7a4dd595a01f77074578c8p-4 : inexact-ok
+= expm1 tonearest ibm128 0x5.a343df0d680099ap-4 : 0x6.c23b7a4dd595a01f77074578cap-4 : inexact-ok
+= expm1 towardzero ibm128 0x5.a343df0d680099ap-4 : 0x6.c23b7a4dd595a01f77074578c8p-4 : inexact-ok
+= expm1 upward ibm128 0x5.a343df0d680099ap-4 : 0x6.c23b7a4dd595a01f77074578cap-4 : inexact-ok
+= expm1 downward binary128 0x5.a343df0d680099a7a1a873a751a8p-4 : 0x6.c23b7a4dd595a02a51f35d6c1584p-4 : inexact-ok
+= expm1 tonearest binary128 0x5.a343df0d680099a7a1a873a751a8p-4 : 0x6.c23b7a4dd595a02a51f35d6c1588p-4 : inexact-ok
+= expm1 towardzero binary128 0x5.a343df0d680099a7a1a873a751a8p-4 : 0x6.c23b7a4dd595a02a51f35d6c1584p-4 : inexact-ok
+= expm1 upward binary128 0x5.a343df0d680099a7a1a873a751a8p-4 : 0x6.c23b7a4dd595a02a51f35d6c1588p-4 : inexact-ok
+= expm1 downward binary128 0x5.a343df0d680099a7a1a873a752p-4 : 0x6.c23b7a4dd595a02a51f35d6c16p-4 : inexact-ok
+= expm1 tonearest binary128 0x5.a343df0d680099a7a1a873a752p-4 : 0x6.c23b7a4dd595a02a51f35d6c1604p-4 : inexact-ok
+= expm1 towardzero binary128 0x5.a343df0d680099a7a1a873a752p-4 : 0x6.c23b7a4dd595a02a51f35d6c16p-4 : inexact-ok
+= expm1 upward binary128 0x5.a343df0d680099a7a1a873a752p-4 : 0x6.c23b7a4dd595a02a51f35d6c1604p-4 : inexact-ok
+= expm1 downward ibm128 0x5.a343df0d680099a7a1a873a752p-4 : 0x6.c23b7a4dd595a02a51f35d6c16p-4 : inexact-ok
+= expm1 tonearest ibm128 0x5.a343df0d680099a7a1a873a752p-4 : 0x6.c23b7a4dd595a02a51f35d6c16p-4 : inexact-ok
+= expm1 towardzero ibm128 0x5.a343df0d680099a7a1a873a752p-4 : 0x6.c23b7a4dd595a02a51f35d6c16p-4 : inexact-ok
+= expm1 upward ibm128 0x5.a343df0d680099a7a1a873a752p-4 : 0x6.c23b7a4dd595a02a51f35d6c18p-4 : inexact-ok
+= expm1 downward binary128 0x5.a343df0d680099a7a1a873a75p-4 : 0x6.c23b7a4dd595a02a51f35d6c1328p-4 : inexact-ok
+= expm1 tonearest binary128 0x5.a343df0d680099a7a1a873a75p-4 : 0x6.c23b7a4dd595a02a51f35d6c132cp-4 : inexact-ok
+= expm1 towardzero binary128 0x5.a343df0d680099a7a1a873a75p-4 : 0x6.c23b7a4dd595a02a51f35d6c1328p-4 : inexact-ok
+= expm1 upward binary128 0x5.a343df0d680099a7a1a873a75p-4 : 0x6.c23b7a4dd595a02a51f35d6c132cp-4 : inexact-ok
+= expm1 downward ibm128 0x5.a343df0d680099a7a1a873a75p-4 : 0x6.c23b7a4dd595a02a51f35d6c12p-4 : inexact-ok
+= expm1 tonearest ibm128 0x5.a343df0d680099a7a1a873a75p-4 : 0x6.c23b7a4dd595a02a51f35d6c14p-4 : inexact-ok
+= expm1 towardzero ibm128 0x5.a343df0d680099a7a1a873a75p-4 : 0x6.c23b7a4dd595a02a51f35d6c12p-4 : inexact-ok
+= expm1 upward ibm128 0x5.a343df0d680099a7a1a873a75p-4 : 0x6.c23b7a4dd595a02a51f35d6c14p-4 : inexact-ok
 expm1 min
 = expm1 downward binary32 0x4p-128 : 0x4p-128 : inexact-ok underflow-ok errno-erange-ok
 = expm1 tonearest binary32 0x4p-128 : 0x4p-128 : inexact-ok underflow-ok errno-erange-ok
diff --git a/math/auto-libm-test-out-log10 b/math/auto-libm-test-out-log10
index 2d6205e0ad..8609c77477 100644
--- a/math/auto-libm-test-out-log10
+++ b/math/auto-libm-test-out-log10
@@ -1151,6 +1151,147 @@ log10 0x0.ffffffffffffffffffffffffffff8p0
 = log10 tonearest ibm128 0xf.fffffffffffffffffffffffffcp-4 : -0x1.bcb7b1526e50e32a6ab7555f5a8p-108 : inexact-ok
 = log10 towardzero ibm128 0xf.fffffffffffffffffffffffffcp-4 : -0x1.bcb7b1526e50e32a6ab7555f5a8p-108 : inexact-ok
 = log10 upward ibm128 0xf.fffffffffffffffffffffffffcp-4 : -0x1.bcb7b1526e50e32a6ab7555f5a8p-108 : inexact-ok
+log10 0x1.6a291ea0aa11fb374f1df8b3ac6bp+0
+= log10 downward binary32 0x1.6a292p+0 : 0x2.691bccp-4 : inexact-ok
+= log10 tonearest binary32 0x1.6a292p+0 : 0x2.691bdp-4 : inexact-ok
+= log10 towardzero binary32 0x1.6a292p+0 : 0x2.691bccp-4 : inexact-ok
+= log10 upward binary32 0x1.6a292p+0 : 0x2.691bdp-4 : inexact-ok
+= log10 downward binary64 0x1.6a292p+0 : 0x2.691bcfd621dd6p-4 : inexact-ok
+= log10 tonearest binary64 0x1.6a292p+0 : 0x2.691bcfd621dd6p-4 : inexact-ok
+= log10 towardzero binary64 0x1.6a292p+0 : 0x2.691bcfd621dd6p-4 : inexact-ok
+= log10 upward binary64 0x1.6a292p+0 : 0x2.691bcfd621dd8p-4 : inexact-ok
+= log10 downward intel96 0x1.6a292p+0 : 0x2.691bcfd621dd62fp-4 : inexact-ok
+= log10 tonearest intel96 0x1.6a292p+0 : 0x2.691bcfd621dd62fp-4 : inexact-ok
+= log10 towardzero intel96 0x1.6a292p+0 : 0x2.691bcfd621dd62fp-4 : inexact-ok
+= log10 upward intel96 0x1.6a292p+0 : 0x2.691bcfd621dd62f4p-4 : inexact-ok
+= log10 downward m68k96 0x1.6a292p+0 : 0x2.691bcfd621dd62fp-4 : inexact-ok
+= log10 tonearest m68k96 0x1.6a292p+0 : 0x2.691bcfd621dd62fp-4 : inexact-ok
+= log10 towardzero m68k96 0x1.6a292p+0 : 0x2.691bcfd621dd62fp-4 : inexact-ok
+= log10 upward m68k96 0x1.6a292p+0 : 0x2.691bcfd621dd62f4p-4 : inexact-ok
+= log10 downward binary128 0x1.6a292p+0 : 0x2.691bcfd621dd62f0555533806e12p-4 : inexact-ok
+= log10 tonearest binary128 0x1.6a292p+0 : 0x2.691bcfd621dd62f0555533806e14p-4 : inexact-ok
+= log10 towardzero binary128 0x1.6a292p+0 : 0x2.691bcfd621dd62f0555533806e12p-4 : inexact-ok
+= log10 upward binary128 0x1.6a292p+0 : 0x2.691bcfd621dd62f0555533806e14p-4 : inexact-ok
+= log10 downward ibm128 0x1.6a292p+0 : 0x2.691bcfd621dd62f0555533806ep-4 : inexact-ok
+= log10 tonearest ibm128 0x1.6a292p+0 : 0x2.691bcfd621dd62f0555533806ep-4 : inexact-ok
+= log10 towardzero ibm128 0x1.6a292p+0 : 0x2.691bcfd621dd62f0555533806ep-4 : inexact-ok
+= log10 upward ibm128 0x1.6a292p+0 : 0x2.691bcfd621dd62f0555533806fp-4 : inexact-ok
+= log10 downward binary32 0x1.6a291ep+0 : 0x2.691bc4p-4 : inexact-ok
+= log10 tonearest binary32 0x1.6a291ep+0 : 0x2.691bc8p-4 : inexact-ok
+= log10 towardzero binary32 0x1.6a291ep+0 : 0x2.691bc4p-4 : inexact-ok
+= log10 upward binary32 0x1.6a291ep+0 : 0x2.691bc8p-4 : inexact-ok
+= log10 downward binary64 0x1.6a291ep+0 : 0x2.691bc60346efp-4 : inexact-ok
+= log10 tonearest binary64 0x1.6a291ep+0 : 0x2.691bc60346ef2p-4 : inexact-ok
+= log10 towardzero binary64 0x1.6a291ep+0 : 0x2.691bc60346efp-4 : inexact-ok
+= log10 upward binary64 0x1.6a291ep+0 : 0x2.691bc60346ef2p-4 : inexact-ok
+= log10 downward intel96 0x1.6a291ep+0 : 0x2.691bc60346ef1498p-4 : inexact-ok
+= log10 tonearest intel96 0x1.6a291ep+0 : 0x2.691bc60346ef149cp-4 : inexact-ok
+= log10 towardzero intel96 0x1.6a291ep+0 : 0x2.691bc60346ef1498p-4 : inexact-ok
+= log10 upward intel96 0x1.6a291ep+0 : 0x2.691bc60346ef149cp-4 : inexact-ok
+= log10 downward m68k96 0x1.6a291ep+0 : 0x2.691bc60346ef1498p-4 : inexact-ok
+= log10 tonearest m68k96 0x1.6a291ep+0 : 0x2.691bc60346ef149cp-4 : inexact-ok
+= log10 towardzero m68k96 0x1.6a291ep+0 : 0x2.691bc60346ef1498p-4 : inexact-ok
+= log10 upward m68k96 0x1.6a291ep+0 : 0x2.691bc60346ef149cp-4 : inexact-ok
+= log10 downward binary128 0x1.6a291ep+0 : 0x2.691bc60346ef149aab7639545802p-4 : inexact-ok
+= log10 tonearest binary128 0x1.6a291ep+0 : 0x2.691bc60346ef149aab7639545802p-4 : inexact-ok
+= log10 towardzero binary128 0x1.6a291ep+0 : 0x2.691bc60346ef149aab7639545802p-4 : inexact-ok
+= log10 upward binary128 0x1.6a291ep+0 : 0x2.691bc60346ef149aab7639545804p-4 : inexact-ok
+= log10 downward ibm128 0x1.6a291ep+0 : 0x2.691bc60346ef149aab76395458p-4 : inexact-ok
+= log10 tonearest ibm128 0x1.6a291ep+0 : 0x2.691bc60346ef149aab76395458p-4 : inexact-ok
+= log10 towardzero ibm128 0x1.6a291ep+0 : 0x2.691bc60346ef149aab76395458p-4 : inexact-ok
+= log10 upward ibm128 0x1.6a291ep+0 : 0x2.691bc60346ef149aab76395459p-4 : inexact-ok
+= log10 downward binary64 0x1.6a291ea0aa12p+0 : 0x2.691bc9186eb62p-4 : inexact-ok
+= log10 tonearest binary64 0x1.6a291ea0aa12p+0 : 0x2.691bc9186eb62p-4 : inexact-ok
+= log10 towardzero binary64 0x1.6a291ea0aa12p+0 : 0x2.691bc9186eb62p-4 : inexact-ok
+= log10 upward binary64 0x1.6a291ea0aa12p+0 : 0x2.691bc9186eb64p-4 : inexact-ok
+= log10 downward intel96 0x1.6a291ea0aa12p+0 : 0x2.691bc9186eb626bp-4 : inexact-ok
+= log10 tonearest intel96 0x1.6a291ea0aa12p+0 : 0x2.691bc9186eb626bp-4 : inexact-ok
+= log10 towardzero intel96 0x1.6a291ea0aa12p+0 : 0x2.691bc9186eb626bp-4 : inexact-ok
+= log10 upward intel96 0x1.6a291ea0aa12p+0 : 0x2.691bc9186eb626b4p-4 : inexact-ok
+= log10 downward m68k96 0x1.6a291ea0aa12p+0 : 0x2.691bc9186eb626bp-4 : inexact-ok
+= log10 tonearest m68k96 0x1.6a291ea0aa12p+0 : 0x2.691bc9186eb626bp-4 : inexact-ok
+= log10 towardzero m68k96 0x1.6a291ea0aa12p+0 : 0x2.691bc9186eb626bp-4 : inexact-ok
+= log10 upward m68k96 0x1.6a291ea0aa12p+0 : 0x2.691bc9186eb626b4p-4 : inexact-ok
+= log10 downward binary128 0x1.6a291ea0aa12p+0 : 0x2.691bc9186eb626b0790f4ffb5b78p-4 : inexact-ok
+= log10 tonearest binary128 0x1.6a291ea0aa12p+0 : 0x2.691bc9186eb626b0790f4ffb5b7ap-4 : inexact-ok
+= log10 towardzero binary128 0x1.6a291ea0aa12p+0 : 0x2.691bc9186eb626b0790f4ffb5b78p-4 : inexact-ok
+= log10 upward binary128 0x1.6a291ea0aa12p+0 : 0x2.691bc9186eb626b0790f4ffb5b7ap-4 : inexact-ok
+= log10 downward ibm128 0x1.6a291ea0aa12p+0 : 0x2.691bc9186eb626b0790f4ffb5bp-4 : inexact-ok
+= log10 tonearest ibm128 0x1.6a291ea0aa12p+0 : 0x2.691bc9186eb626b0790f4ffb5bp-4 : inexact-ok
+= log10 towardzero ibm128 0x1.6a291ea0aa12p+0 : 0x2.691bc9186eb626b0790f4ffb5bp-4 : inexact-ok
+= log10 upward ibm128 0x1.6a291ea0aa12p+0 : 0x2.691bc9186eb626b0790f4ffb5cp-4 : inexact-ok
+= log10 downward binary64 0x1.6a291ea0aa11fp+0 : 0x2.691bc9186eb5cp-4 : inexact-ok
+= log10 tonearest binary64 0x1.6a291ea0aa11fp+0 : 0x2.691bc9186eb5ep-4 : inexact-ok
+= log10 towardzero binary64 0x1.6a291ea0aa11fp+0 : 0x2.691bc9186eb5cp-4 : inexact-ok
+= log10 upward binary64 0x1.6a291ea0aa11fp+0 : 0x2.691bc9186eb5ep-4 : inexact-ok
+= log10 downward intel96 0x1.6a291ea0aa11fp+0 : 0x2.691bc9186eb5d818p-4 : inexact-ok
+= log10 tonearest intel96 0x1.6a291ea0aa11fp+0 : 0x2.691bc9186eb5d818p-4 : inexact-ok
+= log10 towardzero intel96 0x1.6a291ea0aa11fp+0 : 0x2.691bc9186eb5d818p-4 : inexact-ok
+= log10 upward intel96 0x1.6a291ea0aa11fp+0 : 0x2.691bc9186eb5d81cp-4 : inexact-ok
+= log10 downward m68k96 0x1.6a291ea0aa11fp+0 : 0x2.691bc9186eb5d818p-4 : inexact-ok
+= log10 tonearest m68k96 0x1.6a291ea0aa11fp+0 : 0x2.691bc9186eb5d818p-4 : inexact-ok
+= log10 towardzero m68k96 0x1.6a291ea0aa11fp+0 : 0x2.691bc9186eb5d818p-4 : inexact-ok
+= log10 upward m68k96 0x1.6a291ea0aa11fp+0 : 0x2.691bc9186eb5d81cp-4 : inexact-ok
+= log10 downward binary128 0x1.6a291ea0aa11fp+0 : 0x2.691bc9186eb5d819a1882d31829cp-4 : inexact-ok
+= log10 tonearest binary128 0x1.6a291ea0aa11fp+0 : 0x2.691bc9186eb5d819a1882d31829ep-4 : inexact-ok
+= log10 towardzero binary128 0x1.6a291ea0aa11fp+0 : 0x2.691bc9186eb5d819a1882d31829cp-4 : inexact-ok
+= log10 upward binary128 0x1.6a291ea0aa11fp+0 : 0x2.691bc9186eb5d819a1882d31829ep-4 : inexact-ok
+= log10 downward ibm128 0x1.6a291ea0aa11fp+0 : 0x2.691bc9186eb5d819a1882d3182p-4 : inexact-ok
+= log10 tonearest ibm128 0x1.6a291ea0aa11fp+0 : 0x2.691bc9186eb5d819a1882d3183p-4 : inexact-ok
+= log10 towardzero ibm128 0x1.6a291ea0aa11fp+0 : 0x2.691bc9186eb5d819a1882d3182p-4 : inexact-ok
+= log10 upward ibm128 0x1.6a291ea0aa11fp+0 : 0x2.691bc9186eb5d819a1882d3183p-4 : inexact-ok
+= log10 downward intel96 0x1.6a291ea0aa11fb38p+0 : 0x2.691bc9186eb60f34p-4 : inexact-ok
+= log10 tonearest intel96 0x1.6a291ea0aa11fb38p+0 : 0x2.691bc9186eb60f34p-4 : inexact-ok
+= log10 towardzero intel96 0x1.6a291ea0aa11fb38p+0 : 0x2.691bc9186eb60f34p-4 : inexact-ok
+= log10 upward intel96 0x1.6a291ea0aa11fb38p+0 : 0x2.691bc9186eb60f38p-4 : inexact-ok
+= log10 downward m68k96 0x1.6a291ea0aa11fb38p+0 : 0x2.691bc9186eb60f34p-4 : inexact-ok
+= log10 tonearest m68k96 0x1.6a291ea0aa11fb38p+0 : 0x2.691bc9186eb60f34p-4 : inexact-ok
+= log10 towardzero m68k96 0x1.6a291ea0aa11fb38p+0 : 0x2.691bc9186eb60f34p-4 : inexact-ok
+= log10 upward m68k96 0x1.6a291ea0aa11fb38p+0 : 0x2.691bc9186eb60f38p-4 : inexact-ok
+= log10 downward binary128 0x1.6a291ea0aa11fb38p+0 : 0x2.691bc9186eb60f3465a76e160a88p-4 : inexact-ok
+= log10 tonearest binary128 0x1.6a291ea0aa11fb38p+0 : 0x2.691bc9186eb60f3465a76e160a88p-4 : inexact-ok
+= log10 towardzero binary128 0x1.6a291ea0aa11fb38p+0 : 0x2.691bc9186eb60f3465a76e160a88p-4 : inexact-ok
+= log10 upward binary128 0x1.6a291ea0aa11fb38p+0 : 0x2.691bc9186eb60f3465a76e160a8ap-4 : inexact-ok
+= log10 downward ibm128 0x1.6a291ea0aa11fb38p+0 : 0x2.691bc9186eb60f3465a76e160ap-4 : inexact-ok
+= log10 tonearest ibm128 0x1.6a291ea0aa11fb38p+0 : 0x2.691bc9186eb60f3465a76e160bp-4 : inexact-ok
+= log10 towardzero ibm128 0x1.6a291ea0aa11fb38p+0 : 0x2.691bc9186eb60f3465a76e160ap-4 : inexact-ok
+= log10 upward ibm128 0x1.6a291ea0aa11fb38p+0 : 0x2.691bc9186eb60f3465a76e160bp-4 : inexact-ok
+= log10 downward intel96 0x1.6a291ea0aa11fb36p+0 : 0x2.691bc9186eb60f28p-4 : inexact-ok
+= log10 tonearest intel96 0x1.6a291ea0aa11fb36p+0 : 0x2.691bc9186eb60f2cp-4 : inexact-ok
+= log10 towardzero intel96 0x1.6a291ea0aa11fb36p+0 : 0x2.691bc9186eb60f28p-4 : inexact-ok
+= log10 upward intel96 0x1.6a291ea0aa11fb36p+0 : 0x2.691bc9186eb60f2cp-4 : inexact-ok
+= log10 downward m68k96 0x1.6a291ea0aa11fb36p+0 : 0x2.691bc9186eb60f28p-4 : inexact-ok
+= log10 tonearest m68k96 0x1.6a291ea0aa11fb36p+0 : 0x2.691bc9186eb60f2cp-4 : inexact-ok
+= log10 towardzero m68k96 0x1.6a291ea0aa11fb36p+0 : 0x2.691bc9186eb60f28p-4 : inexact-ok
+= log10 upward m68k96 0x1.6a291ea0aa11fb36p+0 : 0x2.691bc9186eb60f2cp-4 : inexact-ok
+= log10 downward binary128 0x1.6a291ea0aa11fb36p+0 : 0x2.691bc9186eb60f2a92cc7d31b14cp-4 : inexact-ok
+= log10 tonearest binary128 0x1.6a291ea0aa11fb36p+0 : 0x2.691bc9186eb60f2a92cc7d31b14ep-4 : inexact-ok
+= log10 towardzero binary128 0x1.6a291ea0aa11fb36p+0 : 0x2.691bc9186eb60f2a92cc7d31b14cp-4 : inexact-ok
+= log10 upward binary128 0x1.6a291ea0aa11fb36p+0 : 0x2.691bc9186eb60f2a92cc7d31b14ep-4 : inexact-ok
+= log10 downward ibm128 0x1.6a291ea0aa11fb36p+0 : 0x2.691bc9186eb60f2a92cc7d31b1p-4 : inexact-ok
+= log10 tonearest ibm128 0x1.6a291ea0aa11fb36p+0 : 0x2.691bc9186eb60f2a92cc7d31b1p-4 : inexact-ok
+= log10 towardzero ibm128 0x1.6a291ea0aa11fb36p+0 : 0x2.691bc9186eb60f2a92cc7d31b1p-4 : inexact-ok
+= log10 upward ibm128 0x1.6a291ea0aa11fb36p+0 : 0x2.691bc9186eb60f2a92cc7d31b2p-4 : inexact-ok
+= log10 downward binary128 0x1.6a291ea0aa11fb374f1df8b3ac6bp+0 : 0x2.691bc9186eb60f3100d5f4ca51bcp-4 : inexact-ok
+= log10 tonearest binary128 0x1.6a291ea0aa11fb374f1df8b3ac6bp+0 : 0x2.691bc9186eb60f3100d5f4ca51bcp-4 : inexact-ok
+= log10 towardzero binary128 0x1.6a291ea0aa11fb374f1df8b3ac6bp+0 : 0x2.691bc9186eb60f3100d5f4ca51bcp-4 : inexact-ok
+= log10 upward binary128 0x1.6a291ea0aa11fb374f1df8b3ac6bp+0 : 0x2.691bc9186eb60f3100d5f4ca51bep-4 : inexact-ok
+= log10 downward binary128 0x1.6a291ea0aa11fb374f1df8b3ac8p+0 : 0x2.691bc9186eb60f3100d5f4ca5222p-4 : inexact-ok
+= log10 tonearest binary128 0x1.6a291ea0aa11fb374f1df8b3ac8p+0 : 0x2.691bc9186eb60f3100d5f4ca5224p-4 : inexact-ok
+= log10 towardzero binary128 0x1.6a291ea0aa11fb374f1df8b3ac8p+0 : 0x2.691bc9186eb60f3100d5f4ca5222p-4 : inexact-ok
+= log10 upward binary128 0x1.6a291ea0aa11fb374f1df8b3ac8p+0 : 0x2.691bc9186eb60f3100d5f4ca5224p-4 : inexact-ok
+= log10 downward ibm128 0x1.6a291ea0aa11fb374f1df8b3ac8p+0 : 0x2.691bc9186eb60f3100d5f4ca52p-4 : inexact-ok
+= log10 tonearest ibm128 0x1.6a291ea0aa11fb374f1df8b3ac8p+0 : 0x2.691bc9186eb60f3100d5f4ca52p-4 : inexact-ok
+= log10 towardzero ibm128 0x1.6a291ea0aa11fb374f1df8b3ac8p+0 : 0x2.691bc9186eb60f3100d5f4ca52p-4 : inexact-ok
+= log10 upward ibm128 0x1.6a291ea0aa11fb374f1df8b3ac8p+0 : 0x2.691bc9186eb60f3100d5f4ca53p-4 : inexact-ok
+= log10 downward binary128 0x1.6a291ea0aa11fb374f1df8b3acp+0 : 0x2.691bc9186eb60f3100d5f4ca4faep-4 : inexact-ok
+= log10 tonearest binary128 0x1.6a291ea0aa11fb374f1df8b3acp+0 : 0x2.691bc9186eb60f3100d5f4ca4faep-4 : inexact-ok
+= log10 towardzero binary128 0x1.6a291ea0aa11fb374f1df8b3acp+0 : 0x2.691bc9186eb60f3100d5f4ca4faep-4 : inexact-ok
+= log10 upward binary128 0x1.6a291ea0aa11fb374f1df8b3acp+0 : 0x2.691bc9186eb60f3100d5f4ca4fbp-4 : inexact-ok
+= log10 downward ibm128 0x1.6a291ea0aa11fb374f1df8b3acp+0 : 0x2.691bc9186eb60f3100d5f4ca4fp-4 : inexact-ok
+= log10 tonearest ibm128 0x1.6a291ea0aa11fb374f1df8b3acp+0 : 0x2.691bc9186eb60f3100d5f4ca5p-4 : inexact-ok
+= log10 towardzero ibm128 0x1.6a291ea0aa11fb374f1df8b3acp+0 : 0x2.691bc9186eb60f3100d5f4ca4fp-4 : inexact-ok
+= log10 upward ibm128 0x1.6a291ea0aa11fb374f1df8b3acp+0 : 0x2.691bc9186eb60f3100d5f4ca5p-4 : inexact-ok
 log10 min
 = log10 downward binary32 0x4p-128 : -0x2.5ee064p+4 : inexact-ok
 = log10 tonearest binary32 0x4p-128 : -0x2.5ee06p+4 : inexact-ok
diff --git a/math/auto-libm-test-out-log1p b/math/auto-libm-test-out-log1p
index 47862aa646..f7d3b35e6d 100644
--- a/math/auto-libm-test-out-log1p
+++ b/math/auto-libm-test-out-log1p
@@ -1229,6 +1229,147 @@ log1p 0x1p1000
 = log1p tonearest ibm128 0x1p+1000 : 0x2.b525ada00b9273470ca17589cfp+8 : inexact-ok
 = log1p towardzero ibm128 0x1p+1000 : 0x2.b525ada00b9273470ca17589cfp+8 : inexact-ok
 = log1p upward ibm128 0x1p+1000 : 0x2.b525ada00b9273470ca17589dp+8 : inexact-ok
+log1p 0x6.a0cf42befce9ed4085ef59254b48p-4
+= log1p downward binary32 0x6.a0cf48p-4 : 0x5.8bb348p-4 : inexact-ok
+= log1p tonearest binary32 0x6.a0cf48p-4 : 0x5.8bb35p-4 : inexact-ok
+= log1p towardzero binary32 0x6.a0cf48p-4 : 0x5.8bb348p-4 : inexact-ok
+= log1p upward binary32 0x6.a0cf48p-4 : 0x5.8bb35p-4 : inexact-ok
+= log1p downward binary64 0x6.a0cf48p-4 : 0x5.8bb34ffb3a0bp-4 : inexact-ok
+= log1p tonearest binary64 0x6.a0cf48p-4 : 0x5.8bb34ffb3a0b4p-4 : inexact-ok
+= log1p towardzero binary64 0x6.a0cf48p-4 : 0x5.8bb34ffb3a0bp-4 : inexact-ok
+= log1p upward binary64 0x6.a0cf48p-4 : 0x5.8bb34ffb3a0b4p-4 : inexact-ok
+= log1p downward intel96 0x6.a0cf48p-4 : 0x5.8bb34ffb3a0b27c8p-4 : inexact-ok
+= log1p tonearest intel96 0x6.a0cf48p-4 : 0x5.8bb34ffb3a0b27dp-4 : inexact-ok
+= log1p towardzero intel96 0x6.a0cf48p-4 : 0x5.8bb34ffb3a0b27c8p-4 : inexact-ok
+= log1p upward intel96 0x6.a0cf48p-4 : 0x5.8bb34ffb3a0b27dp-4 : inexact-ok
+= log1p downward m68k96 0x6.a0cf48p-4 : 0x5.8bb34ffb3a0b27c8p-4 : inexact-ok
+= log1p tonearest m68k96 0x6.a0cf48p-4 : 0x5.8bb34ffb3a0b27dp-4 : inexact-ok
+= log1p towardzero m68k96 0x6.a0cf48p-4 : 0x5.8bb34ffb3a0b27c8p-4 : inexact-ok
+= log1p upward m68k96 0x6.a0cf48p-4 : 0x5.8bb34ffb3a0b27dp-4 : inexact-ok
+= log1p downward binary128 0x6.a0cf48p-4 : 0x5.8bb34ffb3a0b27cf845e6ca86438p-4 : inexact-ok
+= log1p tonearest binary128 0x6.a0cf48p-4 : 0x5.8bb34ffb3a0b27cf845e6ca8643cp-4 : inexact-ok
+= log1p towardzero binary128 0x6.a0cf48p-4 : 0x5.8bb34ffb3a0b27cf845e6ca86438p-4 : inexact-ok
+= log1p upward binary128 0x6.a0cf48p-4 : 0x5.8bb34ffb3a0b27cf845e6ca8643cp-4 : inexact-ok
+= log1p downward ibm128 0x6.a0cf48p-4 : 0x5.8bb34ffb3a0b27cf845e6ca864p-4 : inexact-ok
+= log1p tonearest ibm128 0x6.a0cf48p-4 : 0x5.8bb34ffb3a0b27cf845e6ca864p-4 : inexact-ok
+= log1p towardzero ibm128 0x6.a0cf48p-4 : 0x5.8bb34ffb3a0b27cf845e6ca864p-4 : inexact-ok
+= log1p upward ibm128 0x6.a0cf48p-4 : 0x5.8bb34ffb3a0b27cf845e6ca866p-4 : inexact-ok
+= log1p downward binary32 0x6.a0cf4p-4 : 0x5.8bb348p-4 : inexact-ok
+= log1p tonearest binary32 0x6.a0cf4p-4 : 0x5.8bb348p-4 : inexact-ok
+= log1p towardzero binary32 0x6.a0cf4p-4 : 0x5.8bb348p-4 : inexact-ok
+= log1p upward binary32 0x6.a0cf4p-4 : 0x5.8bb35p-4 : inexact-ok
+= log1p downward binary64 0x6.a0cf4p-4 : 0x5.8bb34a531ea8cp-4 : inexact-ok
+= log1p tonearest binary64 0x6.a0cf4p-4 : 0x5.8bb34a531ea8cp-4 : inexact-ok
+= log1p towardzero binary64 0x6.a0cf4p-4 : 0x5.8bb34a531ea8cp-4 : inexact-ok
+= log1p upward binary64 0x6.a0cf4p-4 : 0x5.8bb34a531ea9p-4 : inexact-ok
+= log1p downward intel96 0x6.a0cf4p-4 : 0x5.8bb34a531ea8cddp-4 : inexact-ok
+= log1p tonearest intel96 0x6.a0cf4p-4 : 0x5.8bb34a531ea8cddp-4 : inexact-ok
+= log1p towardzero intel96 0x6.a0cf4p-4 : 0x5.8bb34a531ea8cddp-4 : inexact-ok
+= log1p upward intel96 0x6.a0cf4p-4 : 0x5.8bb34a531ea8cdd8p-4 : inexact-ok
+= log1p downward m68k96 0x6.a0cf4p-4 : 0x5.8bb34a531ea8cddp-4 : inexact-ok
+= log1p tonearest m68k96 0x6.a0cf4p-4 : 0x5.8bb34a531ea8cddp-4 : inexact-ok
+= log1p towardzero m68k96 0x6.a0cf4p-4 : 0x5.8bb34a531ea8cddp-4 : inexact-ok
+= log1p upward m68k96 0x6.a0cf4p-4 : 0x5.8bb34a531ea8cdd8p-4 : inexact-ok
+= log1p downward binary128 0x6.a0cf4p-4 : 0x5.8bb34a531ea8cdd0163aea3335ccp-4 : inexact-ok
+= log1p tonearest binary128 0x6.a0cf4p-4 : 0x5.8bb34a531ea8cdd0163aea3335dp-4 : inexact-ok
+= log1p towardzero binary128 0x6.a0cf4p-4 : 0x5.8bb34a531ea8cdd0163aea3335ccp-4 : inexact-ok
+= log1p upward binary128 0x6.a0cf4p-4 : 0x5.8bb34a531ea8cdd0163aea3335dp-4 : inexact-ok
+= log1p downward ibm128 0x6.a0cf4p-4 : 0x5.8bb34a531ea8cdd0163aea3334p-4 : inexact-ok
+= log1p tonearest ibm128 0x6.a0cf4p-4 : 0x5.8bb34a531ea8cdd0163aea3336p-4 : inexact-ok
+= log1p towardzero ibm128 0x6.a0cf4p-4 : 0x5.8bb34a531ea8cdd0163aea3334p-4 : inexact-ok
+= log1p upward ibm128 0x6.a0cf4p-4 : 0x5.8bb34a531ea8cdd0163aea3336p-4 : inexact-ok
+= log1p downward binary64 0x6.a0cf42befceap-4 : 0x5.8bb34c4430e0cp-4 : inexact-ok
+= log1p tonearest binary64 0x6.a0cf42befceap-4 : 0x5.8bb34c4430e0cp-4 : inexact-ok
+= log1p towardzero binary64 0x6.a0cf42befceap-4 : 0x5.8bb34c4430e0cp-4 : inexact-ok
+= log1p upward binary64 0x6.a0cf42befceap-4 : 0x5.8bb34c4430e1p-4 : inexact-ok
+= log1p downward intel96 0x6.a0cf42befceap-4 : 0x5.8bb34c4430e0d198p-4 : inexact-ok
+= log1p tonearest intel96 0x6.a0cf42befceap-4 : 0x5.8bb34c4430e0d198p-4 : inexact-ok
+= log1p towardzero intel96 0x6.a0cf42befceap-4 : 0x5.8bb34c4430e0d198p-4 : inexact-ok
+= log1p upward intel96 0x6.a0cf42befceap-4 : 0x5.8bb34c4430e0d1ap-4 : inexact-ok
+= log1p downward m68k96 0x6.a0cf42befceap-4 : 0x5.8bb34c4430e0d198p-4 : inexact-ok
+= log1p tonearest m68k96 0x6.a0cf42befceap-4 : 0x5.8bb34c4430e0d198p-4 : inexact-ok
+= log1p towardzero m68k96 0x6.a0cf42befceap-4 : 0x5.8bb34c4430e0d198p-4 : inexact-ok
+= log1p upward m68k96 0x6.a0cf42befceap-4 : 0x5.8bb34c4430e0d1ap-4 : inexact-ok
+= log1p downward binary128 0x6.a0cf42befceap-4 : 0x5.8bb34c4430e0d19957c075571b6p-4 : inexact-ok
+= log1p tonearest binary128 0x6.a0cf42befceap-4 : 0x5.8bb34c4430e0d19957c075571b6p-4 : inexact-ok
+= log1p towardzero binary128 0x6.a0cf42befceap-4 : 0x5.8bb34c4430e0d19957c075571b6p-4 : inexact-ok
+= log1p upward binary128 0x6.a0cf42befceap-4 : 0x5.8bb34c4430e0d19957c075571b64p-4 : inexact-ok
+= log1p downward ibm128 0x6.a0cf42befceap-4 : 0x5.8bb34c4430e0d19957c075571ap-4 : inexact-ok
+= log1p tonearest ibm128 0x6.a0cf42befceap-4 : 0x5.8bb34c4430e0d19957c075571cp-4 : inexact-ok
+= log1p towardzero ibm128 0x6.a0cf42befceap-4 : 0x5.8bb34c4430e0d19957c075571ap-4 : inexact-ok
+= log1p upward ibm128 0x6.a0cf42befceap-4 : 0x5.8bb34c4430e0d19957c075571cp-4 : inexact-ok
+= log1p downward binary64 0x6.a0cf42befce9cp-4 : 0x5.8bb34c4430e08p-4 : inexact-ok
+= log1p tonearest binary64 0x6.a0cf42befce9cp-4 : 0x5.8bb34c4430e0cp-4 : inexact-ok
+= log1p towardzero binary64 0x6.a0cf42befce9cp-4 : 0x5.8bb34c4430e08p-4 : inexact-ok
+= log1p upward binary64 0x6.a0cf42befce9cp-4 : 0x5.8bb34c4430e0cp-4 : inexact-ok
+= log1p downward intel96 0x6.a0cf42befce9cp-4 : 0x5.8bb34c4430e0a458p-4 : inexact-ok
+= log1p tonearest intel96 0x6.a0cf42befce9cp-4 : 0x5.8bb34c4430e0a458p-4 : inexact-ok
+= log1p towardzero intel96 0x6.a0cf42befce9cp-4 : 0x5.8bb34c4430e0a458p-4 : inexact-ok
+= log1p upward intel96 0x6.a0cf42befce9cp-4 : 0x5.8bb34c4430e0a46p-4 : inexact-ok
+= log1p downward m68k96 0x6.a0cf42befce9cp-4 : 0x5.8bb34c4430e0a458p-4 : inexact-ok
+= log1p tonearest m68k96 0x6.a0cf42befce9cp-4 : 0x5.8bb34c4430e0a458p-4 : inexact-ok
+= log1p towardzero m68k96 0x6.a0cf42befce9cp-4 : 0x5.8bb34c4430e0a458p-4 : inexact-ok
+= log1p upward m68k96 0x6.a0cf42befce9cp-4 : 0x5.8bb34c4430e0a46p-4 : inexact-ok
+= log1p downward binary128 0x6.a0cf42befce9cp-4 : 0x5.8bb34c4430e0a4587cab2360533p-4 : inexact-ok
+= log1p tonearest binary128 0x6.a0cf42befce9cp-4 : 0x5.8bb34c4430e0a4587cab2360533p-4 : inexact-ok
+= log1p towardzero binary128 0x6.a0cf42befce9cp-4 : 0x5.8bb34c4430e0a4587cab2360533p-4 : inexact-ok
+= log1p upward binary128 0x6.a0cf42befce9cp-4 : 0x5.8bb34c4430e0a4587cab23605334p-4 : inexact-ok
+= log1p downward ibm128 0x6.a0cf42befce9cp-4 : 0x5.8bb34c4430e0a4587cab236052p-4 : inexact-ok
+= log1p tonearest ibm128 0x6.a0cf42befce9cp-4 : 0x5.8bb34c4430e0a4587cab236054p-4 : inexact-ok
+= log1p towardzero ibm128 0x6.a0cf42befce9cp-4 : 0x5.8bb34c4430e0a4587cab236052p-4 : inexact-ok
+= log1p upward ibm128 0x6.a0cf42befce9cp-4 : 0x5.8bb34c4430e0a4587cab236054p-4 : inexact-ok
+= log1p downward intel96 0x6.a0cf42befce9ed48p-4 : 0x5.8bb34c4430e0c458p-4 : inexact-ok
+= log1p tonearest intel96 0x6.a0cf42befce9ed48p-4 : 0x5.8bb34c4430e0c46p-4 : inexact-ok
+= log1p towardzero intel96 0x6.a0cf42befce9ed48p-4 : 0x5.8bb34c4430e0c458p-4 : inexact-ok
+= log1p upward intel96 0x6.a0cf42befce9ed48p-4 : 0x5.8bb34c4430e0c46p-4 : inexact-ok
+= log1p downward m68k96 0x6.a0cf42befce9ed48p-4 : 0x5.8bb34c4430e0c458p-4 : inexact-ok
+= log1p tonearest m68k96 0x6.a0cf42befce9ed48p-4 : 0x5.8bb34c4430e0c46p-4 : inexact-ok
+= log1p towardzero m68k96 0x6.a0cf42befce9ed48p-4 : 0x5.8bb34c4430e0c458p-4 : inexact-ok
+= log1p upward m68k96 0x6.a0cf42befce9ed48p-4 : 0x5.8bb34c4430e0c46p-4 : inexact-ok
+= log1p downward binary128 0x6.a0cf42befce9ed48p-4 : 0x5.8bb34c4430e0c45cffac98fe0dap-4 : inexact-ok
+= log1p tonearest binary128 0x6.a0cf42befce9ed48p-4 : 0x5.8bb34c4430e0c45cffac98fe0dap-4 : inexact-ok
+= log1p towardzero binary128 0x6.a0cf42befce9ed48p-4 : 0x5.8bb34c4430e0c45cffac98fe0dap-4 : inexact-ok
+= log1p upward binary128 0x6.a0cf42befce9ed48p-4 : 0x5.8bb34c4430e0c45cffac98fe0da4p-4 : inexact-ok
+= log1p downward ibm128 0x6.a0cf42befce9ed48p-4 : 0x5.8bb34c4430e0c45cffac98fe0cp-4 : inexact-ok
+= log1p tonearest ibm128 0x6.a0cf42befce9ed48p-4 : 0x5.8bb34c4430e0c45cffac98fe0ep-4 : inexact-ok
+= log1p towardzero ibm128 0x6.a0cf42befce9ed48p-4 : 0x5.8bb34c4430e0c45cffac98fe0cp-4 : inexact-ok
+= log1p upward ibm128 0x6.a0cf42befce9ed48p-4 : 0x5.8bb34c4430e0c45cffac98fe0ep-4 : inexact-ok
+= log1p downward intel96 0x6.a0cf42befce9ed4p-4 : 0x5.8bb34c4430e0c45p-4 : inexact-ok
+= log1p tonearest intel96 0x6.a0cf42befce9ed4p-4 : 0x5.8bb34c4430e0c458p-4 : inexact-ok
+= log1p towardzero intel96 0x6.a0cf42befce9ed4p-4 : 0x5.8bb34c4430e0c45p-4 : inexact-ok
+= log1p upward intel96 0x6.a0cf42befce9ed4p-4 : 0x5.8bb34c4430e0c458p-4 : inexact-ok
+= log1p downward m68k96 0x6.a0cf42befce9ed4p-4 : 0x5.8bb34c4430e0c45p-4 : inexact-ok
+= log1p tonearest m68k96 0x6.a0cf42befce9ed4p-4 : 0x5.8bb34c4430e0c458p-4 : inexact-ok
+= log1p towardzero m68k96 0x6.a0cf42befce9ed4p-4 : 0x5.8bb34c4430e0c45p-4 : inexact-ok
+= log1p upward m68k96 0x6.a0cf42befce9ed4p-4 : 0x5.8bb34c4430e0c458p-4 : inexact-ok
+= log1p downward binary128 0x6.a0cf42befce9ed4p-4 : 0x5.8bb34c4430e0c45757913653cec4p-4 : inexact-ok
+= log1p tonearest binary128 0x6.a0cf42befce9ed4p-4 : 0x5.8bb34c4430e0c45757913653cec8p-4 : inexact-ok
+= log1p towardzero binary128 0x6.a0cf42befce9ed4p-4 : 0x5.8bb34c4430e0c45757913653cec4p-4 : inexact-ok
+= log1p upward binary128 0x6.a0cf42befce9ed4p-4 : 0x5.8bb34c4430e0c45757913653cec8p-4 : inexact-ok
+= log1p downward ibm128 0x6.a0cf42befce9ed4p-4 : 0x5.8bb34c4430e0c45757913653cep-4 : inexact-ok
+= log1p tonearest ibm128 0x6.a0cf42befce9ed4p-4 : 0x5.8bb34c4430e0c45757913653cep-4 : inexact-ok
+= log1p towardzero ibm128 0x6.a0cf42befce9ed4p-4 : 0x5.8bb34c4430e0c45757913653cep-4 : inexact-ok
+= log1p upward ibm128 0x6.a0cf42befce9ed4p-4 : 0x5.8bb34c4430e0c45757913653dp-4 : inexact-ok
+= log1p downward binary128 0x6.a0cf42befce9ed4085ef59254b48p-4 : 0x5.8bb34c4430e0c457b6453ad6d01cp-4 : inexact-ok
+= log1p tonearest binary128 0x6.a0cf42befce9ed4085ef59254b48p-4 : 0x5.8bb34c4430e0c457b6453ad6d01cp-4 : inexact-ok
+= log1p towardzero binary128 0x6.a0cf42befce9ed4085ef59254b48p-4 : 0x5.8bb34c4430e0c457b6453ad6d01cp-4 : inexact-ok
+= log1p upward binary128 0x6.a0cf42befce9ed4085ef59254b48p-4 : 0x5.8bb34c4430e0c457b6453ad6d02p-4 : inexact-ok
+= log1p downward binary128 0x6.a0cf42befce9ed4085ef59254cp-4 : 0x5.8bb34c4430e0c457b6453ad6d09cp-4 : inexact-ok
+= log1p tonearest binary128 0x6.a0cf42befce9ed4085ef59254cp-4 : 0x5.8bb34c4430e0c457b6453ad6d0ap-4 : inexact-ok
+= log1p towardzero binary128 0x6.a0cf42befce9ed4085ef59254cp-4 : 0x5.8bb34c4430e0c457b6453ad6d09cp-4 : inexact-ok
+= log1p upward binary128 0x6.a0cf42befce9ed4085ef59254cp-4 : 0x5.8bb34c4430e0c457b6453ad6d0ap-4 : inexact-ok
+= log1p downward ibm128 0x6.a0cf42befce9ed4085ef59254cp-4 : 0x5.8bb34c4430e0c457b6453ad6dp-4 : inexact-ok
+= log1p tonearest ibm128 0x6.a0cf42befce9ed4085ef59254cp-4 : 0x5.8bb34c4430e0c457b6453ad6dp-4 : inexact-ok
+= log1p towardzero ibm128 0x6.a0cf42befce9ed4085ef59254cp-4 : 0x5.8bb34c4430e0c457b6453ad6dp-4 : inexact-ok
+= log1p upward ibm128 0x6.a0cf42befce9ed4085ef59254cp-4 : 0x5.8bb34c4430e0c457b6453ad6d2p-4 : inexact-ok
+= log1p downward binary128 0x6.a0cf42befce9ed4085ef59254ap-4 : 0x5.8bb34c4430e0c457b6453ad6cf34p-4 : inexact-ok
+= log1p tonearest binary128 0x6.a0cf42befce9ed4085ef59254ap-4 : 0x5.8bb34c4430e0c457b6453ad6cf34p-4 : inexact-ok
+= log1p towardzero binary128 0x6.a0cf42befce9ed4085ef59254ap-4 : 0x5.8bb34c4430e0c457b6453ad6cf34p-4 : inexact-ok
+= log1p upward binary128 0x6.a0cf42befce9ed4085ef59254ap-4 : 0x5.8bb34c4430e0c457b6453ad6cf38p-4 : inexact-ok
+= log1p downward ibm128 0x6.a0cf42befce9ed4085ef59254ap-4 : 0x5.8bb34c4430e0c457b6453ad6cep-4 : inexact-ok
+= log1p tonearest ibm128 0x6.a0cf42befce9ed4085ef59254ap-4 : 0x5.8bb34c4430e0c457b6453ad6dp-4 : inexact-ok
+= log1p towardzero ibm128 0x6.a0cf42befce9ed4085ef59254ap-4 : 0x5.8bb34c4430e0c457b6453ad6cep-4 : inexact-ok
+= log1p upward ibm128 0x6.a0cf42befce9ed4085ef59254ap-4 : 0x5.8bb34c4430e0c457b6453ad6dp-4 : inexact-ok
 log1p max
 = log1p downward binary32 0xf.fffffp+124 : 0x5.8b90b8p+4 : inexact-ok
 = log1p tonearest binary32 0xf.fffffp+124 : 0x5.8b90cp+4 : inexact-ok
diff --git a/math/auto-libm-test-out-log2 b/math/auto-libm-test-out-log2
index 16ca996810..c3deb01c49 100644
--- a/math/auto-libm-test-out-log2
+++ b/math/auto-libm-test-out-log2
@@ -1728,6 +1728,147 @@ log2 0xb.56f63c18e93eecdp-4
 = log2 tonearest ibm128 0xb.56f63c18e93eecdp-4 : -0x7.f27151a15d70f86944dd429072p-4 : inexact-ok
 = log2 towardzero ibm128 0xb.56f63c18e93eecdp-4 : -0x7.f27151a15d70f86944dd429072p-4 : inexact-ok
 = log2 upward ibm128 0xb.56f63c18e93eecdp-4 : -0x7.f27151a15d70f86944dd429072p-4 : inexact-ok
+log2 0xb.54170d5cfa8fd72a47d6bda19068p-4
+= log2 downward binary32 0xb.54171p-4 : -0x7.f84a98p-4 : inexact-ok
+= log2 tonearest binary32 0xb.54171p-4 : -0x7.f84a98p-4 : inexact-ok
+= log2 towardzero binary32 0xb.54171p-4 : -0x7.f84a9p-4 : inexact-ok
+= log2 upward binary32 0xb.54171p-4 : -0x7.f84a9p-4 : inexact-ok
+= log2 downward binary64 0xb.54171p-4 : -0x7.f84a9424a2fbcp-4 : inexact-ok
+= log2 tonearest binary64 0xb.54171p-4 : -0x7.f84a9424a2fbcp-4 : inexact-ok
+= log2 towardzero binary64 0xb.54171p-4 : -0x7.f84a9424a2fb8p-4 : inexact-ok
+= log2 upward binary64 0xb.54171p-4 : -0x7.f84a9424a2fb8p-4 : inexact-ok
+= log2 downward intel96 0xb.54171p-4 : -0x7.f84a9424a2fba588p-4 : inexact-ok
+= log2 tonearest intel96 0xb.54171p-4 : -0x7.f84a9424a2fba58p-4 : inexact-ok
+= log2 towardzero intel96 0xb.54171p-4 : -0x7.f84a9424a2fba58p-4 : inexact-ok
+= log2 upward intel96 0xb.54171p-4 : -0x7.f84a9424a2fba58p-4 : inexact-ok
+= log2 downward m68k96 0xb.54171p-4 : -0x7.f84a9424a2fba588p-4 : inexact-ok
+= log2 tonearest m68k96 0xb.54171p-4 : -0x7.f84a9424a2fba58p-4 : inexact-ok
+= log2 towardzero m68k96 0xb.54171p-4 : -0x7.f84a9424a2fba58p-4 : inexact-ok
+= log2 upward m68k96 0xb.54171p-4 : -0x7.f84a9424a2fba58p-4 : inexact-ok
+= log2 downward binary128 0xb.54171p-4 : -0x7.f84a9424a2fba583bbaf3ba7a544p-4 : inexact-ok
+= log2 tonearest binary128 0xb.54171p-4 : -0x7.f84a9424a2fba583bbaf3ba7a54p-4 : inexact-ok
+= log2 towardzero binary128 0xb.54171p-4 : -0x7.f84a9424a2fba583bbaf3ba7a54p-4 : inexact-ok
+= log2 upward binary128 0xb.54171p-4 : -0x7.f84a9424a2fba583bbaf3ba7a54p-4 : inexact-ok
+= log2 downward ibm128 0xb.54171p-4 : -0x7.f84a9424a2fba583bbaf3ba7a6p-4 : inexact-ok
+= log2 tonearest ibm128 0xb.54171p-4 : -0x7.f84a9424a2fba583bbaf3ba7a6p-4 : inexact-ok
+= log2 towardzero ibm128 0xb.54171p-4 : -0x7.f84a9424a2fba583bbaf3ba7a4p-4 : inexact-ok
+= log2 upward ibm128 0xb.54171p-4 : -0x7.f84a9424a2fba583bbaf3ba7a4p-4 : inexact-ok
+= log2 downward binary32 0xb.5417p-4 : -0x7.f84ab8p-4 : inexact-ok
+= log2 tonearest binary32 0xb.5417p-4 : -0x7.f84ab8p-4 : inexact-ok
+= log2 towardzero binary32 0xb.5417p-4 : -0x7.f84abp-4 : inexact-ok
+= log2 upward binary32 0xb.5417p-4 : -0x7.f84abp-4 : inexact-ok
+= log2 downward binary64 0xb.5417p-4 : -0x7.f84ab4beb988cp-4 : inexact-ok
+= log2 tonearest binary64 0xb.5417p-4 : -0x7.f84ab4beb988cp-4 : inexact-ok
+= log2 towardzero binary64 0xb.5417p-4 : -0x7.f84ab4beb9888p-4 : inexact-ok
+= log2 upward binary64 0xb.5417p-4 : -0x7.f84ab4beb9888p-4 : inexact-ok
+= log2 downward intel96 0xb.5417p-4 : -0x7.f84ab4beb988b36p-4 : inexact-ok
+= log2 tonearest intel96 0xb.5417p-4 : -0x7.f84ab4beb988b358p-4 : inexact-ok
+= log2 towardzero intel96 0xb.5417p-4 : -0x7.f84ab4beb988b358p-4 : inexact-ok
+= log2 upward intel96 0xb.5417p-4 : -0x7.f84ab4beb988b358p-4 : inexact-ok
+= log2 downward m68k96 0xb.5417p-4 : -0x7.f84ab4beb988b36p-4 : inexact-ok
+= log2 tonearest m68k96 0xb.5417p-4 : -0x7.f84ab4beb988b358p-4 : inexact-ok
+= log2 towardzero m68k96 0xb.5417p-4 : -0x7.f84ab4beb988b358p-4 : inexact-ok
+= log2 upward m68k96 0xb.5417p-4 : -0x7.f84ab4beb988b358p-4 : inexact-ok
+= log2 downward binary128 0xb.5417p-4 : -0x7.f84ab4beb988b35b6eb65af72e5cp-4 : inexact-ok
+= log2 tonearest binary128 0xb.5417p-4 : -0x7.f84ab4beb988b35b6eb65af72e58p-4 : inexact-ok
+= log2 towardzero binary128 0xb.5417p-4 : -0x7.f84ab4beb988b35b6eb65af72e58p-4 : inexact-ok
+= log2 upward binary128 0xb.5417p-4 : -0x7.f84ab4beb988b35b6eb65af72e58p-4 : inexact-ok
+= log2 downward ibm128 0xb.5417p-4 : -0x7.f84ab4beb988b35b6eb65af73p-4 : inexact-ok
+= log2 tonearest ibm128 0xb.5417p-4 : -0x7.f84ab4beb988b35b6eb65af72ep-4 : inexact-ok
+= log2 towardzero ibm128 0xb.5417p-4 : -0x7.f84ab4beb988b35b6eb65af72ep-4 : inexact-ok
+= log2 upward ibm128 0xb.5417p-4 : -0x7.f84ab4beb988b35b6eb65af72ep-4 : inexact-ok
+= log2 downward binary64 0xb.54170d5cfa9p-4 : -0x7.f84a998412a44p-4 : inexact-ok
+= log2 tonearest binary64 0xb.54170d5cfa9p-4 : -0x7.f84a998412a44p-4 : inexact-ok
+= log2 towardzero binary64 0xb.54170d5cfa9p-4 : -0x7.f84a998412a4p-4 : inexact-ok
+= log2 upward binary64 0xb.54170d5cfa9p-4 : -0x7.f84a998412a4p-4 : inexact-ok
+= log2 downward intel96 0xb.54170d5cfa9p-4 : -0x7.f84a998412a436bp-4 : inexact-ok
+= log2 tonearest intel96 0xb.54170d5cfa9p-4 : -0x7.f84a998412a436a8p-4 : inexact-ok
+= log2 towardzero intel96 0xb.54170d5cfa9p-4 : -0x7.f84a998412a436a8p-4 : inexact-ok
+= log2 upward intel96 0xb.54170d5cfa9p-4 : -0x7.f84a998412a436a8p-4 : inexact-ok
+= log2 downward m68k96 0xb.54170d5cfa9p-4 : -0x7.f84a998412a436bp-4 : inexact-ok
+= log2 tonearest m68k96 0xb.54170d5cfa9p-4 : -0x7.f84a998412a436a8p-4 : inexact-ok
+= log2 towardzero m68k96 0xb.54170d5cfa9p-4 : -0x7.f84a998412a436a8p-4 : inexact-ok
+= log2 upward m68k96 0xb.54170d5cfa9p-4 : -0x7.f84a998412a436a8p-4 : inexact-ok
+= log2 downward binary128 0xb.54170d5cfa9p-4 : -0x7.f84a998412a436a8365c4397d8fcp-4 : inexact-ok
+= log2 tonearest binary128 0xb.54170d5cfa9p-4 : -0x7.f84a998412a436a8365c4397d8f8p-4 : inexact-ok
+= log2 towardzero binary128 0xb.54170d5cfa9p-4 : -0x7.f84a998412a436a8365c4397d8f8p-4 : inexact-ok
+= log2 upward binary128 0xb.54170d5cfa9p-4 : -0x7.f84a998412a436a8365c4397d8f8p-4 : inexact-ok
+= log2 downward ibm128 0xb.54170d5cfa9p-4 : -0x7.f84a998412a436a8365c4397dap-4 : inexact-ok
+= log2 tonearest ibm128 0xb.54170d5cfa9p-4 : -0x7.f84a998412a436a8365c4397d8p-4 : inexact-ok
+= log2 towardzero ibm128 0xb.54170d5cfa9p-4 : -0x7.f84a998412a436a8365c4397d8p-4 : inexact-ok
+= log2 upward ibm128 0xb.54170d5cfa9p-4 : -0x7.f84a998412a436a8365c4397d8p-4 : inexact-ok
+= log2 downward binary64 0xb.54170d5cfa8f8p-4 : -0x7.f84a998412a54p-4 : inexact-ok
+= log2 tonearest binary64 0xb.54170d5cfa8f8p-4 : -0x7.f84a998412a54p-4 : inexact-ok
+= log2 towardzero binary64 0xb.54170d5cfa8f8p-4 : -0x7.f84a998412a5p-4 : inexact-ok
+= log2 upward binary64 0xb.54170d5cfa8f8p-4 : -0x7.f84a998412a5p-4 : inexact-ok
+= log2 downward intel96 0xb.54170d5cfa8f8p-4 : -0x7.f84a998412a53b8p-4 : inexact-ok
+= log2 tonearest intel96 0xb.54170d5cfa8f8p-4 : -0x7.f84a998412a53b78p-4 : inexact-ok
+= log2 towardzero intel96 0xb.54170d5cfa8f8p-4 : -0x7.f84a998412a53b78p-4 : inexact-ok
+= log2 upward intel96 0xb.54170d5cfa8f8p-4 : -0x7.f84a998412a53b78p-4 : inexact-ok
+= log2 downward m68k96 0xb.54170d5cfa8f8p-4 : -0x7.f84a998412a53b8p-4 : inexact-ok
+= log2 tonearest m68k96 0xb.54170d5cfa8f8p-4 : -0x7.f84a998412a53b78p-4 : inexact-ok
+= log2 towardzero m68k96 0xb.54170d5cfa8f8p-4 : -0x7.f84a998412a53b78p-4 : inexact-ok
+= log2 upward m68k96 0xb.54170d5cfa8f8p-4 : -0x7.f84a998412a53b78p-4 : inexact-ok
+= log2 downward binary128 0xb.54170d5cfa8f8p-4 : -0x7.f84a998412a53b78ea4938468ep-4 : inexact-ok
+= log2 tonearest binary128 0xb.54170d5cfa8f8p-4 : -0x7.f84a998412a53b78ea4938468dfcp-4 : inexact-ok
+= log2 towardzero binary128 0xb.54170d5cfa8f8p-4 : -0x7.f84a998412a53b78ea4938468dfcp-4 : inexact-ok
+= log2 upward binary128 0xb.54170d5cfa8f8p-4 : -0x7.f84a998412a53b78ea4938468dfcp-4 : inexact-ok
+= log2 downward ibm128 0xb.54170d5cfa8f8p-4 : -0x7.f84a998412a53b78ea4938468ep-4 : inexact-ok
+= log2 tonearest ibm128 0xb.54170d5cfa8f8p-4 : -0x7.f84a998412a53b78ea4938468ep-4 : inexact-ok
+= log2 towardzero ibm128 0xb.54170d5cfa8f8p-4 : -0x7.f84a998412a53b78ea4938468cp-4 : inexact-ok
+= log2 upward ibm128 0xb.54170d5cfa8f8p-4 : -0x7.f84a998412a53b78ea4938468cp-4 : inexact-ok
+= log2 downward intel96 0xb.54170d5cfa8fd73p-4 : -0x7.f84a998412a489d8p-4 : inexact-ok
+= log2 tonearest intel96 0xb.54170d5cfa8fd73p-4 : -0x7.f84a998412a489dp-4 : inexact-ok
+= log2 towardzero intel96 0xb.54170d5cfa8fd73p-4 : -0x7.f84a998412a489dp-4 : inexact-ok
+= log2 upward intel96 0xb.54170d5cfa8fd73p-4 : -0x7.f84a998412a489dp-4 : inexact-ok
+= log2 downward m68k96 0xb.54170d5cfa8fd73p-4 : -0x7.f84a998412a489d8p-4 : inexact-ok
+= log2 tonearest m68k96 0xb.54170d5cfa8fd73p-4 : -0x7.f84a998412a489dp-4 : inexact-ok
+= log2 towardzero m68k96 0xb.54170d5cfa8fd73p-4 : -0x7.f84a998412a489dp-4 : inexact-ok
+= log2 upward m68k96 0xb.54170d5cfa8fd73p-4 : -0x7.f84a998412a489dp-4 : inexact-ok
+= log2 downward binary128 0xb.54170d5cfa8fd73p-4 : -0x7.f84a998412a489d141bab11c0c34p-4 : inexact-ok
+= log2 tonearest binary128 0xb.54170d5cfa8fd73p-4 : -0x7.f84a998412a489d141bab11c0c3p-4 : inexact-ok
+= log2 towardzero binary128 0xb.54170d5cfa8fd73p-4 : -0x7.f84a998412a489d141bab11c0c3p-4 : inexact-ok
+= log2 upward binary128 0xb.54170d5cfa8fd73p-4 : -0x7.f84a998412a489d141bab11c0c3p-4 : inexact-ok
+= log2 downward ibm128 0xb.54170d5cfa8fd73p-4 : -0x7.f84a998412a489d141bab11c0ep-4 : inexact-ok
+= log2 tonearest ibm128 0xb.54170d5cfa8fd73p-4 : -0x7.f84a998412a489d141bab11c0cp-4 : inexact-ok
+= log2 towardzero ibm128 0xb.54170d5cfa8fd73p-4 : -0x7.f84a998412a489d141bab11c0cp-4 : inexact-ok
+= log2 upward ibm128 0xb.54170d5cfa8fd73p-4 : -0x7.f84a998412a489d141bab11c0cp-4 : inexact-ok
+= log2 downward intel96 0xb.54170d5cfa8fd72p-4 : -0x7.f84a998412a489f8p-4 : inexact-ok
+= log2 tonearest intel96 0xb.54170d5cfa8fd72p-4 : -0x7.f84a998412a489fp-4 : inexact-ok
+= log2 towardzero intel96 0xb.54170d5cfa8fd72p-4 : -0x7.f84a998412a489fp-4 : inexact-ok
+= log2 upward intel96 0xb.54170d5cfa8fd72p-4 : -0x7.f84a998412a489fp-4 : inexact-ok
+= log2 downward m68k96 0xb.54170d5cfa8fd72p-4 : -0x7.f84a998412a489f8p-4 : inexact-ok
+= log2 tonearest m68k96 0xb.54170d5cfa8fd72p-4 : -0x7.f84a998412a489fp-4 : inexact-ok
+= log2 towardzero m68k96 0xb.54170d5cfa8fd72p-4 : -0x7.f84a998412a489fp-4 : inexact-ok
+= log2 upward m68k96 0xb.54170d5cfa8fd72p-4 : -0x7.f84a998412a489fp-4 : inexact-ok
+= log2 downward binary128 0xb.54170d5cfa8fd72p-4 : -0x7.f84a998412a489f1dbd12ebaa208p-4 : inexact-ok
+= log2 tonearest binary128 0xb.54170d5cfa8fd72p-4 : -0x7.f84a998412a489f1dbd12ebaa208p-4 : inexact-ok
+= log2 towardzero binary128 0xb.54170d5cfa8fd72p-4 : -0x7.f84a998412a489f1dbd12ebaa204p-4 : inexact-ok
+= log2 upward binary128 0xb.54170d5cfa8fd72p-4 : -0x7.f84a998412a489f1dbd12ebaa204p-4 : inexact-ok
+= log2 downward ibm128 0xb.54170d5cfa8fd72p-4 : -0x7.f84a998412a489f1dbd12ebaa4p-4 : inexact-ok
+= log2 tonearest ibm128 0xb.54170d5cfa8fd72p-4 : -0x7.f84a998412a489f1dbd12ebaa2p-4 : inexact-ok
+= log2 towardzero ibm128 0xb.54170d5cfa8fd72p-4 : -0x7.f84a998412a489f1dbd12ebaa2p-4 : inexact-ok
+= log2 upward ibm128 0xb.54170d5cfa8fd72p-4 : -0x7.f84a998412a489f1dbd12ebaa2p-4 : inexact-ok
+= log2 downward binary128 0xb.54170d5cfa8fd72a47d6bda19068p-4 : -0x7.f84a998412a489dce921cd17e614p-4 : inexact-ok
+= log2 tonearest binary128 0xb.54170d5cfa8fd72a47d6bda19068p-4 : -0x7.f84a998412a489dce921cd17e614p-4 : inexact-ok
+= log2 towardzero binary128 0xb.54170d5cfa8fd72a47d6bda19068p-4 : -0x7.f84a998412a489dce921cd17e61p-4 : inexact-ok
+= log2 upward binary128 0xb.54170d5cfa8fd72a47d6bda19068p-4 : -0x7.f84a998412a489dce921cd17e61p-4 : inexact-ok
+= log2 downward binary128 0xb.54170d5cfa8fd72a47d6bda194p-4 : -0x7.f84a998412a489dce921cd17dec4p-4 : inexact-ok
+= log2 tonearest binary128 0xb.54170d5cfa8fd72a47d6bda194p-4 : -0x7.f84a998412a489dce921cd17decp-4 : inexact-ok
+= log2 towardzero binary128 0xb.54170d5cfa8fd72a47d6bda194p-4 : -0x7.f84a998412a489dce921cd17decp-4 : inexact-ok
+= log2 upward binary128 0xb.54170d5cfa8fd72a47d6bda194p-4 : -0x7.f84a998412a489dce921cd17decp-4 : inexact-ok
+= log2 downward ibm128 0xb.54170d5cfa8fd72a47d6bda194p-4 : -0x7.f84a998412a489dce921cd17ep-4 : inexact-ok
+= log2 tonearest ibm128 0xb.54170d5cfa8fd72a47d6bda194p-4 : -0x7.f84a998412a489dce921cd17dep-4 : inexact-ok
+= log2 towardzero ibm128 0xb.54170d5cfa8fd72a47d6bda194p-4 : -0x7.f84a998412a489dce921cd17dep-4 : inexact-ok
+= log2 upward ibm128 0xb.54170d5cfa8fd72a47d6bda194p-4 : -0x7.f84a998412a489dce921cd17dep-4 : inexact-ok
+= log2 downward binary128 0xb.54170d5cfa8fd72a47d6bda19p-4 : -0x7.f84a998412a489dce921cd17e6e8p-4 : inexact-ok
+= log2 tonearest binary128 0xb.54170d5cfa8fd72a47d6bda19p-4 : -0x7.f84a998412a489dce921cd17e6e8p-4 : inexact-ok
+= log2 towardzero binary128 0xb.54170d5cfa8fd72a47d6bda19p-4 : -0x7.f84a998412a489dce921cd17e6e4p-4 : inexact-ok
+= log2 upward binary128 0xb.54170d5cfa8fd72a47d6bda19p-4 : -0x7.f84a998412a489dce921cd17e6e4p-4 : inexact-ok
+= log2 downward ibm128 0xb.54170d5cfa8fd72a47d6bda19p-4 : -0x7.f84a998412a489dce921cd17e8p-4 : inexact-ok
+= log2 tonearest ibm128 0xb.54170d5cfa8fd72a47d6bda19p-4 : -0x7.f84a998412a489dce921cd17e6p-4 : inexact-ok
+= log2 towardzero ibm128 0xb.54170d5cfa8fd72a47d6bda19p-4 : -0x7.f84a998412a489dce921cd17e6p-4 : inexact-ok
+= log2 upward ibm128 0xb.54170d5cfa8fd72a47d6bda19p-4 : -0x7.f84a998412a489dce921cd17e6p-4 : inexact-ok
 log2 min
 = log2 downward binary32 0x4p-128 : -0x7.ep+4 : inexact-ok
 = log2 tonearest binary32 0x4p-128 : -0x7.ep+4 : inexact-ok
diff --git a/math/auto-libm-test-out-sin b/math/auto-libm-test-out-sin
index be9afb2bdb..f1d21b179c 100644
--- a/math/auto-libm-test-out-sin
+++ b/math/auto-libm-test-out-sin
@@ -3143,6 +3143,252 @@ sin 0x1.d12ed2p-12
 = sin tonearest ibm128 0x1.d12ed2p-12 : 0x1.d12ed0fffffdfe0f0008c8b282p-12 : inexact-ok
 = sin towardzero ibm128 0x1.d12ed2p-12 : 0x1.d12ed0fffffdfe0f0008c8b282p-12 : inexact-ok
 = sin upward ibm128 0x1.d12ed2p-12 : 0x1.d12ed0fffffdfe0f0008c8b2828p-12 : inexact-ok
+sin -0x6.e2368c006c018228p+16
+= sin downward binary32 -0x6.e23688p+16 : -0x1.bf207ep-4 : inexact-ok
+= sin tonearest binary32 -0x6.e23688p+16 : -0x1.bf207cp-4 : inexact-ok
+= sin towardzero binary32 -0x6.e23688p+16 : -0x1.bf207cp-4 : inexact-ok
+= sin upward binary32 -0x6.e23688p+16 : -0x1.bf207cp-4 : inexact-ok
+= sin downward binary64 -0x6.e23688p+16 : -0x1.bf207c900d878p-4 : inexact-ok
+= sin tonearest binary64 -0x6.e23688p+16 : -0x1.bf207c900d878p-4 : inexact-ok
+= sin towardzero binary64 -0x6.e23688p+16 : -0x1.bf207c900d877p-4 : inexact-ok
+= sin upward binary64 -0x6.e23688p+16 : -0x1.bf207c900d877p-4 : inexact-ok
+= sin downward intel96 -0x6.e23688p+16 : -0x1.bf207c900d877cb8p-4 : inexact-ok
+= sin tonearest intel96 -0x6.e23688p+16 : -0x1.bf207c900d877cb8p-4 : inexact-ok
+= sin towardzero intel96 -0x6.e23688p+16 : -0x1.bf207c900d877cb6p-4 : inexact-ok
+= sin upward intel96 -0x6.e23688p+16 : -0x1.bf207c900d877cb6p-4 : inexact-ok
+= sin downward m68k96 -0x6.e23688p+16 : -0x1.bf207c900d877cb8p-4 : inexact-ok
+= sin tonearest m68k96 -0x6.e23688p+16 : -0x1.bf207c900d877cb8p-4 : inexact-ok
+= sin towardzero m68k96 -0x6.e23688p+16 : -0x1.bf207c900d877cb6p-4 : inexact-ok
+= sin upward m68k96 -0x6.e23688p+16 : -0x1.bf207c900d877cb6p-4 : inexact-ok
+= sin downward binary128 -0x6.e23688p+16 : -0x1.bf207c900d877cb73f555829e3f1p-4 : inexact-ok
+= sin tonearest binary128 -0x6.e23688p+16 : -0x1.bf207c900d877cb73f555829e3f1p-4 : inexact-ok
+= sin towardzero binary128 -0x6.e23688p+16 : -0x1.bf207c900d877cb73f555829e3fp-4 : inexact-ok
+= sin upward binary128 -0x6.e23688p+16 : -0x1.bf207c900d877cb73f555829e3fp-4 : inexact-ok
+= sin downward ibm128 -0x6.e23688p+16 : -0x1.bf207c900d877cb73f555829e4p-4 : inexact-ok
+= sin tonearest ibm128 -0x6.e23688p+16 : -0x1.bf207c900d877cb73f555829e4p-4 : inexact-ok
+= sin towardzero ibm128 -0x6.e23688p+16 : -0x1.bf207c900d877cb73f555829e38p-4 : inexact-ok
+= sin upward ibm128 -0x6.e23688p+16 : -0x1.bf207c900d877cb73f555829e38p-4 : inexact-ok
+= sin downward binary32 -0x6.e2369p+16 : -0x2.3e1f7cp-4 : inexact-ok
+= sin tonearest binary32 -0x6.e2369p+16 : -0x2.3e1f7cp-4 : inexact-ok
+= sin towardzero binary32 -0x6.e2369p+16 : -0x2.3e1f78p-4 : inexact-ok
+= sin upward binary32 -0x6.e2369p+16 : -0x2.3e1f78p-4 : inexact-ok
+= sin downward binary64 -0x6.e2369p+16 : -0x2.3e1f7a26f5944p-4 : inexact-ok
+= sin tonearest binary64 -0x6.e2369p+16 : -0x2.3e1f7a26f5944p-4 : inexact-ok
+= sin towardzero binary64 -0x6.e2369p+16 : -0x2.3e1f7a26f5942p-4 : inexact-ok
+= sin upward binary64 -0x6.e2369p+16 : -0x2.3e1f7a26f5942p-4 : inexact-ok
+= sin downward intel96 -0x6.e2369p+16 : -0x2.3e1f7a26f594337p-4 : inexact-ok
+= sin tonearest intel96 -0x6.e2369p+16 : -0x2.3e1f7a26f594337p-4 : inexact-ok
+= sin towardzero intel96 -0x6.e2369p+16 : -0x2.3e1f7a26f594336cp-4 : inexact-ok
+= sin upward intel96 -0x6.e2369p+16 : -0x2.3e1f7a26f594336cp-4 : inexact-ok
+= sin downward m68k96 -0x6.e2369p+16 : -0x2.3e1f7a26f594337p-4 : inexact-ok
+= sin tonearest m68k96 -0x6.e2369p+16 : -0x2.3e1f7a26f594337p-4 : inexact-ok
+= sin towardzero m68k96 -0x6.e2369p+16 : -0x2.3e1f7a26f594336cp-4 : inexact-ok
+= sin upward m68k96 -0x6.e2369p+16 : -0x2.3e1f7a26f594336cp-4 : inexact-ok
+= sin downward binary128 -0x6.e2369p+16 : -0x2.3e1f7a26f594336f9e583b26bbbep-4 : inexact-ok
+= sin tonearest binary128 -0x6.e2369p+16 : -0x2.3e1f7a26f594336f9e583b26bbbep-4 : inexact-ok
+= sin towardzero binary128 -0x6.e2369p+16 : -0x2.3e1f7a26f594336f9e583b26bbbcp-4 : inexact-ok
+= sin upward binary128 -0x6.e2369p+16 : -0x2.3e1f7a26f594336f9e583b26bbbcp-4 : inexact-ok
+= sin downward ibm128 -0x6.e2369p+16 : -0x2.3e1f7a26f594336f9e583b26bcp-4 : inexact-ok
+= sin tonearest ibm128 -0x6.e2369p+16 : -0x2.3e1f7a26f594336f9e583b26bcp-4 : inexact-ok
+= sin towardzero ibm128 -0x6.e2369p+16 : -0x2.3e1f7a26f594336f9e583b26bbp-4 : inexact-ok
+= sin upward ibm128 -0x6.e2369p+16 : -0x2.3e1f7a26f594336f9e583b26bbp-4 : inexact-ok
+= sin downward binary64 -0x6.e2368c006c018p+16 : -0x1.feb6a3619e804p-4 : inexact-ok
+= sin tonearest binary64 -0x6.e2368c006c018p+16 : -0x1.feb6a3619e804p-4 : inexact-ok
+= sin towardzero binary64 -0x6.e2368c006c018p+16 : -0x1.feb6a3619e803p-4 : inexact-ok
+= sin upward binary64 -0x6.e2368c006c018p+16 : -0x1.feb6a3619e803p-4 : inexact-ok
+= sin downward intel96 -0x6.e2368c006c018p+16 : -0x1.feb6a3619e803c4ap-4 : inexact-ok
+= sin tonearest intel96 -0x6.e2368c006c018p+16 : -0x1.feb6a3619e803c4ap-4 : inexact-ok
+= sin towardzero intel96 -0x6.e2368c006c018p+16 : -0x1.feb6a3619e803c48p-4 : inexact-ok
+= sin upward intel96 -0x6.e2368c006c018p+16 : -0x1.feb6a3619e803c48p-4 : inexact-ok
+= sin downward m68k96 -0x6.e2368c006c018p+16 : -0x1.feb6a3619e803c4ap-4 : inexact-ok
+= sin tonearest m68k96 -0x6.e2368c006c018p+16 : -0x1.feb6a3619e803c4ap-4 : inexact-ok
+= sin towardzero m68k96 -0x6.e2368c006c018p+16 : -0x1.feb6a3619e803c48p-4 : inexact-ok
+= sin upward m68k96 -0x6.e2368c006c018p+16 : -0x1.feb6a3619e803c48p-4 : inexact-ok
+= sin downward binary128 -0x6.e2368c006c018p+16 : -0x1.feb6a3619e803c49fb3b778718d2p-4 : inexact-ok
+= sin tonearest binary128 -0x6.e2368c006c018p+16 : -0x1.feb6a3619e803c49fb3b778718d1p-4 : inexact-ok
+= sin towardzero binary128 -0x6.e2368c006c018p+16 : -0x1.feb6a3619e803c49fb3b778718d1p-4 : inexact-ok
+= sin upward binary128 -0x6.e2368c006c018p+16 : -0x1.feb6a3619e803c49fb3b778718d1p-4 : inexact-ok
+= sin downward ibm128 -0x6.e2368c006c018p+16 : -0x1.feb6a3619e803c49fb3b778719p-4 : inexact-ok
+= sin tonearest ibm128 -0x6.e2368c006c018p+16 : -0x1.feb6a3619e803c49fb3b778719p-4 : inexact-ok
+= sin towardzero ibm128 -0x6.e2368c006c018p+16 : -0x1.feb6a3619e803c49fb3b7787188p-4 : inexact-ok
+= sin upward ibm128 -0x6.e2368c006c018p+16 : -0x1.feb6a3619e803c49fb3b7787188p-4 : inexact-ok
+= sin downward binary64 -0x6.e2368c006c01cp+16 : -0x1.feb6a36596829p-4 : inexact-ok
+= sin tonearest binary64 -0x6.e2368c006c01cp+16 : -0x1.feb6a36596829p-4 : inexact-ok
+= sin towardzero binary64 -0x6.e2368c006c01cp+16 : -0x1.feb6a36596828p-4 : inexact-ok
+= sin upward binary64 -0x6.e2368c006c01cp+16 : -0x1.feb6a36596828p-4 : inexact-ok
+= sin downward intel96 -0x6.e2368c006c01cp+16 : -0x1.feb6a36596828878p-4 : inexact-ok
+= sin tonearest intel96 -0x6.e2368c006c01cp+16 : -0x1.feb6a36596828878p-4 : inexact-ok
+= sin towardzero intel96 -0x6.e2368c006c01cp+16 : -0x1.feb6a36596828876p-4 : inexact-ok
+= sin upward intel96 -0x6.e2368c006c01cp+16 : -0x1.feb6a36596828876p-4 : inexact-ok
+= sin downward m68k96 -0x6.e2368c006c01cp+16 : -0x1.feb6a36596828878p-4 : inexact-ok
+= sin tonearest m68k96 -0x6.e2368c006c01cp+16 : -0x1.feb6a36596828878p-4 : inexact-ok
+= sin towardzero m68k96 -0x6.e2368c006c01cp+16 : -0x1.feb6a36596828876p-4 : inexact-ok
+= sin upward m68k96 -0x6.e2368c006c01cp+16 : -0x1.feb6a36596828876p-4 : inexact-ok
+= sin downward binary128 -0x6.e2368c006c01cp+16 : -0x1.feb6a365968288771150b6f6c52p-4 : inexact-ok
+= sin tonearest binary128 -0x6.e2368c006c01cp+16 : -0x1.feb6a365968288771150b6f6c51fp-4 : inexact-ok
+= sin towardzero binary128 -0x6.e2368c006c01cp+16 : -0x1.feb6a365968288771150b6f6c51fp-4 : inexact-ok
+= sin upward binary128 -0x6.e2368c006c01cp+16 : -0x1.feb6a365968288771150b6f6c51fp-4 : inexact-ok
+= sin downward ibm128 -0x6.e2368c006c01cp+16 : -0x1.feb6a365968288771150b6f6c58p-4 : inexact-ok
+= sin tonearest ibm128 -0x6.e2368c006c01cp+16 : -0x1.feb6a365968288771150b6f6c5p-4 : inexact-ok
+= sin towardzero ibm128 -0x6.e2368c006c01cp+16 : -0x1.feb6a365968288771150b6f6c5p-4 : inexact-ok
+= sin upward ibm128 -0x6.e2368c006c01cp+16 : -0x1.feb6a365968288771150b6f6c5p-4 : inexact-ok
+= sin downward intel96 -0x6.e2368c006c018228p+16 : -0x1.feb6a361c0bb501cp-4 : inexact-ok
+= sin tonearest intel96 -0x6.e2368c006c018228p+16 : -0x1.feb6a361c0bb501cp-4 : inexact-ok
+= sin towardzero intel96 -0x6.e2368c006c018228p+16 : -0x1.feb6a361c0bb501ap-4 : inexact-ok
+= sin upward intel96 -0x6.e2368c006c018228p+16 : -0x1.feb6a361c0bb501ap-4 : inexact-ok
+= sin downward m68k96 -0x6.e2368c006c018228p+16 : -0x1.feb6a361c0bb501cp-4 : inexact-ok
+= sin tonearest m68k96 -0x6.e2368c006c018228p+16 : -0x1.feb6a361c0bb501cp-4 : inexact-ok
+= sin towardzero m68k96 -0x6.e2368c006c018228p+16 : -0x1.feb6a361c0bb501ap-4 : inexact-ok
+= sin upward m68k96 -0x6.e2368c006c018228p+16 : -0x1.feb6a361c0bb501ap-4 : inexact-ok
+= sin downward binary128 -0x6.e2368c006c018228p+16 : -0x1.feb6a361c0bb501b009ef2c1f11ap-4 : inexact-ok
+= sin tonearest binary128 -0x6.e2368c006c018228p+16 : -0x1.feb6a361c0bb501b009ef2c1f11ap-4 : inexact-ok
+= sin towardzero binary128 -0x6.e2368c006c018228p+16 : -0x1.feb6a361c0bb501b009ef2c1f119p-4 : inexact-ok
+= sin upward binary128 -0x6.e2368c006c018228p+16 : -0x1.feb6a361c0bb501b009ef2c1f119p-4 : inexact-ok
+= sin downward ibm128 -0x6.e2368c006c018228p+16 : -0x1.feb6a361c0bb501b009ef2c1f18p-4 : inexact-ok
+= sin tonearest ibm128 -0x6.e2368c006c018228p+16 : -0x1.feb6a361c0bb501b009ef2c1f1p-4 : inexact-ok
+= sin towardzero ibm128 -0x6.e2368c006c018228p+16 : -0x1.feb6a361c0bb501b009ef2c1f1p-4 : inexact-ok
+= sin upward ibm128 -0x6.e2368c006c018228p+16 : -0x1.feb6a361c0bb501b009ef2c1f1p-4 : inexact-ok
+sin 0x5.6a5005df4363833413fa44f74ae8p+64
+= sin downward binary32 0x5.6a5008p+64 : -0x1.45506ap-4 : inexact-ok
+= sin tonearest binary32 0x5.6a5008p+64 : -0x1.455068p-4 : inexact-ok
+= sin towardzero binary32 0x5.6a5008p+64 : -0x1.455068p-4 : inexact-ok
+= sin upward binary32 0x5.6a5008p+64 : -0x1.455068p-4 : inexact-ok
+= sin downward binary64 0x5.6a5008p+64 : -0x1.4550689b93bbfp-4 : inexact-ok
+= sin tonearest binary64 0x5.6a5008p+64 : -0x1.4550689b93bbep-4 : inexact-ok
+= sin towardzero binary64 0x5.6a5008p+64 : -0x1.4550689b93bbep-4 : inexact-ok
+= sin upward binary64 0x5.6a5008p+64 : -0x1.4550689b93bbep-4 : inexact-ok
+= sin downward intel96 0x5.6a5008p+64 : -0x1.4550689b93bbe142p-4 : inexact-ok
+= sin tonearest intel96 0x5.6a5008p+64 : -0x1.4550689b93bbe14p-4 : inexact-ok
+= sin towardzero intel96 0x5.6a5008p+64 : -0x1.4550689b93bbe14p-4 : inexact-ok
+= sin upward intel96 0x5.6a5008p+64 : -0x1.4550689b93bbe14p-4 : inexact-ok
+= sin downward m68k96 0x5.6a5008p+64 : -0x1.4550689b93bbe142p-4 : inexact-ok
+= sin tonearest m68k96 0x5.6a5008p+64 : -0x1.4550689b93bbe14p-4 : inexact-ok
+= sin towardzero m68k96 0x5.6a5008p+64 : -0x1.4550689b93bbe14p-4 : inexact-ok
+= sin upward m68k96 0x5.6a5008p+64 : -0x1.4550689b93bbe14p-4 : inexact-ok
+= sin downward binary128 0x5.6a5008p+64 : -0x1.4550689b93bbe1406aee26103891p-4 : inexact-ok
+= sin tonearest binary128 0x5.6a5008p+64 : -0x1.4550689b93bbe1406aee26103891p-4 : inexact-ok
+= sin towardzero binary128 0x5.6a5008p+64 : -0x1.4550689b93bbe1406aee2610389p-4 : inexact-ok
+= sin upward binary128 0x5.6a5008p+64 : -0x1.4550689b93bbe1406aee2610389p-4 : inexact-ok
+= sin downward ibm128 0x5.6a5008p+64 : -0x1.4550689b93bbe1406aee261039p-4 : inexact-ok
+= sin tonearest ibm128 0x5.6a5008p+64 : -0x1.4550689b93bbe1406aee2610388p-4 : inexact-ok
+= sin towardzero ibm128 0x5.6a5008p+64 : -0x1.4550689b93bbe1406aee2610388p-4 : inexact-ok
+= sin upward ibm128 0x5.6a5008p+64 : -0x1.4550689b93bbe1406aee2610388p-4 : inexact-ok
+= sin downward binary32 0x5.6a5p+64 : -0x1.ee01dcp-4 : inexact-ok
+= sin tonearest binary32 0x5.6a5p+64 : -0x1.ee01dcp-4 : inexact-ok
+= sin towardzero binary32 0x5.6a5p+64 : -0x1.ee01dap-4 : inexact-ok
+= sin upward binary32 0x5.6a5p+64 : -0x1.ee01dap-4 : inexact-ok
+= sin downward binary64 0x5.6a5p+64 : -0x1.ee01db6bc8ef3p-4 : inexact-ok
+= sin tonearest binary64 0x5.6a5p+64 : -0x1.ee01db6bc8ef3p-4 : inexact-ok
+= sin towardzero binary64 0x5.6a5p+64 : -0x1.ee01db6bc8ef2p-4 : inexact-ok
+= sin upward binary64 0x5.6a5p+64 : -0x1.ee01db6bc8ef2p-4 : inexact-ok
+= sin downward intel96 0x5.6a5p+64 : -0x1.ee01db6bc8ef288ep-4 : inexact-ok
+= sin tonearest intel96 0x5.6a5p+64 : -0x1.ee01db6bc8ef288cp-4 : inexact-ok
+= sin towardzero intel96 0x5.6a5p+64 : -0x1.ee01db6bc8ef288cp-4 : inexact-ok
+= sin upward intel96 0x5.6a5p+64 : -0x1.ee01db6bc8ef288cp-4 : inexact-ok
+= sin downward m68k96 0x5.6a5p+64 : -0x1.ee01db6bc8ef288ep-4 : inexact-ok
+= sin tonearest m68k96 0x5.6a5p+64 : -0x1.ee01db6bc8ef288cp-4 : inexact-ok
+= sin towardzero m68k96 0x5.6a5p+64 : -0x1.ee01db6bc8ef288cp-4 : inexact-ok
+= sin upward m68k96 0x5.6a5p+64 : -0x1.ee01db6bc8ef288cp-4 : inexact-ok
+= sin downward binary128 0x5.6a5p+64 : -0x1.ee01db6bc8ef288c92dcf3ee915cp-4 : inexact-ok
+= sin tonearest binary128 0x5.6a5p+64 : -0x1.ee01db6bc8ef288c92dcf3ee915cp-4 : inexact-ok
+= sin towardzero binary128 0x5.6a5p+64 : -0x1.ee01db6bc8ef288c92dcf3ee915bp-4 : inexact-ok
+= sin upward binary128 0x5.6a5p+64 : -0x1.ee01db6bc8ef288c92dcf3ee915bp-4 : inexact-ok
+= sin downward ibm128 0x5.6a5p+64 : -0x1.ee01db6bc8ef288c92dcf3ee918p-4 : inexact-ok
+= sin tonearest ibm128 0x5.6a5p+64 : -0x1.ee01db6bc8ef288c92dcf3ee918p-4 : inexact-ok
+= sin towardzero ibm128 0x5.6a5p+64 : -0x1.ee01db6bc8ef288c92dcf3ee91p-4 : inexact-ok
+= sin upward ibm128 0x5.6a5p+64 : -0x1.ee01db6bc8ef288c92dcf3ee91p-4 : inexact-ok
+= sin downward binary64 0x5.6a5005df4363cp+64 : 0x6.5ea3351c9d9d8p-4 : inexact-ok
+= sin tonearest binary64 0x5.6a5005df4363cp+64 : 0x6.5ea3351c9d9dcp-4 : inexact-ok
+= sin towardzero binary64 0x5.6a5005df4363cp+64 : 0x6.5ea3351c9d9d8p-4 : inexact-ok
+= sin upward binary64 0x5.6a5005df4363cp+64 : 0x6.5ea3351c9d9dcp-4 : inexact-ok
+= sin downward intel96 0x5.6a5005df4363cp+64 : 0x6.5ea3351c9d9da32p-4 : inexact-ok
+= sin tonearest intel96 0x5.6a5005df4363cp+64 : 0x6.5ea3351c9d9da32p-4 : inexact-ok
+= sin towardzero intel96 0x5.6a5005df4363cp+64 : 0x6.5ea3351c9d9da32p-4 : inexact-ok
+= sin upward intel96 0x5.6a5005df4363cp+64 : 0x6.5ea3351c9d9da328p-4 : inexact-ok
+= sin downward m68k96 0x5.6a5005df4363cp+64 : 0x6.5ea3351c9d9da32p-4 : inexact-ok
+= sin tonearest m68k96 0x5.6a5005df4363cp+64 : 0x6.5ea3351c9d9da32p-4 : inexact-ok
+= sin towardzero m68k96 0x5.6a5005df4363cp+64 : 0x6.5ea3351c9d9da32p-4 : inexact-ok
+= sin upward m68k96 0x5.6a5005df4363cp+64 : 0x6.5ea3351c9d9da328p-4 : inexact-ok
+= sin downward binary128 0x5.6a5005df4363cp+64 : 0x6.5ea3351c9d9da321a84877b1bf9cp-4 : inexact-ok
+= sin tonearest binary128 0x5.6a5005df4363cp+64 : 0x6.5ea3351c9d9da321a84877b1bf9cp-4 : inexact-ok
+= sin towardzero binary128 0x5.6a5005df4363cp+64 : 0x6.5ea3351c9d9da321a84877b1bf9cp-4 : inexact-ok
+= sin upward binary128 0x5.6a5005df4363cp+64 : 0x6.5ea3351c9d9da321a84877b1bfap-4 : inexact-ok
+= sin downward ibm128 0x5.6a5005df4363cp+64 : 0x6.5ea3351c9d9da321a84877b1bep-4 : inexact-ok
+= sin tonearest ibm128 0x5.6a5005df4363cp+64 : 0x6.5ea3351c9d9da321a84877b1cp-4 : inexact-ok
+= sin towardzero ibm128 0x5.6a5005df4363cp+64 : 0x6.5ea3351c9d9da321a84877b1bep-4 : inexact-ok
+= sin upward ibm128 0x5.6a5005df4363cp+64 : 0x6.5ea3351c9d9da321a84877b1cp-4 : inexact-ok
+= sin downward binary64 0x5.6a5005df43638p+64 : 0x2.f0e32ed649b32p-4 : inexact-ok
+= sin tonearest binary64 0x5.6a5005df43638p+64 : 0x2.f0e32ed649b32p-4 : inexact-ok
+= sin towardzero binary64 0x5.6a5005df43638p+64 : 0x2.f0e32ed649b32p-4 : inexact-ok
+= sin upward binary64 0x5.6a5005df43638p+64 : 0x2.f0e32ed649b34p-4 : inexact-ok
+= sin downward intel96 0x5.6a5005df43638p+64 : 0x2.f0e32ed649b32644p-4 : inexact-ok
+= sin tonearest intel96 0x5.6a5005df43638p+64 : 0x2.f0e32ed649b32644p-4 : inexact-ok
+= sin towardzero intel96 0x5.6a5005df43638p+64 : 0x2.f0e32ed649b32644p-4 : inexact-ok
+= sin upward intel96 0x5.6a5005df43638p+64 : 0x2.f0e32ed649b32648p-4 : inexact-ok
+= sin downward m68k96 0x5.6a5005df43638p+64 : 0x2.f0e32ed649b32644p-4 : inexact-ok
+= sin tonearest m68k96 0x5.6a5005df43638p+64 : 0x2.f0e32ed649b32644p-4 : inexact-ok
+= sin towardzero m68k96 0x5.6a5005df43638p+64 : 0x2.f0e32ed649b32644p-4 : inexact-ok
+= sin upward m68k96 0x5.6a5005df43638p+64 : 0x2.f0e32ed649b32648p-4 : inexact-ok
+= sin downward binary128 0x5.6a5005df43638p+64 : 0x2.f0e32ed649b326445c86bd0d5a5cp-4 : inexact-ok
+= sin tonearest binary128 0x5.6a5005df43638p+64 : 0x2.f0e32ed649b326445c86bd0d5a5ep-4 : inexact-ok
+= sin towardzero binary128 0x5.6a5005df43638p+64 : 0x2.f0e32ed649b326445c86bd0d5a5cp-4 : inexact-ok
+= sin upward binary128 0x5.6a5005df43638p+64 : 0x2.f0e32ed649b326445c86bd0d5a5ep-4 : inexact-ok
+= sin downward ibm128 0x5.6a5005df43638p+64 : 0x2.f0e32ed649b326445c86bd0d5ap-4 : inexact-ok
+= sin tonearest ibm128 0x5.6a5005df43638p+64 : 0x2.f0e32ed649b326445c86bd0d5ap-4 : inexact-ok
+= sin towardzero ibm128 0x5.6a5005df43638p+64 : 0x2.f0e32ed649b326445c86bd0d5ap-4 : inexact-ok
+= sin upward ibm128 0x5.6a5005df43638p+64 : 0x2.f0e32ed649b326445c86bd0d5bp-4 : inexact-ok
+= sin downward intel96 0x5.6a5005df43638338p+64 : -0xa.8640e82e7924ec1p-4 : inexact-ok
+= sin tonearest intel96 0x5.6a5005df43638338p+64 : -0xa.8640e82e7924ecp-4 : inexact-ok
+= sin towardzero intel96 0x5.6a5005df43638338p+64 : -0xa.8640e82e7924ecp-4 : inexact-ok
+= sin upward intel96 0x5.6a5005df43638338p+64 : -0xa.8640e82e7924ecp-4 : inexact-ok
+= sin downward m68k96 0x5.6a5005df43638338p+64 : -0xa.8640e82e7924ec1p-4 : inexact-ok
+= sin tonearest m68k96 0x5.6a5005df43638338p+64 : -0xa.8640e82e7924ecp-4 : inexact-ok
+= sin towardzero m68k96 0x5.6a5005df43638338p+64 : -0xa.8640e82e7924ecp-4 : inexact-ok
+= sin upward m68k96 0x5.6a5005df43638338p+64 : -0xa.8640e82e7924ecp-4 : inexact-ok
+= sin downward binary128 0x5.6a5005df43638338p+64 : -0xa.8640e82e7924ec0007c751797398p-4 : inexact-ok
+= sin tonearest binary128 0x5.6a5005df43638338p+64 : -0xa.8640e82e7924ec0007c75179739p-4 : inexact-ok
+= sin towardzero binary128 0x5.6a5005df43638338p+64 : -0xa.8640e82e7924ec0007c75179739p-4 : inexact-ok
+= sin upward binary128 0x5.6a5005df43638338p+64 : -0xa.8640e82e7924ec0007c75179739p-4 : inexact-ok
+= sin downward ibm128 0x5.6a5005df43638338p+64 : -0xa.8640e82e7924ec0007c7517974p-4 : inexact-ok
+= sin tonearest ibm128 0x5.6a5005df43638338p+64 : -0xa.8640e82e7924ec0007c7517974p-4 : inexact-ok
+= sin towardzero ibm128 0x5.6a5005df43638338p+64 : -0xa.8640e82e7924ec0007c751797p-4 : inexact-ok
+= sin upward ibm128 0x5.6a5005df43638338p+64 : -0xa.8640e82e7924ec0007c751797p-4 : inexact-ok
+= sin downward intel96 0x5.6a5005df4363833p+64 : 0xd.7457bd2255e689fp-4 : inexact-ok
+= sin tonearest intel96 0x5.6a5005df4363833p+64 : 0xd.7457bd2255e689fp-4 : inexact-ok
+= sin towardzero intel96 0x5.6a5005df4363833p+64 : 0xd.7457bd2255e689fp-4 : inexact-ok
+= sin upward intel96 0x5.6a5005df4363833p+64 : 0xd.7457bd2255e68ap-4 : inexact-ok
+= sin downward m68k96 0x5.6a5005df4363833p+64 : 0xd.7457bd2255e689fp-4 : inexact-ok
+= sin tonearest m68k96 0x5.6a5005df4363833p+64 : 0xd.7457bd2255e689fp-4 : inexact-ok
+= sin towardzero m68k96 0x5.6a5005df4363833p+64 : 0xd.7457bd2255e689fp-4 : inexact-ok
+= sin upward m68k96 0x5.6a5005df4363833p+64 : 0xd.7457bd2255e68ap-4 : inexact-ok
+= sin downward binary128 0x5.6a5005df4363833p+64 : 0xd.7457bd2255e689f0662a7ba8548p-4 : inexact-ok
+= sin tonearest binary128 0x5.6a5005df4363833p+64 : 0xd.7457bd2255e689f0662a7ba85488p-4 : inexact-ok
+= sin towardzero binary128 0x5.6a5005df4363833p+64 : 0xd.7457bd2255e689f0662a7ba8548p-4 : inexact-ok
+= sin upward binary128 0x5.6a5005df4363833p+64 : 0xd.7457bd2255e689f0662a7ba85488p-4 : inexact-ok
+= sin downward ibm128 0x5.6a5005df4363833p+64 : 0xd.7457bd2255e689f0662a7ba854p-4 : inexact-ok
+= sin tonearest ibm128 0x5.6a5005df4363833p+64 : 0xd.7457bd2255e689f0662a7ba854p-4 : inexact-ok
+= sin towardzero ibm128 0x5.6a5005df4363833p+64 : 0xd.7457bd2255e689f0662a7ba854p-4 : inexact-ok
+= sin upward ibm128 0x5.6a5005df4363833p+64 : 0xd.7457bd2255e689f0662a7ba858p-4 : inexact-ok
+= sin downward binary128 0x5.6a5005df4363833413fa44f74ae8p+64 : -0xf.fdc3052396dd47c564b32734cc28p-8 : inexact-ok
+= sin tonearest binary128 0x5.6a5005df4363833413fa44f74ae8p+64 : -0xf.fdc3052396dd47c564b32734cc2p-8 : inexact-ok
+= sin towardzero binary128 0x5.6a5005df4363833413fa44f74ae8p+64 : -0xf.fdc3052396dd47c564b32734cc2p-8 : inexact-ok
+= sin upward binary128 0x5.6a5005df4363833413fa44f74ae8p+64 : -0xf.fdc3052396dd47c564b32734cc2p-8 : inexact-ok
+= sin downward binary128 0x5.6a5005df4363833413fa44f74cp+64 : -0xf.fdc305227f69439ae6b7b4254f8p-8 : inexact-ok
+= sin tonearest binary128 0x5.6a5005df4363833413fa44f74cp+64 : -0xf.fdc305227f69439ae6b7b4254f78p-8 : inexact-ok
+= sin towardzero binary128 0x5.6a5005df4363833413fa44f74cp+64 : -0xf.fdc305227f69439ae6b7b4254f78p-8 : inexact-ok
+= sin upward binary128 0x5.6a5005df4363833413fa44f74cp+64 : -0xf.fdc305227f69439ae6b7b4254f78p-8 : inexact-ok
+= sin downward ibm128 0x5.6a5005df4363833413fa44f74cp+64 : -0xf.fdc305227f69439ae6b7b4255p-8 : inexact-ok
+= sin tonearest ibm128 0x5.6a5005df4363833413fa44f74cp+64 : -0xf.fdc305227f69439ae6b7b4255p-8 : inexact-ok
+= sin towardzero ibm128 0x5.6a5005df4363833413fa44f74cp+64 : -0xf.fdc305227f69439ae6b7b4254cp-8 : inexact-ok
+= sin upward ibm128 0x5.6a5005df4363833413fa44f74cp+64 : -0xf.fdc305227f69439ae6b7b4254cp-8 : inexact-ok
+= sin downward binary128 0x5.6a5005df4363833413fa44f74ap+64 : -0xf.fdc305247e694b390edb67a7fa7p-8 : inexact-ok
+= sin tonearest binary128 0x5.6a5005df4363833413fa44f74ap+64 : -0xf.fdc305247e694b390edb67a7fa7p-8 : inexact-ok
+= sin towardzero binary128 0x5.6a5005df4363833413fa44f74ap+64 : -0xf.fdc305247e694b390edb67a7fa68p-8 : inexact-ok
+= sin upward binary128 0x5.6a5005df4363833413fa44f74ap+64 : -0xf.fdc305247e694b390edb67a7fa68p-8 : inexact-ok
+= sin downward ibm128 0x5.6a5005df4363833413fa44f74ap+64 : -0xf.fdc305247e694b390edb67a7fcp-8 : inexact-ok
+= sin tonearest ibm128 0x5.6a5005df4363833413fa44f74ap+64 : -0xf.fdc305247e694b390edb67a7fcp-8 : inexact-ok
+= sin towardzero ibm128 0x5.6a5005df4363833413fa44f74ap+64 : -0xf.fdc305247e694b390edb67a7f8p-8 : inexact-ok
+= sin upward ibm128 0x5.6a5005df4363833413fa44f74ap+64 : -0xf.fdc305247e694b390edb67a7f8p-8 : inexact-ok
 sin max
 = sin downward binary32 0xf.fffffp+124 : -0x8.599b4p-4 : inexact-ok
 = sin tonearest binary32 0xf.fffffp+124 : -0x8.599b3p-4 : inexact-ok
diff --git a/math/auto-libm-test-out-sinh b/math/auto-libm-test-out-sinh
index c26a34c1c5..0b77a77eeb 100644
--- a/math/auto-libm-test-out-sinh
+++ b/math/auto-libm-test-out-sinh
@@ -2115,6 +2115,111 @@ sinh -0x6.9bbb6df7c5d08p-4
 = sinh tonearest ibm128 -0x6.9bbb6df7c5d08p-4 : -0x6.cc3ddf003dcda77f8f9e892e36p-4 : inexact-ok
 = sinh towardzero ibm128 -0x6.9bbb6df7c5d08p-4 : -0x6.cc3ddf003dcda77f8f9e892e36p-4 : inexact-ok
 = sinh upward ibm128 -0x6.9bbb6df7c5d08p-4 : -0x6.cc3ddf003dcda77f8f9e892e36p-4 : inexact-ok
+sinh 0x2.c5d376167f4052f4p+12
+= sinh downward binary32 0x2.c5d378p+12 : 0xf.fffffp+124 : inexact-ok overflow errno-erange-ok
+= sinh tonearest binary32 0x2.c5d378p+12 : plus_infty : inexact-ok overflow errno-erange
+= sinh towardzero binary32 0x2.c5d378p+12 : 0xf.fffffp+124 : inexact-ok overflow errno-erange-ok
+= sinh upward binary32 0x2.c5d378p+12 : plus_infty : inexact-ok overflow errno-erange
+= sinh downward binary64 0x2.c5d378p+12 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= sinh tonearest binary64 0x2.c5d378p+12 : plus_infty : inexact-ok overflow errno-erange
+= sinh towardzero binary64 0x2.c5d378p+12 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= sinh upward binary64 0x2.c5d378p+12 : plus_infty : inexact-ok overflow errno-erange
+= sinh downward intel96 0x2.c5d378p+12 : 0xf.fffffffffffffffp+16380 : inexact-ok overflow errno-erange-ok
+= sinh tonearest intel96 0x2.c5d378p+12 : plus_infty : inexact-ok overflow errno-erange
+= sinh towardzero intel96 0x2.c5d378p+12 : 0xf.fffffffffffffffp+16380 : inexact-ok overflow errno-erange-ok
+= sinh upward intel96 0x2.c5d378p+12 : plus_infty : inexact-ok overflow errno-erange
+= sinh downward m68k96 0x2.c5d378p+12 : 0xf.fffffffffffffffp+16380 : inexact-ok overflow errno-erange-ok
+= sinh tonearest m68k96 0x2.c5d378p+12 : plus_infty : inexact-ok overflow errno-erange
+= sinh towardzero m68k96 0x2.c5d378p+12 : 0xf.fffffffffffffffp+16380 : inexact-ok overflow errno-erange-ok
+= sinh upward m68k96 0x2.c5d378p+12 : plus_infty : inexact-ok overflow errno-erange
+= sinh downward binary128 0x2.c5d378p+12 : 0xf.fffffffffffffffffffffffffff8p+16380 : inexact-ok overflow errno-erange-ok
+= sinh tonearest binary128 0x2.c5d378p+12 : plus_infty : inexact-ok overflow errno-erange
+= sinh towardzero binary128 0x2.c5d378p+12 : 0xf.fffffffffffffffffffffffffff8p+16380 : inexact-ok overflow errno-erange-ok
+= sinh upward binary128 0x2.c5d378p+12 : plus_infty : inexact-ok overflow errno-erange
+= sinh downward ibm128 0x2.c5d378p+12 : 0xf.ffffffffffffbffffffffffffcp+1020 : xfail:ibm128-libgcc inexact-ok overflow errno-erange-ok
+= sinh tonearest ibm128 0x2.c5d378p+12 : plus_infty : inexact-ok overflow errno-erange
+= sinh towardzero ibm128 0x2.c5d378p+12 : 0xf.ffffffffffffbffffffffffffcp+1020 : xfail:ibm128-libgcc inexact-ok overflow errno-erange-ok
+= sinh upward ibm128 0x2.c5d378p+12 : plus_infty : xfail:ibm128-libgcc inexact-ok overflow errno-erange
+= sinh downward binary32 0x2.c5d374p+12 : 0xf.fffffp+124 : inexact-ok overflow errno-erange-ok
+= sinh tonearest binary32 0x2.c5d374p+12 : plus_infty : inexact-ok overflow errno-erange
+= sinh towardzero binary32 0x2.c5d374p+12 : 0xf.fffffp+124 : inexact-ok overflow errno-erange-ok
+= sinh upward binary32 0x2.c5d374p+12 : plus_infty : inexact-ok overflow errno-erange
+= sinh downward binary64 0x2.c5d374p+12 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= sinh tonearest binary64 0x2.c5d374p+12 : plus_infty : inexact-ok overflow errno-erange
+= sinh towardzero binary64 0x2.c5d374p+12 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= sinh upward binary64 0x2.c5d374p+12 : plus_infty : inexact-ok overflow errno-erange
+= sinh downward intel96 0x2.c5d374p+12 : 0xf.fcff8165c0f3206p+16380 : inexact-ok
+= sinh tonearest intel96 0x2.c5d374p+12 : 0xf.fcff8165c0f3207p+16380 : inexact-ok
+= sinh towardzero intel96 0x2.c5d374p+12 : 0xf.fcff8165c0f3206p+16380 : inexact-ok
+= sinh upward intel96 0x2.c5d374p+12 : 0xf.fcff8165c0f3207p+16380 : inexact-ok
+= sinh downward m68k96 0x2.c5d374p+12 : 0xf.fcff8165c0f3206p+16380 : inexact-ok
+= sinh tonearest m68k96 0x2.c5d374p+12 : 0xf.fcff8165c0f3207p+16380 : inexact-ok
+= sinh towardzero m68k96 0x2.c5d374p+12 : 0xf.fcff8165c0f3206p+16380 : inexact-ok
+= sinh upward m68k96 0x2.c5d374p+12 : 0xf.fcff8165c0f3207p+16380 : inexact-ok
+= sinh downward binary128 0x2.c5d374p+12 : 0xf.fcff8165c0f3206f5cab39217878p+16380 : inexact-ok
+= sinh tonearest binary128 0x2.c5d374p+12 : 0xf.fcff8165c0f3206f5cab3921788p+16380 : inexact-ok
+= sinh towardzero binary128 0x2.c5d374p+12 : 0xf.fcff8165c0f3206f5cab39217878p+16380 : inexact-ok
+= sinh upward binary128 0x2.c5d374p+12 : 0xf.fcff8165c0f3206f5cab3921788p+16380 : inexact-ok
+= sinh downward ibm128 0x2.c5d374p+12 : 0xf.ffffffffffffbffffffffffffcp+1020 : xfail:ibm128-libgcc inexact-ok overflow errno-erange-ok
+= sinh tonearest ibm128 0x2.c5d374p+12 : plus_infty : inexact-ok overflow errno-erange
+= sinh towardzero ibm128 0x2.c5d374p+12 : 0xf.ffffffffffffbffffffffffffcp+1020 : xfail:ibm128-libgcc inexact-ok overflow errno-erange-ok
+= sinh upward ibm128 0x2.c5d374p+12 : plus_infty : xfail:ibm128-libgcc inexact-ok overflow errno-erange
+= sinh downward binary64 0x2.c5d376167f406p+12 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= sinh tonearest binary64 0x2.c5d376167f406p+12 : plus_infty : inexact-ok overflow errno-erange
+= sinh towardzero binary64 0x2.c5d376167f406p+12 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= sinh upward binary64 0x2.c5d376167f406p+12 : plus_infty : inexact-ok overflow errno-erange
+= sinh downward intel96 0x2.c5d376167f406p+12 : 0xf.ff15bf3871a7576p+16380 : inexact-ok
+= sinh tonearest intel96 0x2.c5d376167f406p+12 : 0xf.ff15bf3871a7576p+16380 : inexact-ok
+= sinh towardzero intel96 0x2.c5d376167f406p+12 : 0xf.ff15bf3871a7576p+16380 : inexact-ok
+= sinh upward intel96 0x2.c5d376167f406p+12 : 0xf.ff15bf3871a7577p+16380 : inexact-ok
+= sinh downward m68k96 0x2.c5d376167f406p+12 : 0xf.ff15bf3871a7576p+16380 : inexact-ok
+= sinh tonearest m68k96 0x2.c5d376167f406p+12 : 0xf.ff15bf3871a7576p+16380 : inexact-ok
+= sinh towardzero m68k96 0x2.c5d376167f406p+12 : 0xf.ff15bf3871a7576p+16380 : inexact-ok
+= sinh upward m68k96 0x2.c5d376167f406p+12 : 0xf.ff15bf3871a7577p+16380 : inexact-ok
+= sinh downward binary128 0x2.c5d376167f406p+12 : 0xf.ff15bf3871a75761db61506a9ba8p+16380 : inexact-ok
+= sinh tonearest binary128 0x2.c5d376167f406p+12 : 0xf.ff15bf3871a75761db61506a9bbp+16380 : inexact-ok
+= sinh towardzero binary128 0x2.c5d376167f406p+12 : 0xf.ff15bf3871a75761db61506a9ba8p+16380 : inexact-ok
+= sinh upward binary128 0x2.c5d376167f406p+12 : 0xf.ff15bf3871a75761db61506a9bbp+16380 : inexact-ok
+= sinh downward ibm128 0x2.c5d376167f406p+12 : 0xf.ffffffffffffbffffffffffffcp+1020 : xfail:ibm128-libgcc inexact-ok overflow errno-erange-ok
+= sinh tonearest ibm128 0x2.c5d376167f406p+12 : plus_infty : inexact-ok overflow errno-erange
+= sinh towardzero ibm128 0x2.c5d376167f406p+12 : 0xf.ffffffffffffbffffffffffffcp+1020 : xfail:ibm128-libgcc inexact-ok overflow errno-erange-ok
+= sinh upward ibm128 0x2.c5d376167f406p+12 : plus_infty : xfail:ibm128-libgcc inexact-ok overflow errno-erange
+= sinh downward binary64 0x2.c5d376167f404p+12 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= sinh tonearest binary64 0x2.c5d376167f404p+12 : plus_infty : inexact-ok overflow errno-erange
+= sinh towardzero binary64 0x2.c5d376167f404p+12 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= sinh upward binary64 0x2.c5d376167f404p+12 : plus_infty : inexact-ok overflow errno-erange
+= sinh downward intel96 0x2.c5d376167f404p+12 : 0xf.ff15bf3851a92bep+16380 : inexact-ok
+= sinh tonearest intel96 0x2.c5d376167f404p+12 : 0xf.ff15bf3851a92bep+16380 : inexact-ok
+= sinh towardzero intel96 0x2.c5d376167f404p+12 : 0xf.ff15bf3851a92bep+16380 : inexact-ok
+= sinh upward intel96 0x2.c5d376167f404p+12 : 0xf.ff15bf3851a92bfp+16380 : inexact-ok
+= sinh downward m68k96 0x2.c5d376167f404p+12 : 0xf.ff15bf3851a92bep+16380 : inexact-ok
+= sinh tonearest m68k96 0x2.c5d376167f404p+12 : 0xf.ff15bf3851a92bep+16380 : inexact-ok
+= sinh towardzero m68k96 0x2.c5d376167f404p+12 : 0xf.ff15bf3851a92bep+16380 : inexact-ok
+= sinh upward m68k96 0x2.c5d376167f404p+12 : 0xf.ff15bf3851a92bfp+16380 : inexact-ok
+= sinh downward binary128 0x2.c5d376167f404p+12 : 0xf.ff15bf3851a92be36a9dffe7566p+16380 : inexact-ok
+= sinh tonearest binary128 0x2.c5d376167f404p+12 : 0xf.ff15bf3851a92be36a9dffe75668p+16380 : inexact-ok
+= sinh towardzero binary128 0x2.c5d376167f404p+12 : 0xf.ff15bf3851a92be36a9dffe7566p+16380 : inexact-ok
+= sinh upward binary128 0x2.c5d376167f404p+12 : 0xf.ff15bf3851a92be36a9dffe75668p+16380 : inexact-ok
+= sinh downward ibm128 0x2.c5d376167f404p+12 : 0xf.ffffffffffffbffffffffffffcp+1020 : xfail:ibm128-libgcc inexact-ok overflow errno-erange-ok
+= sinh tonearest ibm128 0x2.c5d376167f404p+12 : plus_infty : inexact-ok overflow errno-erange
+= sinh towardzero ibm128 0x2.c5d376167f404p+12 : 0xf.ffffffffffffbffffffffffffcp+1020 : xfail:ibm128-libgcc inexact-ok overflow errno-erange-ok
+= sinh upward ibm128 0x2.c5d376167f404p+12 : plus_infty : xfail:ibm128-libgcc inexact-ok overflow errno-erange
+= sinh downward intel96 0x2.c5d376167f4052f4p+12 : 0xf.ff15bf38649c166p+16380 : inexact-ok
+= sinh tonearest intel96 0x2.c5d376167f4052f4p+12 : 0xf.ff15bf38649c166p+16380 : inexact-ok
+= sinh towardzero intel96 0x2.c5d376167f4052f4p+12 : 0xf.ff15bf38649c166p+16380 : inexact-ok
+= sinh upward intel96 0x2.c5d376167f4052f4p+12 : 0xf.ff15bf38649c167p+16380 : inexact-ok
+= sinh downward m68k96 0x2.c5d376167f4052f4p+12 : 0xf.ff15bf38649c166p+16380 : inexact-ok
+= sinh tonearest m68k96 0x2.c5d376167f4052f4p+12 : 0xf.ff15bf38649c166p+16380 : inexact-ok
+= sinh towardzero m68k96 0x2.c5d376167f4052f4p+12 : 0xf.ff15bf38649c166p+16380 : inexact-ok
+= sinh upward m68k96 0x2.c5d376167f4052f4p+12 : 0xf.ff15bf38649c167p+16380 : inexact-ok
+= sinh downward binary128 0x2.c5d376167f4052f4p+12 : 0xf.ff15bf38649c16662e1ff4acb938p+16380 : inexact-ok
+= sinh tonearest binary128 0x2.c5d376167f4052f4p+12 : 0xf.ff15bf38649c16662e1ff4acb94p+16380 : inexact-ok
+= sinh towardzero binary128 0x2.c5d376167f4052f4p+12 : 0xf.ff15bf38649c16662e1ff4acb938p+16380 : inexact-ok
+= sinh upward binary128 0x2.c5d376167f4052f4p+12 : 0xf.ff15bf38649c16662e1ff4acb94p+16380 : inexact-ok
+= sinh downward ibm128 0x2.c5d376167f4052f4p+12 : 0xf.ffffffffffffbffffffffffffcp+1020 : xfail:ibm128-libgcc inexact-ok overflow errno-erange-ok
+= sinh tonearest ibm128 0x2.c5d376167f4052f4p+12 : plus_infty : inexact-ok overflow errno-erange
+= sinh towardzero ibm128 0x2.c5d376167f4052f4p+12 : 0xf.ffffffffffffbffffffffffffcp+1020 : xfail:ibm128-libgcc inexact-ok overflow errno-erange-ok
+= sinh upward ibm128 0x2.c5d376167f4052f4p+12 : plus_infty : xfail:ibm128-libgcc inexact-ok overflow errno-erange
 sinh max
 = sinh downward binary32 0xf.fffffp+124 : 0xf.fffffp+124 : inexact-ok overflow errno-erange-ok
 = sinh tonearest binary32 0xf.fffffp+124 : plus_infty : inexact-ok overflow errno-erange
diff --git a/math/auto-libm-test-out-tanh b/math/auto-libm-test-out-tanh
index 1a12701392..8b9427c917 100644
--- a/math/auto-libm-test-out-tanh
+++ b/math/auto-libm-test-out-tanh
@@ -2289,6 +2289,111 @@ tanh 0x1p-10000
 = tanh tonearest binary128 0x1p-10000 : 0x1p-10000 : inexact-ok
 = tanh towardzero binary128 0x1p-10000 : 0xf.fffffffffffffffffffffffffff8p-10004 : inexact-ok
 = tanh upward binary128 0x1p-10000 : 0x1p-10000 : inexact-ok
+tanh 0x3.b9979a543d0fbfa8p-4
+= tanh downward binary32 0x3.b9979cp-4 : 0x3.a8baacp-4 : inexact-ok
+= tanh tonearest binary32 0x3.b9979cp-4 : 0x3.a8babp-4 : inexact-ok
+= tanh towardzero binary32 0x3.b9979cp-4 : 0x3.a8baacp-4 : inexact-ok
+= tanh upward binary32 0x3.b9979cp-4 : 0x3.a8babp-4 : inexact-ok
+= tanh downward binary64 0x3.b9979cp-4 : 0x3.a8baafcd6721cp-4 : inexact-ok
+= tanh tonearest binary64 0x3.b9979cp-4 : 0x3.a8baafcd6721cp-4 : inexact-ok
+= tanh towardzero binary64 0x3.b9979cp-4 : 0x3.a8baafcd6721cp-4 : inexact-ok
+= tanh upward binary64 0x3.b9979cp-4 : 0x3.a8baafcd6721ep-4 : inexact-ok
+= tanh downward intel96 0x3.b9979cp-4 : 0x3.a8baafcd6721c9dp-4 : inexact-ok
+= tanh tonearest intel96 0x3.b9979cp-4 : 0x3.a8baafcd6721c9d4p-4 : inexact-ok
+= tanh towardzero intel96 0x3.b9979cp-4 : 0x3.a8baafcd6721c9dp-4 : inexact-ok
+= tanh upward intel96 0x3.b9979cp-4 : 0x3.a8baafcd6721c9d4p-4 : inexact-ok
+= tanh downward m68k96 0x3.b9979cp-4 : 0x3.a8baafcd6721c9dp-4 : inexact-ok
+= tanh tonearest m68k96 0x3.b9979cp-4 : 0x3.a8baafcd6721c9d4p-4 : inexact-ok
+= tanh towardzero m68k96 0x3.b9979cp-4 : 0x3.a8baafcd6721c9dp-4 : inexact-ok
+= tanh upward m68k96 0x3.b9979cp-4 : 0x3.a8baafcd6721c9d4p-4 : inexact-ok
+= tanh downward binary128 0x3.b9979cp-4 : 0x3.a8baafcd6721c9d281b58b34a988p-4 : inexact-ok
+= tanh tonearest binary128 0x3.b9979cp-4 : 0x3.a8baafcd6721c9d281b58b34a98ap-4 : inexact-ok
+= tanh towardzero binary128 0x3.b9979cp-4 : 0x3.a8baafcd6721c9d281b58b34a988p-4 : inexact-ok
+= tanh upward binary128 0x3.b9979cp-4 : 0x3.a8baafcd6721c9d281b58b34a98ap-4 : inexact-ok
+= tanh downward ibm128 0x3.b9979cp-4 : 0x3.a8baafcd6721c9d281b58b34a9p-4 : inexact-ok
+= tanh tonearest ibm128 0x3.b9979cp-4 : 0x3.a8baafcd6721c9d281b58b34aap-4 : inexact-ok
+= tanh towardzero ibm128 0x3.b9979cp-4 : 0x3.a8baafcd6721c9d281b58b34a9p-4 : inexact-ok
+= tanh upward ibm128 0x3.b9979cp-4 : 0x3.a8baafcd6721c9d281b58b34aap-4 : inexact-ok
+= tanh downward binary32 0x3.b99798p-4 : 0x3.a8baacp-4 : inexact-ok
+= tanh tonearest binary32 0x3.b99798p-4 : 0x3.a8baacp-4 : inexact-ok
+= tanh towardzero binary32 0x3.b99798p-4 : 0x3.a8baacp-4 : inexact-ok
+= tanh upward binary32 0x3.b99798p-4 : 0x3.a8babp-4 : inexact-ok
+= tanh downward binary64 0x3.b99798p-4 : 0x3.a8baac02f5784p-4 : inexact-ok
+= tanh tonearest binary64 0x3.b99798p-4 : 0x3.a8baac02f5784p-4 : inexact-ok
+= tanh towardzero binary64 0x3.b99798p-4 : 0x3.a8baac02f5784p-4 : inexact-ok
+= tanh upward binary64 0x3.b99798p-4 : 0x3.a8baac02f5786p-4 : inexact-ok
+= tanh downward intel96 0x3.b99798p-4 : 0x3.a8baac02f578491cp-4 : inexact-ok
+= tanh tonearest intel96 0x3.b99798p-4 : 0x3.a8baac02f578492p-4 : inexact-ok
+= tanh towardzero intel96 0x3.b99798p-4 : 0x3.a8baac02f578491cp-4 : inexact-ok
+= tanh upward intel96 0x3.b99798p-4 : 0x3.a8baac02f578492p-4 : inexact-ok
+= tanh downward m68k96 0x3.b99798p-4 : 0x3.a8baac02f578491cp-4 : inexact-ok
+= tanh tonearest m68k96 0x3.b99798p-4 : 0x3.a8baac02f578492p-4 : inexact-ok
+= tanh towardzero m68k96 0x3.b99798p-4 : 0x3.a8baac02f578491cp-4 : inexact-ok
+= tanh upward m68k96 0x3.b99798p-4 : 0x3.a8baac02f578492p-4 : inexact-ok
+= tanh downward binary128 0x3.b99798p-4 : 0x3.a8baac02f578491e7a245d926178p-4 : inexact-ok
+= tanh tonearest binary128 0x3.b99798p-4 : 0x3.a8baac02f578491e7a245d92617ap-4 : inexact-ok
+= tanh towardzero binary128 0x3.b99798p-4 : 0x3.a8baac02f578491e7a245d926178p-4 : inexact-ok
+= tanh upward binary128 0x3.b99798p-4 : 0x3.a8baac02f578491e7a245d92617ap-4 : inexact-ok
+= tanh downward ibm128 0x3.b99798p-4 : 0x3.a8baac02f578491e7a245d9261p-4 : inexact-ok
+= tanh tonearest ibm128 0x3.b99798p-4 : 0x3.a8baac02f578491e7a245d9261p-4 : inexact-ok
+= tanh towardzero ibm128 0x3.b99798p-4 : 0x3.a8baac02f578491e7a245d9261p-4 : inexact-ok
+= tanh upward ibm128 0x3.b99798p-4 : 0x3.a8baac02f578491e7a245d9262p-4 : inexact-ok
+= tanh downward binary64 0x3.b9979a543d0fcp-4 : 0x3.a8baae38037e2p-4 : inexact-ok
+= tanh tonearest binary64 0x3.b9979a543d0fcp-4 : 0x3.a8baae38037e4p-4 : inexact-ok
+= tanh towardzero binary64 0x3.b9979a543d0fcp-4 : 0x3.a8baae38037e2p-4 : inexact-ok
+= tanh upward binary64 0x3.b9979a543d0fcp-4 : 0x3.a8baae38037e4p-4 : inexact-ok
+= tanh downward intel96 0x3.b9979a543d0fcp-4 : 0x3.a8baae38037e30fcp-4 : inexact-ok
+= tanh tonearest intel96 0x3.b9979a543d0fcp-4 : 0x3.a8baae38037e31p-4 : inexact-ok
+= tanh towardzero intel96 0x3.b9979a543d0fcp-4 : 0x3.a8baae38037e30fcp-4 : inexact-ok
+= tanh upward intel96 0x3.b9979a543d0fcp-4 : 0x3.a8baae38037e31p-4 : inexact-ok
+= tanh downward m68k96 0x3.b9979a543d0fcp-4 : 0x3.a8baae38037e30fcp-4 : inexact-ok
+= tanh tonearest m68k96 0x3.b9979a543d0fcp-4 : 0x3.a8baae38037e31p-4 : inexact-ok
+= tanh towardzero m68k96 0x3.b9979a543d0fcp-4 : 0x3.a8baae38037e30fcp-4 : inexact-ok
+= tanh upward m68k96 0x3.b9979a543d0fcp-4 : 0x3.a8baae38037e31p-4 : inexact-ok
+= tanh downward binary128 0x3.b9979a543d0fcp-4 : 0x3.a8baae38037e30fe8c8253c51892p-4 : inexact-ok
+= tanh tonearest binary128 0x3.b9979a543d0fcp-4 : 0x3.a8baae38037e30fe8c8253c51894p-4 : inexact-ok
+= tanh towardzero binary128 0x3.b9979a543d0fcp-4 : 0x3.a8baae38037e30fe8c8253c51892p-4 : inexact-ok
+= tanh upward binary128 0x3.b9979a543d0fcp-4 : 0x3.a8baae38037e30fe8c8253c51894p-4 : inexact-ok
+= tanh downward ibm128 0x3.b9979a543d0fcp-4 : 0x3.a8baae38037e30fe8c8253c518p-4 : inexact-ok
+= tanh tonearest ibm128 0x3.b9979a543d0fcp-4 : 0x3.a8baae38037e30fe8c8253c519p-4 : inexact-ok
+= tanh towardzero ibm128 0x3.b9979a543d0fcp-4 : 0x3.a8baae38037e30fe8c8253c518p-4 : inexact-ok
+= tanh upward ibm128 0x3.b9979a543d0fcp-4 : 0x3.a8baae38037e30fe8c8253c519p-4 : inexact-ok
+= tanh downward binary64 0x3.b9979a543d0fap-4 : 0x3.a8baae38037ep-4 : inexact-ok
+= tanh tonearest binary64 0x3.b9979a543d0fap-4 : 0x3.a8baae38037e2p-4 : inexact-ok
+= tanh towardzero binary64 0x3.b9979a543d0fap-4 : 0x3.a8baae38037ep-4 : inexact-ok
+= tanh upward binary64 0x3.b9979a543d0fap-4 : 0x3.a8baae38037e2p-4 : inexact-ok
+= tanh downward intel96 0x3.b9979a543d0fap-4 : 0x3.a8baae38037e12a8p-4 : inexact-ok
+= tanh tonearest intel96 0x3.b9979a543d0fap-4 : 0x3.a8baae38037e12acp-4 : inexact-ok
+= tanh towardzero intel96 0x3.b9979a543d0fap-4 : 0x3.a8baae38037e12a8p-4 : inexact-ok
+= tanh upward intel96 0x3.b9979a543d0fap-4 : 0x3.a8baae38037e12acp-4 : inexact-ok
+= tanh downward m68k96 0x3.b9979a543d0fap-4 : 0x3.a8baae38037e12a8p-4 : inexact-ok
+= tanh tonearest m68k96 0x3.b9979a543d0fap-4 : 0x3.a8baae38037e12acp-4 : inexact-ok
+= tanh towardzero m68k96 0x3.b9979a543d0fap-4 : 0x3.a8baae38037e12a8p-4 : inexact-ok
+= tanh upward m68k96 0x3.b9979a543d0fap-4 : 0x3.a8baae38037e12acp-4 : inexact-ok
+= tanh downward binary128 0x3.b9979a543d0fap-4 : 0x3.a8baae38037e12aaff36972c4886p-4 : inexact-ok
+= tanh tonearest binary128 0x3.b9979a543d0fap-4 : 0x3.a8baae38037e12aaff36972c4886p-4 : inexact-ok
+= tanh towardzero binary128 0x3.b9979a543d0fap-4 : 0x3.a8baae38037e12aaff36972c4886p-4 : inexact-ok
+= tanh upward binary128 0x3.b9979a543d0fap-4 : 0x3.a8baae38037e12aaff36972c4888p-4 : inexact-ok
+= tanh downward ibm128 0x3.b9979a543d0fap-4 : 0x3.a8baae38037e12aaff36972c48p-4 : inexact-ok
+= tanh tonearest ibm128 0x3.b9979a543d0fap-4 : 0x3.a8baae38037e12aaff36972c49p-4 : inexact-ok
+= tanh towardzero ibm128 0x3.b9979a543d0fap-4 : 0x3.a8baae38037e12aaff36972c48p-4 : inexact-ok
+= tanh upward ibm128 0x3.b9979a543d0fap-4 : 0x3.a8baae38037e12aaff36972c49p-4 : inexact-ok
+= tanh downward intel96 0x3.b9979a543d0fbfa8p-4 : 0x3.a8baae38037e30a8p-4 : inexact-ok
+= tanh tonearest intel96 0x3.b9979a543d0fbfa8p-4 : 0x3.a8baae38037e30acp-4 : inexact-ok
+= tanh towardzero intel96 0x3.b9979a543d0fbfa8p-4 : 0x3.a8baae38037e30a8p-4 : inexact-ok
+= tanh upward intel96 0x3.b9979a543d0fbfa8p-4 : 0x3.a8baae38037e30acp-4 : inexact-ok
+= tanh downward m68k96 0x3.b9979a543d0fbfa8p-4 : 0x3.a8baae38037e30a8p-4 : inexact-ok
+= tanh tonearest m68k96 0x3.b9979a543d0fbfa8p-4 : 0x3.a8baae38037e30acp-4 : inexact-ok
+= tanh towardzero m68k96 0x3.b9979a543d0fbfa8p-4 : 0x3.a8baae38037e30a8p-4 : inexact-ok
+= tanh upward m68k96 0x3.b9979a543d0fbfa8p-4 : 0x3.a8baae38037e30acp-4 : inexact-ok
+= tanh downward binary128 0x3.b9979a543d0fbfa8p-4 : 0x3.a8baae38037e30ab26bdc37e7456p-4 : inexact-ok
+= tanh tonearest binary128 0x3.b9979a543d0fbfa8p-4 : 0x3.a8baae38037e30ab26bdc37e7458p-4 : inexact-ok
+= tanh towardzero binary128 0x3.b9979a543d0fbfa8p-4 : 0x3.a8baae38037e30ab26bdc37e7456p-4 : inexact-ok
+= tanh upward binary128 0x3.b9979a543d0fbfa8p-4 : 0x3.a8baae38037e30ab26bdc37e7458p-4 : inexact-ok
+= tanh downward ibm128 0x3.b9979a543d0fbfa8p-4 : 0x3.a8baae38037e30ab26bdc37e74p-4 : inexact-ok
+= tanh tonearest ibm128 0x3.b9979a543d0fbfa8p-4 : 0x3.a8baae38037e30ab26bdc37e74p-4 : inexact-ok
+= tanh towardzero ibm128 0x3.b9979a543d0fbfa8p-4 : 0x3.a8baae38037e30ab26bdc37e74p-4 : inexact-ok
+= tanh upward ibm128 0x3.b9979a543d0fbfa8p-4 : 0x3.a8baae38037e30ab26bdc37e75p-4 : inexact-ok
 tanh max
 = tanh downward binary32 0xf.fffffp+124 : 0xf.fffffp-4 : inexact-ok
 = tanh tonearest binary32 0xf.fffffp+124 : 0x1p+0 : inexact-ok
diff --git a/sysdeps/x86_64/fpu/libm-test-ulps b/sysdeps/x86_64/fpu/libm-test-ulps
index 633d2ab8e4..7deec8daf5 100644
--- a/sysdeps/x86_64/fpu/libm-test-ulps
+++ b/sysdeps/x86_64/fpu/libm-test-ulps
@@ -2,9 +2,10 @@
 
 # Maximal error of functions:
 Function: "acos":
+double: 1
 float: 1
 float128: 1
-ldouble: 1
+ldouble: 2
 
 Function: "acos_downward":
 double: 1
@@ -27,8 +28,8 @@ ldouble: 2
 Function: "acosh":
 double: 2
 float: 2
-float128: 2
-ldouble: 2
+float128: 4
+ldouble: 3
 
 Function: "acosh_downward":
 double: 2
@@ -45,10 +46,11 @@ ldouble: 4
 Function: "acosh_upward":
 double: 2
 float: 2
-float128: 2
+float128: 3
 ldouble: 3
 
 Function: "asin":
+double: 1
 float: 1
 float128: 1
 ldouble: 1
@@ -74,7 +76,7 @@ ldouble: 1
 Function: "asinh":
 double: 2
 float: 2
-float128: 3
+float128: 4
 ldouble: 3
 
 Function: "asinh_downward":
@@ -101,8 +103,8 @@ float128: 1
 ldouble: 1
 
 Function: "atan2":
-float: 1
-float128: 1
+float: 2
+float128: 2
 ldouble: 1
 
 Function: "atan2_downward":
@@ -144,7 +146,7 @@ ldouble: 1
 Function: "atanh":
 double: 2
 float: 2
-float128: 3
+float128: 4
 ldouble: 3
 
 Function: "atanh_downward":
@@ -762,7 +764,7 @@ ldouble: 1
 Function: "cos":
 double: 1
 float: 1
-float128: 1
+float128: 2
 ldouble: 1
 
 Function: "cos_downward":
@@ -806,20 +808,20 @@ float: 1
 Function: "cosh":
 double: 2
 float: 2
-float128: 1
-ldouble: 2
+float128: 2
+ldouble: 3
 
 Function: "cosh_downward":
 double: 3
 float: 1
-float128: 2
+float128: 3
 ldouble: 3
 
 Function: "cosh_towardzero":
 double: 3
 float: 1
-float128: 2
-ldouble: 2
+float128: 3
+ldouble: 3
 
 Function: "cosh_upward":
 double: 2
@@ -1137,8 +1139,8 @@ ldouble: 1
 Function: "erfc":
 double: 5
 float: 3
-float128: 2
-ldouble: 3
+float128: 4
+ldouble: 5
 
 Function: "erfc_downward":
 double: 5
@@ -1250,8 +1252,8 @@ float: 1
 Function: "expm1":
 double: 1
 float: 1
-float128: 1
-ldouble: 2
+float128: 2
+ldouble: 3
 
 Function: "expm1_downward":
 double: 1
@@ -1416,7 +1418,7 @@ ldouble: 1
 Function: "log10":
 double: 2
 float: 2
-float128: 1
+float128: 2
 ldouble: 1
 
 Function: "log10_downward":
@@ -1440,7 +1442,7 @@ ldouble: 1
 Function: "log1p":
 double: 1
 float: 1
-float128: 2
+float128: 3
 ldouble: 2
 
 Function: "log1p_downward":
@@ -1464,7 +1466,7 @@ ldouble: 3
 Function: "log2":
 double: 2
 float: 1
-float128: 2
+float128: 3
 ldouble: 1
 
 Function: "log2_downward":
@@ -1568,8 +1570,8 @@ float: 3
 Function: "sin":
 double: 1
 float: 1
-float128: 1
-ldouble: 1
+float128: 2
+ldouble: 2
 
 Function: "sin_downward":
 double: 1
@@ -1656,7 +1658,7 @@ Function: "sinh":
 double: 2
 float: 2
 float128: 2
-ldouble: 2
+ldouble: 3
 
 Function: "sinh_downward":
 double: 3