about summary refs log tree commit diff
path: root/math
diff options
context:
space:
mode:
authorJoseph Myers <joseph@codesourcery.com>2013-12-18 11:38:27 +0000
committerJoseph Myers <joseph@codesourcery.com>2013-12-18 11:38:27 +0000
commit2dec468fd82c6d968f622c2c519fcb8dc09bddac (patch)
treeebc7e3f72a6474d7aa3f6a042bb01a2917562bc3 /math
parent4d84e6addd62bdc256627af334ba85489112e008 (diff)
downloadglibc-2dec468fd82c6d968f622c2c519fcb8dc09bddac.tar.gz
glibc-2dec468fd82c6d968f622c2c519fcb8dc09bddac.tar.xz
glibc-2dec468fd82c6d968f622c2c519fcb8dc09bddac.zip
Fix ldbl-128 logl for subnormals (bug 16338).
This patch fixes bug 16338, ldbl-128 logl not handling subnormals
(with consequent inaccuracy for lgammal as well).  The fix is simply
to use __frexpl when determining the exponent, as done already in
log2l and log10l.  Given the lack of testing of small arguments to any
of the log* functions, appropriate tests are added for all of them.

Tested x86_64 and x86 and ulps updated accordingly, and spot tests
also run for mips64 to confirm the ldbl-128 fix.

Note that while this fixes lgammal inaccuracy for small positive
arguments, I suspect that there will still be problems with spurious
underflows in that case.

	* sysdeps/ieee754/ldbl-128/e_logl.c (__ieee754_logl): Use __frexpl
	to determine exponent and adjust argument to have exponent of -1.
	* math/auto-libm-test-in: Add more tests of log, log10, log1p and
	log2.
	* math/auto-libm-test-out: Regenerated.
	* sysdeps/x86_64/fpu/libm-test-ulps: Update.
Diffstat (limited to 'math')
-rw-r--r--math/auto-libm-test-in11
-rw-r--r--math/auto-libm-test-out790
2 files changed, 801 insertions, 0 deletions
diff --git a/math/auto-libm-test-in b/math/auto-libm-test-in
index dd4fd22886..30e1ec6b38 100644
--- a/math/auto-libm-test-in
+++ b/math/auto-libm-test-in
@@ -414,6 +414,8 @@ log 1/e
 log 2
 log 10
 log 0.75
+log min
+log min_subnorm
 
 log10 1
 log10 0.1
@@ -422,12 +424,19 @@ log10 100.0
 log10 10000.0
 log10 e
 log10 0.75
+log10 min
+log10 min_subnorm
 
 log1p 0
 log1p -0
 log1p e-1
 log1p -0.25
 log1p -0.875
+# Bug 16339: underflow exception may be missing.
+log1p min missing-underflow
+log1p min_subnorm missing-underflow
+log1p -min missing-underflow
+log1p -min_subnorm missing-underflow
 
 log2 1
 log2 e
@@ -435,6 +444,8 @@ log2 2.0
 log2 16.0
 log2 256.0
 log2 0.75
+log2 min
+log2 min_subnorm
 
 pow 0 0
 pow 0 -0
diff --git a/math/auto-libm-test-out b/math/auto-libm-test-out
index 7076b687ae..ff55c14271 100644
--- a/math/auto-libm-test-out
+++ b/math/auto-libm-test-out
@@ -26059,6 +26059,164 @@ log 0.75
 = log tonearest ldbl-128ibm 0xcp-4L : -0x4.9a58844d36e49e0efadd9db02ap-4L : inexact-ok
 = log towardzero ldbl-128ibm 0xcp-4L : -0x4.9a58844d36e49e0efadd9db02ap-4L : inexact-ok
 = log upward ldbl-128ibm 0xcp-4L : -0x4.9a58844d36e49e0efadd9db02ap-4L : inexact-ok
+log min
+= log downward flt-32 0x4p-128f : -0x5.75628p+4f : inexact-ok
+= log tonearest flt-32 0x4p-128f : -0x5.75628p+4f : inexact-ok
+= log towardzero flt-32 0x4p-128f : -0x5.756278p+4f : inexact-ok
+= log upward flt-32 0x4p-128f : -0x5.756278p+4f : inexact-ok
+= log downward dbl-64 0x4p-128 : -0x5.75627cbf9442p+4 : inexact-ok
+= log tonearest dbl-64 0x4p-128 : -0x5.75627cbf9441cp+4 : inexact-ok
+= log towardzero dbl-64 0x4p-128 : -0x5.75627cbf9441cp+4 : inexact-ok
+= log upward dbl-64 0x4p-128 : -0x5.75627cbf9441cp+4 : inexact-ok
+= log downward ldbl-96-intel 0x4p-128L : -0x5.75627cbf9441de3p+4L : inexact-ok
+= log tonearest ldbl-96-intel 0x4p-128L : -0x5.75627cbf9441de28p+4L : inexact-ok
+= log towardzero ldbl-96-intel 0x4p-128L : -0x5.75627cbf9441de28p+4L : inexact-ok
+= log upward ldbl-96-intel 0x4p-128L : -0x5.75627cbf9441de28p+4L : inexact-ok
+= log downward ldbl-96-m68k 0x4p-128L : -0x5.75627cbf9441de3p+4L : inexact-ok
+= log tonearest ldbl-96-m68k 0x4p-128L : -0x5.75627cbf9441de28p+4L : inexact-ok
+= log towardzero ldbl-96-m68k 0x4p-128L : -0x5.75627cbf9441de28p+4L : inexact-ok
+= log upward ldbl-96-m68k 0x4p-128L : -0x5.75627cbf9441de28p+4L : inexact-ok
+= log downward ldbl-128 0x4p-128L : -0x5.75627cbf9441de28d5e1264d1f1cp+4L : inexact-ok
+= log tonearest ldbl-128 0x4p-128L : -0x5.75627cbf9441de28d5e1264d1f18p+4L : inexact-ok
+= log towardzero ldbl-128 0x4p-128L : -0x5.75627cbf9441de28d5e1264d1f18p+4L : inexact-ok
+= log upward ldbl-128 0x4p-128L : -0x5.75627cbf9441de28d5e1264d1f18p+4L : inexact-ok
+= log downward ldbl-128ibm 0x4p-128L : -0x5.75627cbf9441de28d5e1264d2p+4L : inexact-ok
+= log tonearest ldbl-128ibm 0x4p-128L : -0x5.75627cbf9441de28d5e1264d2p+4L : inexact-ok
+= log towardzero ldbl-128ibm 0x4p-128L : -0x5.75627cbf9441de28d5e1264d1ep+4L : inexact-ok
+= log upward ldbl-128ibm 0x4p-128L : -0x5.75627cbf9441de28d5e1264d1ep+4L : inexact-ok
+= log downward dbl-64 0x4p-1024 : -0x2.c4657baf579a6p+8 : inexact-ok
+= log tonearest dbl-64 0x4p-1024 : -0x2.c4657baf579a4p+8 : inexact-ok
+= log towardzero dbl-64 0x4p-1024 : -0x2.c4657baf579a4p+8 : inexact-ok
+= log upward dbl-64 0x4p-1024 : -0x2.c4657baf579a4p+8 : inexact-ok
+= log downward ldbl-96-intel 0x4p-1024L : -0x2.c4657baf579a47bcp+8L : inexact-ok
+= log tonearest ldbl-96-intel 0x4p-1024L : -0x2.c4657baf579a47bcp+8L : inexact-ok
+= log towardzero ldbl-96-intel 0x4p-1024L : -0x2.c4657baf579a47b8p+8L : inexact-ok
+= log upward ldbl-96-intel 0x4p-1024L : -0x2.c4657baf579a47b8p+8L : inexact-ok
+= log downward ldbl-96-m68k 0x4p-1024L : -0x2.c4657baf579a47bcp+8L : inexact-ok
+= log tonearest ldbl-96-m68k 0x4p-1024L : -0x2.c4657baf579a47bcp+8L : inexact-ok
+= log towardzero ldbl-96-m68k 0x4p-1024L : -0x2.c4657baf579a47b8p+8L : inexact-ok
+= log upward ldbl-96-m68k 0x4p-1024L : -0x2.c4657baf579a47b8p+8L : inexact-ok
+= log downward ldbl-128 0x4p-1024L : -0x2.c4657baf579a47bbcffb06f8dfc4p+8L : inexact-ok
+= log tonearest ldbl-128 0x4p-1024L : -0x2.c4657baf579a47bbcffb06f8dfc4p+8L : inexact-ok
+= log towardzero ldbl-128 0x4p-1024L : -0x2.c4657baf579a47bbcffb06f8dfc2p+8L : inexact-ok
+= log upward ldbl-128 0x4p-1024L : -0x2.c4657baf579a47bbcffb06f8dfc2p+8L : inexact-ok
+= log downward ldbl-128ibm 0x4p-1024L : -0x2.c4657baf579a47bbcffb06f8ep+8L : inexact-ok
+= log tonearest ldbl-128ibm 0x4p-1024L : -0x2.c4657baf579a47bbcffb06f8ep+8L : inexact-ok
+= log towardzero ldbl-128ibm 0x4p-1024L : -0x2.c4657baf579a47bbcffb06f8dfp+8L : inexact-ok
+= log upward ldbl-128ibm 0x4p-1024L : -0x2.c4657baf579a47bbcffb06f8dfp+8L : inexact-ok
+= log downward ldbl-96-intel 0x4p-16384L : -0x2.c5b2319c4843accp+12L : inexact-ok
+= log tonearest ldbl-96-intel 0x4p-16384L : -0x2.c5b2319c4843accp+12L : inexact-ok
+= log towardzero ldbl-96-intel 0x4p-16384L : -0x2.c5b2319c4843acbcp+12L : inexact-ok
+= log upward ldbl-96-intel 0x4p-16384L : -0x2.c5b2319c4843acbcp+12L : inexact-ok
+= log downward ldbl-96-m68k 0x4p-16384L : -0x2.c5b2319c4843accp+12L : inexact-ok
+= log tonearest ldbl-96-m68k 0x4p-16384L : -0x2.c5b2319c4843accp+12L : inexact-ok
+= log towardzero ldbl-96-m68k 0x4p-16384L : -0x2.c5b2319c4843acbcp+12L : inexact-ok
+= log upward ldbl-96-m68k 0x4p-16384L : -0x2.c5b2319c4843acbcp+12L : inexact-ok
+= log downward ldbl-128 0x4p-16384L : -0x2.c5b2319c4843acbff21591e99cccp+12L : inexact-ok
+= log tonearest ldbl-128 0x4p-16384L : -0x2.c5b2319c4843acbff21591e99ccap+12L : inexact-ok
+= log towardzero ldbl-128 0x4p-16384L : -0x2.c5b2319c4843acbff21591e99ccap+12L : inexact-ok
+= log upward ldbl-128 0x4p-16384L : -0x2.c5b2319c4843acbff21591e99ccap+12L : inexact-ok
+= log downward ldbl-96-intel 0x2p-16384L : -0x2.c5bd48bdc7c0c9b8p+12L : inexact-ok
+= log tonearest ldbl-96-intel 0x2p-16384L : -0x2.c5bd48bdc7c0c9b8p+12L : inexact-ok
+= log towardzero ldbl-96-intel 0x2p-16384L : -0x2.c5bd48bdc7c0c9b4p+12L : inexact-ok
+= log upward ldbl-96-intel 0x2p-16384L : -0x2.c5bd48bdc7c0c9b4p+12L : inexact-ok
+= log downward ldbl-96-m68k 0x2p-16384L : -0x2.c5bd48bdc7c0c9b8p+12L : inexact-ok
+= log tonearest ldbl-96-m68k 0x2p-16384L : -0x2.c5bd48bdc7c0c9b8p+12L : inexact-ok
+= log towardzero ldbl-96-m68k 0x2p-16384L : -0x2.c5bd48bdc7c0c9b4p+12L : inexact-ok
+= log upward ldbl-96-m68k 0x2p-16384L : -0x2.c5bd48bdc7c0c9b4p+12L : inexact-ok
+= log downward ldbl-128 0x2p-16384L : -0x2.c5bd48bdc7c0c9b78cd23024d64cp+12L : inexact-ok
+= log tonearest ldbl-128 0x2p-16384L : -0x2.c5bd48bdc7c0c9b78cd23024d64cp+12L : inexact-ok
+= log towardzero ldbl-128 0x2p-16384L : -0x2.c5bd48bdc7c0c9b78cd23024d64ap+12L : inexact-ok
+= log upward ldbl-128 0x2p-16384L : -0x2.c5bd48bdc7c0c9b78cd23024d64ap+12L : inexact-ok
+= log downward dbl-64 0x8p-972 : -0x2.9fa8dcb9092a6p+8 : inexact-ok
+= log tonearest dbl-64 0x8p-972 : -0x2.9fa8dcb9092a6p+8 : inexact-ok
+= log towardzero dbl-64 0x8p-972 : -0x2.9fa8dcb9092a4p+8 : inexact-ok
+= log upward dbl-64 0x8p-972 : -0x2.9fa8dcb9092a4p+8 : inexact-ok
+= log downward ldbl-96-intel 0x8p-972L : -0x2.9fa8dcb9092a538cp+8L : inexact-ok
+= log tonearest ldbl-96-intel 0x8p-972L : -0x2.9fa8dcb9092a538cp+8L : inexact-ok
+= log towardzero ldbl-96-intel 0x8p-972L : -0x2.9fa8dcb9092a5388p+8L : inexact-ok
+= log upward ldbl-96-intel 0x8p-972L : -0x2.9fa8dcb9092a5388p+8L : inexact-ok
+= log downward ldbl-96-m68k 0x8p-972L : -0x2.9fa8dcb9092a538cp+8L : inexact-ok
+= log tonearest ldbl-96-m68k 0x8p-972L : -0x2.9fa8dcb9092a538cp+8L : inexact-ok
+= log towardzero ldbl-96-m68k 0x8p-972L : -0x2.9fa8dcb9092a5388p+8L : inexact-ok
+= log upward ldbl-96-m68k 0x8p-972L : -0x2.9fa8dcb9092a5388p+8L : inexact-ok
+= log downward ldbl-128 0x8p-972L : -0x2.9fa8dcb9092a538b3f2ee2ca66f4p+8L : inexact-ok
+= log tonearest ldbl-128 0x8p-972L : -0x2.9fa8dcb9092a538b3f2ee2ca66f2p+8L : inexact-ok
+= log towardzero ldbl-128 0x8p-972L : -0x2.9fa8dcb9092a538b3f2ee2ca66f2p+8L : inexact-ok
+= log upward ldbl-128 0x8p-972L : -0x2.9fa8dcb9092a538b3f2ee2ca66f2p+8L : inexact-ok
+= log downward ldbl-128ibm 0x8p-972L : -0x2.9fa8dcb9092a538b3f2ee2ca67p+8L : inexact-ok
+= log tonearest ldbl-128ibm 0x8p-972L : -0x2.9fa8dcb9092a538b3f2ee2ca67p+8L : inexact-ok
+= log towardzero ldbl-128ibm 0x8p-972L : -0x2.9fa8dcb9092a538b3f2ee2ca66p+8L : inexact-ok
+= log upward ldbl-128ibm 0x8p-972L : -0x2.9fa8dcb9092a538b3f2ee2ca66p+8L : inexact-ok
+log min_subnorm
+= log downward flt-32 0x8p-152f : -0x6.74768p+4f : inexact-ok
+= log tonearest flt-32 0x8p-152f : -0x6.74768p+4f : inexact-ok
+= log towardzero flt-32 0x8p-152f : -0x6.747678p+4f : inexact-ok
+= log upward flt-32 0x8p-152f : -0x6.747678p+4f : inexact-ok
+= log downward dbl-64 0x8p-152 : -0x6.74767f33d1dc4p+4 : inexact-ok
+= log tonearest dbl-64 0x8p-152 : -0x6.74767f33d1dcp+4 : inexact-ok
+= log towardzero dbl-64 0x8p-152 : -0x6.74767f33d1dcp+4 : inexact-ok
+= log upward dbl-64 0x8p-152 : -0x6.74767f33d1dcp+4 : inexact-ok
+= log downward ldbl-96-intel 0x8p-152L : -0x6.74767f33d1dc1d1p+4L : inexact-ok
+= log tonearest ldbl-96-intel 0x8p-152L : -0x6.74767f33d1dc1d1p+4L : inexact-ok
+= log towardzero ldbl-96-intel 0x8p-152L : -0x6.74767f33d1dc1d08p+4L : inexact-ok
+= log upward ldbl-96-intel 0x8p-152L : -0x6.74767f33d1dc1d08p+4L : inexact-ok
+= log downward ldbl-96-m68k 0x8p-152L : -0x6.74767f33d1dc1d1p+4L : inexact-ok
+= log tonearest ldbl-96-m68k 0x8p-152L : -0x6.74767f33d1dc1d1p+4L : inexact-ok
+= log towardzero ldbl-96-m68k 0x8p-152L : -0x6.74767f33d1dc1d08p+4L : inexact-ok
+= log upward ldbl-96-m68k 0x8p-152L : -0x6.74767f33d1dc1d08p+4L : inexact-ok
+= log downward ldbl-128 0x8p-152L : -0x6.74767f33d1dc1d0fc8187877a4c8p+4L : inexact-ok
+= log tonearest ldbl-128 0x8p-152L : -0x6.74767f33d1dc1d0fc8187877a4c4p+4L : inexact-ok
+= log towardzero ldbl-128 0x8p-152L : -0x6.74767f33d1dc1d0fc8187877a4c4p+4L : inexact-ok
+= log upward ldbl-128 0x8p-152L : -0x6.74767f33d1dc1d0fc8187877a4c4p+4L : inexact-ok
+= log downward ldbl-128ibm 0x8p-152L : -0x6.74767f33d1dc1d0fc8187877a6p+4L : inexact-ok
+= log tonearest ldbl-128ibm 0x8p-152L : -0x6.74767f33d1dc1d0fc8187877a4p+4L : inexact-ok
+= log towardzero ldbl-128ibm 0x8p-152L : -0x6.74767f33d1dc1d0fc8187877a4p+4L : inexact-ok
+= log upward ldbl-128ibm 0x8p-152L : -0x6.74767f33d1dc1d0fc8187877a4p+4L : inexact-ok
+= log downward dbl-64 0x4p-1076 : -0x2.e870a88dae388p+8 : inexact-ok
+= log tonearest dbl-64 0x4p-1076 : -0x2.e870a88dae386p+8 : inexact-ok
+= log towardzero dbl-64 0x4p-1076 : -0x2.e870a88dae386p+8 : inexact-ok
+= log upward dbl-64 0x4p-1076 : -0x2.e870a88dae386p+8 : inexact-ok
+= log downward ldbl-96-intel 0x4p-1076L : -0x2.e870a88dae386c74p+8L : inexact-ok
+= log tonearest ldbl-96-intel 0x4p-1076L : -0x2.e870a88dae386c74p+8L : inexact-ok
+= log towardzero ldbl-96-intel 0x4p-1076L : -0x2.e870a88dae386c7p+8L : inexact-ok
+= log upward ldbl-96-intel 0x4p-1076L : -0x2.e870a88dae386c7p+8L : inexact-ok
+= log downward ldbl-96-m68k 0x4p-1076L : -0x2.e870a88dae386c74p+8L : inexact-ok
+= log tonearest ldbl-96-m68k 0x4p-1076L : -0x2.e870a88dae386c74p+8L : inexact-ok
+= log towardzero ldbl-96-m68k 0x4p-1076L : -0x2.e870a88dae386c7p+8L : inexact-ok
+= log upward ldbl-96-m68k 0x4p-1076L : -0x2.e870a88dae386c7p+8L : inexact-ok
+= log downward ldbl-128 0x4p-1076L : -0x2.e870a88dae386c72b4fd4773c092p+8L : inexact-ok
+= log tonearest ldbl-128 0x4p-1076L : -0x2.e870a88dae386c72b4fd4773c09p+8L : inexact-ok
+= log towardzero ldbl-128 0x4p-1076L : -0x2.e870a88dae386c72b4fd4773c09p+8L : inexact-ok
+= log upward ldbl-128 0x4p-1076L : -0x2.e870a88dae386c72b4fd4773c09p+8L : inexact-ok
+= log downward ldbl-128ibm 0x4p-1076L : -0x2.e870a88dae386c72b4fd4773c1p+8L : inexact-ok
+= log tonearest ldbl-128ibm 0x4p-1076L : -0x2.e870a88dae386c72b4fd4773c1p+8L : inexact-ok
+= log towardzero ldbl-128ibm 0x4p-1076L : -0x2.e870a88dae386c72b4fd4773cp+8L : inexact-ok
+= log upward ldbl-128ibm 0x4p-1076L : -0x2.e870a88dae386c72b4fd4773cp+8L : inexact-ok
+= log downward ldbl-96-intel 0x8p-16448L : -0x2.c86ce2daa80dcdbp+12L : inexact-ok
+= log tonearest ldbl-96-intel 0x8p-16448L : -0x2.c86ce2daa80dcdbp+12L : inexact-ok
+= log towardzero ldbl-96-intel 0x8p-16448L : -0x2.c86ce2daa80dcdacp+12L : inexact-ok
+= log upward ldbl-96-intel 0x8p-16448L : -0x2.c86ce2daa80dcdacp+12L : inexact-ok
+= log downward ldbl-96-m68k 0x8p-16448L : -0x2.c86ce2daa80dcdbp+12L : inexact-ok
+= log tonearest ldbl-96-m68k 0x8p-16448L : -0x2.c86ce2daa80dcdbp+12L : inexact-ok
+= log towardzero ldbl-96-m68k 0x8p-16448L : -0x2.c86ce2daa80dcdacp+12L : inexact-ok
+= log upward ldbl-96-m68k 0x8p-16448L : -0x2.c86ce2daa80dcdacp+12L : inexact-ok
+= log downward ldbl-128 0x8p-16448L : -0x2.c86ce2daa80dcdaf0680827cc35cp+12L : inexact-ok
+= log tonearest ldbl-128 0x8p-16448L : -0x2.c86ce2daa80dcdaf0680827cc35ap+12L : inexact-ok
+= log towardzero ldbl-128 0x8p-16448L : -0x2.c86ce2daa80dcdaf0680827cc35ap+12L : inexact-ok
+= log upward ldbl-128 0x8p-16448L : -0x2.c86ce2daa80dcdaf0680827cc35ap+12L : inexact-ok
+= log downward ldbl-96-m68k 0x4p-16448L : -0x2.c877f9fc278aeaa8p+12L : inexact-ok
+= log tonearest ldbl-96-m68k 0x4p-16448L : -0x2.c877f9fc278aeaa8p+12L : inexact-ok
+= log towardzero ldbl-96-m68k 0x4p-16448L : -0x2.c877f9fc278aeaa4p+12L : inexact-ok
+= log upward ldbl-96-m68k 0x4p-16448L : -0x2.c877f9fc278aeaa4p+12L : inexact-ok
+= log downward ldbl-128 0x4p-16448L : -0x2.c877f9fc278aeaa6a13d20b7fcdcp+12L : inexact-ok
+= log tonearest ldbl-128 0x4p-16448L : -0x2.c877f9fc278aeaa6a13d20b7fcdap+12L : inexact-ok
+= log towardzero ldbl-128 0x4p-16448L : -0x2.c877f9fc278aeaa6a13d20b7fcdap+12L : inexact-ok
+= log upward ldbl-128 0x4p-16448L : -0x2.c877f9fc278aeaa6a13d20b7fcdap+12L : inexact-ok
+= log downward ldbl-128 0x4p-16496L : -0x2.ca8c50440f005913a49acbd2c4e8p+12L : inexact-ok
+= log tonearest ldbl-128 0x4p-16496L : -0x2.ca8c50440f005913a49acbd2c4e6p+12L : inexact-ok
+= log towardzero ldbl-128 0x4p-16496L : -0x2.ca8c50440f005913a49acbd2c4e6p+12L : inexact-ok
+= log upward ldbl-128 0x4p-16496L : -0x2.ca8c50440f005913a49acbd2c4e6p+12L : inexact-ok
 log10 1
 = log10 downward flt-32 0x1p+0f : 0x0p+0f : inexact-ok
 = log10 tonearest flt-32 0x1p+0f : 0x0p+0f : inexact-ok
@@ -26474,6 +26632,164 @@ log10 0.75
 = log10 tonearest ldbl-128ibm 0xcp-4L : -0x1.ffbfc2bbc780375837c4b0b84fp-4L : inexact-ok
 = log10 towardzero ldbl-128ibm 0xcp-4L : -0x1.ffbfc2bbc780375837c4b0b84fp-4L : inexact-ok
 = log10 upward ldbl-128ibm 0xcp-4L : -0x1.ffbfc2bbc780375837c4b0b84fp-4L : inexact-ok
+log10 min
+= log10 downward flt-32 0x4p-128f : -0x2.5ee064p+4f : inexact-ok
+= log10 tonearest flt-32 0x4p-128f : -0x2.5ee06p+4f : inexact-ok
+= log10 towardzero flt-32 0x4p-128f : -0x2.5ee06p+4f : inexact-ok
+= log10 upward flt-32 0x4p-128f : -0x2.5ee06p+4f : inexact-ok
+= log10 downward dbl-64 0x4p-128 : -0x2.5ee0606b9f82ep+4 : inexact-ok
+= log10 tonearest dbl-64 0x4p-128 : -0x2.5ee0606b9f82ep+4 : inexact-ok
+= log10 towardzero dbl-64 0x4p-128 : -0x2.5ee0606b9f82cp+4 : inexact-ok
+= log10 upward dbl-64 0x4p-128 : -0x2.5ee0606b9f82cp+4 : inexact-ok
+= log10 downward ldbl-96-intel 0x4p-128L : -0x2.5ee0606b9f82deecp+4L : inexact-ok
+= log10 tonearest ldbl-96-intel 0x4p-128L : -0x2.5ee0606b9f82dee8p+4L : inexact-ok
+= log10 towardzero ldbl-96-intel 0x4p-128L : -0x2.5ee0606b9f82dee8p+4L : inexact-ok
+= log10 upward ldbl-96-intel 0x4p-128L : -0x2.5ee0606b9f82dee8p+4L : inexact-ok
+= log10 downward ldbl-96-m68k 0x4p-128L : -0x2.5ee0606b9f82deecp+4L : inexact-ok
+= log10 tonearest ldbl-96-m68k 0x4p-128L : -0x2.5ee0606b9f82dee8p+4L : inexact-ok
+= log10 towardzero ldbl-96-m68k 0x4p-128L : -0x2.5ee0606b9f82dee8p+4L : inexact-ok
+= log10 upward ldbl-96-m68k 0x4p-128L : -0x2.5ee0606b9f82dee8p+4L : inexact-ok
+= log10 downward ldbl-128 0x4p-128L : -0x2.5ee0606b9f82dee8b52cd1156d3ap+4L : inexact-ok
+= log10 tonearest ldbl-128 0x4p-128L : -0x2.5ee0606b9f82dee8b52cd1156d3ap+4L : inexact-ok
+= log10 towardzero ldbl-128 0x4p-128L : -0x2.5ee0606b9f82dee8b52cd1156d38p+4L : inexact-ok
+= log10 upward ldbl-128 0x4p-128L : -0x2.5ee0606b9f82dee8b52cd1156d38p+4L : inexact-ok
+= log10 downward ldbl-128ibm 0x4p-128L : -0x2.5ee0606b9f82dee8b52cd1156ep+4L : inexact-ok
+= log10 tonearest ldbl-128ibm 0x4p-128L : -0x2.5ee0606b9f82dee8b52cd1156dp+4L : inexact-ok
+= log10 towardzero ldbl-128ibm 0x4p-128L : -0x2.5ee0606b9f82dee8b52cd1156dp+4L : inexact-ok
+= log10 upward ldbl-128ibm 0x4p-128L : -0x2.5ee0606b9f82dee8b52cd1156dp+4L : inexact-ok
+= log10 downward dbl-64 0x4p-1024 : -0x1.33a7146f72a42p+8 : inexact-ok
+= log10 tonearest dbl-64 0x4p-1024 : -0x1.33a7146f72a42p+8 : inexact-ok
+= log10 towardzero dbl-64 0x4p-1024 : -0x1.33a7146f72a41p+8 : inexact-ok
+= log10 upward dbl-64 0x4p-1024 : -0x1.33a7146f72a41p+8 : inexact-ok
+= log10 downward ldbl-96-intel 0x4p-1024L : -0x1.33a7146f72a41f3ap+8L : inexact-ok
+= log10 tonearest ldbl-96-intel 0x4p-1024L : -0x1.33a7146f72a41f3ap+8L : inexact-ok
+= log10 towardzero ldbl-96-intel 0x4p-1024L : -0x1.33a7146f72a41f38p+8L : inexact-ok
+= log10 upward ldbl-96-intel 0x4p-1024L : -0x1.33a7146f72a41f38p+8L : inexact-ok
+= log10 downward ldbl-96-m68k 0x4p-1024L : -0x1.33a7146f72a41f3ap+8L : inexact-ok
+= log10 tonearest ldbl-96-m68k 0x4p-1024L : -0x1.33a7146f72a41f3ap+8L : inexact-ok
+= log10 towardzero ldbl-96-m68k 0x4p-1024L : -0x1.33a7146f72a41f38p+8L : inexact-ok
+= log10 upward ldbl-96-m68k 0x4p-1024L : -0x1.33a7146f72a41f38p+8L : inexact-ok
+= log10 downward ldbl-128 0x4p-1024L : -0x1.33a7146f72a41f39868329fe6aeep+8L : inexact-ok
+= log10 tonearest ldbl-128 0x4p-1024L : -0x1.33a7146f72a41f39868329fe6aedp+8L : inexact-ok
+= log10 towardzero ldbl-128 0x4p-1024L : -0x1.33a7146f72a41f39868329fe6aedp+8L : inexact-ok
+= log10 upward ldbl-128 0x4p-1024L : -0x1.33a7146f72a41f39868329fe6aedp+8L : inexact-ok
+= log10 downward ldbl-128ibm 0x4p-1024L : -0x1.33a7146f72a41f39868329fe6bp+8L : inexact-ok
+= log10 tonearest ldbl-128ibm 0x4p-1024L : -0x1.33a7146f72a41f39868329fe6bp+8L : inexact-ok
+= log10 towardzero ldbl-128ibm 0x4p-1024L : -0x1.33a7146f72a41f39868329fe6a8p+8L : inexact-ok
+= log10 upward ldbl-128ibm 0x4p-1024L : -0x1.33a7146f72a41f39868329fe6a8p+8L : inexact-ok
+= log10 downward ldbl-96-intel 0x4p-16384L : -0x1.343793004f503232p+12L : inexact-ok
+= log10 tonearest ldbl-96-intel 0x4p-16384L : -0x1.343793004f503232p+12L : inexact-ok
+= log10 towardzero ldbl-96-intel 0x4p-16384L : -0x1.343793004f50323p+12L : inexact-ok
+= log10 upward ldbl-96-intel 0x4p-16384L : -0x1.343793004f50323p+12L : inexact-ok
+= log10 downward ldbl-96-m68k 0x4p-16384L : -0x1.343793004f503232p+12L : inexact-ok
+= log10 tonearest ldbl-96-m68k 0x4p-16384L : -0x1.343793004f503232p+12L : inexact-ok
+= log10 towardzero ldbl-96-m68k 0x4p-16384L : -0x1.343793004f50323p+12L : inexact-ok
+= log10 upward ldbl-96-m68k 0x4p-16384L : -0x1.343793004f50323p+12L : inexact-ok
+= log10 downward ldbl-128 0x4p-16384L : -0x1.343793004f503231a589bac27c39p+12L : inexact-ok
+= log10 tonearest ldbl-128 0x4p-16384L : -0x1.343793004f503231a589bac27c38p+12L : inexact-ok
+= log10 towardzero ldbl-128 0x4p-16384L : -0x1.343793004f503231a589bac27c38p+12L : inexact-ok
+= log10 upward ldbl-128 0x4p-16384L : -0x1.343793004f503231a589bac27c38p+12L : inexact-ok
+= log10 downward ldbl-96-intel 0x2p-16384L : -0x1.343c6405237810b2p+12L : inexact-ok
+= log10 tonearest ldbl-96-intel 0x2p-16384L : -0x1.343c6405237810b2p+12L : inexact-ok
+= log10 towardzero ldbl-96-intel 0x2p-16384L : -0x1.343c6405237810bp+12L : inexact-ok
+= log10 upward ldbl-96-intel 0x2p-16384L : -0x1.343c6405237810bp+12L : inexact-ok
+= log10 downward ldbl-96-m68k 0x2p-16384L : -0x1.343c6405237810b2p+12L : inexact-ok
+= log10 tonearest ldbl-96-m68k 0x2p-16384L : -0x1.343c6405237810b2p+12L : inexact-ok
+= log10 towardzero ldbl-96-m68k 0x2p-16384L : -0x1.343c6405237810bp+12L : inexact-ok
+= log10 upward ldbl-96-m68k 0x2p-16384L : -0x1.343c6405237810bp+12L : inexact-ok
+= log10 downward ldbl-128 0x2p-16384L : -0x1.343c6405237810b1624e370d4999p+12L : inexact-ok
+= log10 tonearest ldbl-128 0x2p-16384L : -0x1.343c6405237810b1624e370d4999p+12L : inexact-ok
+= log10 towardzero ldbl-128 0x2p-16384L : -0x1.343c6405237810b1624e370d4998p+12L : inexact-ok
+= log10 upward ldbl-128 0x2p-16384L : -0x1.343c6405237810b1624e370d4998p+12L : inexact-ok
+= log10 downward dbl-64 0x8p-972 : -0x1.23b2b470ae932p+8 : inexact-ok
+= log10 tonearest dbl-64 0x8p-972 : -0x1.23b2b470ae932p+8 : inexact-ok
+= log10 towardzero dbl-64 0x8p-972 : -0x1.23b2b470ae931p+8 : inexact-ok
+= log10 upward dbl-64 0x8p-972 : -0x1.23b2b470ae931p+8 : inexact-ok
+= log10 downward ldbl-96-intel 0x8p-972L : -0x1.23b2b470ae93181ap+8L : inexact-ok
+= log10 tonearest ldbl-96-intel 0x8p-972L : -0x1.23b2b470ae931818p+8L : inexact-ok
+= log10 towardzero ldbl-96-intel 0x8p-972L : -0x1.23b2b470ae931818p+8L : inexact-ok
+= log10 upward ldbl-96-intel 0x8p-972L : -0x1.23b2b470ae931818p+8L : inexact-ok
+= log10 downward ldbl-96-m68k 0x8p-972L : -0x1.23b2b470ae93181ap+8L : inexact-ok
+= log10 tonearest ldbl-96-m68k 0x8p-972L : -0x1.23b2b470ae931818p+8L : inexact-ok
+= log10 towardzero ldbl-96-m68k 0x8p-972L : -0x1.23b2b470ae931818p+8L : inexact-ok
+= log10 upward ldbl-96-m68k 0x8p-972L : -0x1.23b2b470ae931818p+8L : inexact-ok
+= log10 downward ldbl-128 0x8p-972L : -0x1.23b2b470ae9318183ba772361bbep+8L : inexact-ok
+= log10 tonearest ldbl-128 0x8p-972L : -0x1.23b2b470ae9318183ba772361bbdp+8L : inexact-ok
+= log10 towardzero ldbl-128 0x8p-972L : -0x1.23b2b470ae9318183ba772361bbdp+8L : inexact-ok
+= log10 upward ldbl-128 0x8p-972L : -0x1.23b2b470ae9318183ba772361bbdp+8L : inexact-ok
+= log10 downward ldbl-128ibm 0x8p-972L : -0x1.23b2b470ae9318183ba772361cp+8L : inexact-ok
+= log10 tonearest ldbl-128ibm 0x8p-972L : -0x1.23b2b470ae9318183ba772361b8p+8L : inexact-ok
+= log10 towardzero ldbl-128ibm 0x8p-972L : -0x1.23b2b470ae9318183ba772361b8p+8L : inexact-ok
+= log10 upward ldbl-128ibm 0x8p-972L : -0x1.23b2b470ae9318183ba772361b8p+8L : inexact-ok
+log10 min_subnorm
+= log10 downward flt-32 0x8p-152f : -0x2.cda7dp+4f : inexact-ok
+= log10 tonearest flt-32 0x8p-152f : -0x2.cda7dp+4f : inexact-ok
+= log10 towardzero flt-32 0x8p-152f : -0x2.cda7ccp+4f : inexact-ok
+= log10 upward flt-32 0x8p-152f : -0x2.cda7ccp+4f : inexact-ok
+= log10 downward dbl-64 0x8p-152 : -0x2.cda7cf7b34806p+4 : inexact-ok
+= log10 tonearest dbl-64 0x8p-152 : -0x2.cda7cf7b34806p+4 : inexact-ok
+= log10 towardzero dbl-64 0x8p-152 : -0x2.cda7cf7b34804p+4 : inexact-ok
+= log10 upward dbl-64 0x8p-152 : -0x2.cda7cf7b34804p+4 : inexact-ok
+= log10 downward ldbl-96-intel 0x8p-152L : -0x2.cda7cf7b348058ep+4L : inexact-ok
+= log10 tonearest ldbl-96-intel 0x8p-152L : -0x2.cda7cf7b348058ep+4L : inexact-ok
+= log10 towardzero ldbl-96-intel 0x8p-152L : -0x2.cda7cf7b348058dcp+4L : inexact-ok
+= log10 upward ldbl-96-intel 0x8p-152L : -0x2.cda7cf7b348058dcp+4L : inexact-ok
+= log10 downward ldbl-96-m68k 0x8p-152L : -0x2.cda7cf7b348058ep+4L : inexact-ok
+= log10 tonearest ldbl-96-m68k 0x8p-152L : -0x2.cda7cf7b348058ep+4L : inexact-ok
+= log10 towardzero ldbl-96-m68k 0x8p-152L : -0x2.cda7cf7b348058dcp+4L : inexact-ok
+= log10 upward ldbl-96-m68k 0x8p-152L : -0x2.cda7cf7b348058dcp+4L : inexact-ok
+= log10 downward ldbl-128 0x8p-152L : -0x2.cda7cf7b348058de5c578989157cp+4L : inexact-ok
+= log10 tonearest ldbl-128 0x8p-152L : -0x2.cda7cf7b348058de5c578989157cp+4L : inexact-ok
+= log10 towardzero ldbl-128 0x8p-152L : -0x2.cda7cf7b348058de5c578989157ap+4L : inexact-ok
+= log10 upward ldbl-128 0x8p-152L : -0x2.cda7cf7b348058de5c578989157ap+4L : inexact-ok
+= log10 downward ldbl-128ibm 0x8p-152L : -0x2.cda7cf7b348058de5c57898916p+4L : inexact-ok
+= log10 tonearest ldbl-128ibm 0x8p-152L : -0x2.cda7cf7b348058de5c57898915p+4L : inexact-ok
+= log10 towardzero ldbl-128ibm 0x8p-152L : -0x2.cda7cf7b348058de5c57898915p+4L : inexact-ok
+= log10 upward ldbl-128ibm 0x8p-152L : -0x2.cda7cf7b348058de5c57898915p+4L : inexact-ok
+= log10 downward dbl-64 0x4p-1076 : -0x1.434e6420f4374p+8 : inexact-ok
+= log10 tonearest dbl-64 0x4p-1076 : -0x1.434e6420f4374p+8 : inexact-ok
+= log10 towardzero dbl-64 0x4p-1076 : -0x1.434e6420f4373p+8 : inexact-ok
+= log10 upward dbl-64 0x4p-1076 : -0x1.434e6420f4373p+8 : inexact-ok
+= log10 downward ldbl-96-intel 0x4p-1076L : -0x1.434e6420f4373e6p+8L : inexact-ok
+= log10 tonearest ldbl-96-intel 0x4p-1076L : -0x1.434e6420f4373e6p+8L : inexact-ok
+= log10 towardzero ldbl-96-intel 0x4p-1076L : -0x1.434e6420f4373e5ep+8L : inexact-ok
+= log10 upward ldbl-96-intel 0x4p-1076L : -0x1.434e6420f4373e5ep+8L : inexact-ok
+= log10 downward ldbl-96-m68k 0x4p-1076L : -0x1.434e6420f4373e6p+8L : inexact-ok
+= log10 tonearest ldbl-96-m68k 0x4p-1076L : -0x1.434e6420f4373e6p+8L : inexact-ok
+= log10 towardzero ldbl-96-m68k 0x4p-1076L : -0x1.434e6420f4373e5ep+8L : inexact-ok
+= log10 upward ldbl-96-m68k 0x4p-1076L : -0x1.434e6420f4373e5ep+8L : inexact-ok
+= log10 downward ldbl-128 0x4p-1076L : -0x1.434e6420f4373e5f05171d19e419p+8L : inexact-ok
+= log10 tonearest ldbl-128 0x4p-1076L : -0x1.434e6420f4373e5f05171d19e418p+8L : inexact-ok
+= log10 towardzero ldbl-128 0x4p-1076L : -0x1.434e6420f4373e5f05171d19e418p+8L : inexact-ok
+= log10 upward ldbl-128 0x4p-1076L : -0x1.434e6420f4373e5f05171d19e418p+8L : inexact-ok
+= log10 downward ldbl-128ibm 0x4p-1076L : -0x1.434e6420f4373e5f05171d19e48p+8L : inexact-ok
+= log10 tonearest ldbl-128ibm 0x4p-1076L : -0x1.434e6420f4373e5f05171d19e4p+8L : inexact-ok
+= log10 towardzero ldbl-128ibm 0x4p-1076L : -0x1.434e6420f4373e5f05171d19e4p+8L : inexact-ok
+= log10 upward ldbl-128ibm 0x4p-1076L : -0x1.434e6420f4373e5f05171d19e4p+8L : inexact-ok
+= log10 downward ldbl-96-intel 0x8p-16448L : -0x1.35670330851ff3a2p+12L : inexact-ok
+= log10 tonearest ldbl-96-intel 0x8p-16448L : -0x1.35670330851ff3a2p+12L : inexact-ok
+= log10 towardzero ldbl-96-intel 0x8p-16448L : -0x1.35670330851ff3ap+12L : inexact-ok
+= log10 upward ldbl-96-intel 0x8p-16448L : -0x1.35670330851ff3ap+12L : inexact-ok
+= log10 downward ldbl-96-m68k 0x8p-16448L : -0x1.35670330851ff3a2p+12L : inexact-ok
+= log10 tonearest ldbl-96-m68k 0x8p-16448L : -0x1.35670330851ff3a2p+12L : inexact-ok
+= log10 towardzero ldbl-96-m68k 0x8p-16448L : -0x1.35670330851ff3ap+12L : inexact-ok
+= log10 upward ldbl-96-m68k 0x8p-16448L : -0x1.35670330851ff3ap+12L : inexact-ok
+= log10 downward ldbl-128 0x8p-16448L : -0x1.35670330851ff3a119e4512b06efp+12L : inexact-ok
+= log10 tonearest ldbl-128 0x8p-16448L : -0x1.35670330851ff3a119e4512b06efp+12L : inexact-ok
+= log10 towardzero ldbl-128 0x8p-16448L : -0x1.35670330851ff3a119e4512b06eep+12L : inexact-ok
+= log10 upward ldbl-128 0x8p-16448L : -0x1.35670330851ff3a119e4512b06eep+12L : inexact-ok
+= log10 downward ldbl-96-m68k 0x4p-16448L : -0x1.356bd4355947d222p+12L : inexact-ok
+= log10 tonearest ldbl-96-m68k 0x4p-16448L : -0x1.356bd4355947d22p+12L : inexact-ok
+= log10 towardzero ldbl-96-m68k 0x4p-16448L : -0x1.356bd4355947d22p+12L : inexact-ok
+= log10 upward ldbl-96-m68k 0x4p-16448L : -0x1.356bd4355947d22p+12L : inexact-ok
+= log10 downward ldbl-128 0x4p-16448L : -0x1.356bd4355947d220d6a8cd75d45p+12L : inexact-ok
+= log10 tonearest ldbl-128 0x4p-16448L : -0x1.356bd4355947d220d6a8cd75d44fp+12L : inexact-ok
+= log10 towardzero ldbl-128 0x4p-16448L : -0x1.356bd4355947d220d6a8cd75d44fp+12L : inexact-ok
+= log10 upward ldbl-128 0x4p-16448L : -0x1.356bd4355947d220d6a8cd75d44fp+12L : inexact-ok
+= log10 downward ldbl-128 0x4p-16496L : -0x1.3653051d20c18a143b801b7c5661p+12L : inexact-ok
+= log10 tonearest ldbl-128 0x4p-16496L : -0x1.3653051d20c18a143b801b7c566p+12L : inexact-ok
+= log10 towardzero ldbl-128 0x4p-16496L : -0x1.3653051d20c18a143b801b7c566p+12L : inexact-ok
+= log10 upward ldbl-128 0x4p-16496L : -0x1.3653051d20c18a143b801b7c566p+12L : inexact-ok
 log1p 0
 = log1p downward flt-32 0x0p+0f : 0x0p+0f : inexact-ok
 = log1p tonearest flt-32 0x0p+0f : 0x0p+0f : inexact-ok
@@ -26719,6 +27035,322 @@ log1p -0.875
 = log1p tonearest ldbl-128ibm -0xep-4L : -0x2.145647e7756e6d035dab1ac80cp+0L : inexact-ok
 = log1p towardzero ldbl-128ibm -0xep-4L : -0x2.145647e7756e6d035dab1ac80bp+0L : inexact-ok
 = log1p upward ldbl-128ibm -0xep-4L : -0x2.145647e7756e6d035dab1ac80bp+0L : inexact-ok
+log1p min missing-underflow
+= log1p downward flt-32 0x4p-128f : 0x3.fffff8p-128f : inexact-ok underflow-ok errno-erange-ok
+= log1p tonearest flt-32 0x4p-128f : 0x4p-128f : inexact-ok underflow-ok errno-erange-ok
+= log1p towardzero flt-32 0x4p-128f : 0x3.fffff8p-128f : inexact-ok underflow-ok errno-erange-ok
+= log1p upward flt-32 0x4p-128f : 0x4p-128f : inexact-ok underflow-ok errno-erange-ok
+= log1p downward dbl-64 0x4p-128 : 0x3.ffffffffffffep-128 : inexact-ok
+= log1p tonearest dbl-64 0x4p-128 : 0x4p-128 : inexact-ok
+= log1p towardzero dbl-64 0x4p-128 : 0x3.ffffffffffffep-128 : inexact-ok
+= log1p upward dbl-64 0x4p-128 : 0x4p-128 : inexact-ok
+= log1p downward ldbl-96-intel 0x4p-128L : 0x3.fffffffffffffffcp-128L : inexact-ok
+= log1p tonearest ldbl-96-intel 0x4p-128L : 0x4p-128L : inexact-ok
+= log1p towardzero ldbl-96-intel 0x4p-128L : 0x3.fffffffffffffffcp-128L : inexact-ok
+= log1p upward ldbl-96-intel 0x4p-128L : 0x4p-128L : inexact-ok
+= log1p downward ldbl-96-m68k 0x4p-128L : 0x3.fffffffffffffffcp-128L : inexact-ok
+= log1p tonearest ldbl-96-m68k 0x4p-128L : 0x4p-128L : inexact-ok
+= log1p towardzero ldbl-96-m68k 0x4p-128L : 0x3.fffffffffffffffcp-128L : inexact-ok
+= log1p upward ldbl-96-m68k 0x4p-128L : 0x4p-128L : inexact-ok
+= log1p downward ldbl-128 0x4p-128L : 0x3.fffffffffffffffffffffffffffep-128L : inexact-ok
+= log1p tonearest ldbl-128 0x4p-128L : 0x4p-128L : inexact-ok
+= log1p towardzero ldbl-128 0x4p-128L : 0x3.fffffffffffffffffffffffffffep-128L : inexact-ok
+= log1p upward ldbl-128 0x4p-128L : 0x4p-128L : inexact-ok
+= log1p downward ldbl-128ibm 0x4p-128L : 0x3.ffffffffffffffffffffffffffp-128L : inexact-ok
+= log1p tonearest ldbl-128ibm 0x4p-128L : 0x4p-128L : inexact-ok
+= log1p towardzero ldbl-128ibm 0x4p-128L : 0x3.ffffffffffffffffffffffffffp-128L : inexact-ok
+= log1p upward ldbl-128ibm 0x4p-128L : 0x4p-128L : inexact-ok
+= log1p downward dbl-64 0x4p-1024 : 0x3.ffffffffffffcp-1024 : inexact-ok underflow-ok errno-erange-ok
+= log1p tonearest dbl-64 0x4p-1024 : 0x4p-1024 : inexact-ok underflow-ok errno-erange-ok
+= log1p towardzero dbl-64 0x4p-1024 : 0x3.ffffffffffffcp-1024 : inexact-ok underflow-ok errno-erange-ok
+= log1p upward dbl-64 0x4p-1024 : 0x4p-1024 : inexact-ok underflow-ok errno-erange-ok
+= log1p downward ldbl-96-intel 0x4p-1024L : 0x3.fffffffffffffffcp-1024L : inexact-ok
+= log1p tonearest ldbl-96-intel 0x4p-1024L : 0x4p-1024L : inexact-ok
+= log1p towardzero ldbl-96-intel 0x4p-1024L : 0x3.fffffffffffffffcp-1024L : inexact-ok
+= log1p upward ldbl-96-intel 0x4p-1024L : 0x4p-1024L : inexact-ok
+= log1p downward ldbl-96-m68k 0x4p-1024L : 0x3.fffffffffffffffcp-1024L : inexact-ok
+= log1p tonearest ldbl-96-m68k 0x4p-1024L : 0x4p-1024L : inexact-ok
+= log1p towardzero ldbl-96-m68k 0x4p-1024L : 0x3.fffffffffffffffcp-1024L : inexact-ok
+= log1p upward ldbl-96-m68k 0x4p-1024L : 0x4p-1024L : inexact-ok
+= log1p downward ldbl-128 0x4p-1024L : 0x3.fffffffffffffffffffffffffffep-1024L : inexact-ok
+= log1p tonearest ldbl-128 0x4p-1024L : 0x4p-1024L : inexact-ok
+= log1p towardzero ldbl-128 0x4p-1024L : 0x3.fffffffffffffffffffffffffffep-1024L : inexact-ok
+= log1p upward ldbl-128 0x4p-1024L : 0x4p-1024L : inexact-ok
+= log1p downward ldbl-128ibm 0x4p-1024L : 0x3.ffffffffffffcp-1024L : inexact-ok underflow underflow-ok errno-erange-ok
+= log1p tonearest ldbl-128ibm 0x4p-1024L : 0x4p-1024L : inexact-ok underflow underflow-ok errno-erange-ok
+= log1p towardzero ldbl-128ibm 0x4p-1024L : 0x3.ffffffffffffcp-1024L : inexact-ok underflow underflow-ok errno-erange-ok
+= log1p upward ldbl-128ibm 0x4p-1024L : 0x4p-1024L : inexact-ok underflow underflow-ok errno-erange-ok
+= log1p downward ldbl-96-intel 0x4p-16384L : 0x3.fffffffffffffff8p-16384L : inexact-ok underflow-ok errno-erange-ok
+= log1p tonearest ldbl-96-intel 0x4p-16384L : 0x4p-16384L : inexact-ok underflow-ok errno-erange-ok
+= log1p towardzero ldbl-96-intel 0x4p-16384L : 0x3.fffffffffffffff8p-16384L : inexact-ok underflow-ok errno-erange-ok
+= log1p upward ldbl-96-intel 0x4p-16384L : 0x4p-16384L : inexact-ok underflow-ok errno-erange-ok
+= log1p downward ldbl-96-m68k 0x4p-16384L : 0x3.fffffffffffffffcp-16384L : inexact-ok
+= log1p tonearest ldbl-96-m68k 0x4p-16384L : 0x4p-16384L : inexact-ok
+= log1p towardzero ldbl-96-m68k 0x4p-16384L : 0x3.fffffffffffffffcp-16384L : inexact-ok
+= log1p upward ldbl-96-m68k 0x4p-16384L : 0x4p-16384L : inexact-ok
+= log1p downward ldbl-128 0x4p-16384L : 0x3.fffffffffffffffffffffffffffcp-16384L : inexact-ok underflow-ok errno-erange-ok
+= log1p tonearest ldbl-128 0x4p-16384L : 0x4p-16384L : inexact-ok underflow-ok errno-erange-ok
+= log1p towardzero ldbl-128 0x4p-16384L : 0x3.fffffffffffffffffffffffffffcp-16384L : inexact-ok underflow-ok errno-erange-ok
+= log1p upward ldbl-128 0x4p-16384L : 0x4p-16384L : inexact-ok underflow-ok errno-erange-ok
+= log1p downward ldbl-96-intel 0x2p-16384L : 0x1.fffffffffffffff8p-16384L : inexact-ok underflow underflow-ok errno-erange-ok
+= log1p tonearest ldbl-96-intel 0x2p-16384L : 0x2p-16384L : inexact-ok underflow underflow-ok errno-erange-ok
+= log1p towardzero ldbl-96-intel 0x2p-16384L : 0x1.fffffffffffffff8p-16384L : inexact-ok underflow underflow-ok errno-erange-ok
+= log1p upward ldbl-96-intel 0x2p-16384L : 0x2p-16384L : inexact-ok underflow underflow-ok errno-erange-ok
+= log1p downward ldbl-96-m68k 0x2p-16384L : 0x1.fffffffffffffffcp-16384L : inexact-ok underflow-ok errno-erange-ok
+= log1p tonearest ldbl-96-m68k 0x2p-16384L : 0x2p-16384L : inexact-ok underflow-ok errno-erange-ok
+= log1p towardzero ldbl-96-m68k 0x2p-16384L : 0x1.fffffffffffffffcp-16384L : inexact-ok underflow-ok errno-erange-ok
+= log1p upward ldbl-96-m68k 0x2p-16384L : 0x2p-16384L : inexact-ok underflow-ok errno-erange-ok
+= log1p downward ldbl-128 0x2p-16384L : 0x1.fffffffffffffffffffffffffffcp-16384L : inexact-ok underflow underflow-ok errno-erange-ok
+= log1p tonearest ldbl-128 0x2p-16384L : 0x2p-16384L : inexact-ok underflow underflow-ok errno-erange-ok
+= log1p towardzero ldbl-128 0x2p-16384L : 0x1.fffffffffffffffffffffffffffcp-16384L : inexact-ok underflow underflow-ok errno-erange-ok
+= log1p upward ldbl-128 0x2p-16384L : 0x2p-16384L : inexact-ok underflow underflow-ok errno-erange-ok
+= log1p downward dbl-64 0x8p-972 : 0x7.ffffffffffffcp-972 : inexact-ok
+= log1p tonearest dbl-64 0x8p-972 : 0x8p-972 : inexact-ok
+= log1p towardzero dbl-64 0x8p-972 : 0x7.ffffffffffffcp-972 : inexact-ok
+= log1p upward dbl-64 0x8p-972 : 0x8p-972 : inexact-ok
+= log1p downward ldbl-96-intel 0x8p-972L : 0x7.fffffffffffffff8p-972L : inexact-ok
+= log1p tonearest ldbl-96-intel 0x8p-972L : 0x8p-972L : inexact-ok
+= log1p towardzero ldbl-96-intel 0x8p-972L : 0x7.fffffffffffffff8p-972L : inexact-ok
+= log1p upward ldbl-96-intel 0x8p-972L : 0x8p-972L : inexact-ok
+= log1p downward ldbl-96-m68k 0x8p-972L : 0x7.fffffffffffffff8p-972L : inexact-ok
+= log1p tonearest ldbl-96-m68k 0x8p-972L : 0x8p-972L : inexact-ok
+= log1p towardzero ldbl-96-m68k 0x8p-972L : 0x7.fffffffffffffff8p-972L : inexact-ok
+= log1p upward ldbl-96-m68k 0x8p-972L : 0x8p-972L : inexact-ok
+= log1p downward ldbl-128 0x8p-972L : 0x7.fffffffffffffffffffffffffffcp-972L : inexact-ok
+= log1p tonearest ldbl-128 0x8p-972L : 0x8p-972L : inexact-ok
+= log1p towardzero ldbl-128 0x8p-972L : 0x7.fffffffffffffffffffffffffffcp-972L : inexact-ok
+= log1p upward ldbl-128 0x8p-972L : 0x8p-972L : inexact-ok
+= log1p downward ldbl-128ibm 0x8p-972L : 0x7.fffffffffffffffffffffffffcp-972L : inexact-ok underflow-ok errno-erange-ok
+= log1p tonearest ldbl-128ibm 0x8p-972L : 0x8p-972L : inexact-ok underflow-ok errno-erange-ok
+= log1p towardzero ldbl-128ibm 0x8p-972L : 0x7.fffffffffffffffffffffffffcp-972L : inexact-ok underflow-ok errno-erange-ok
+= log1p upward ldbl-128ibm 0x8p-972L : 0x8p-972L : inexact-ok underflow-ok errno-erange-ok
+log1p min_subnorm missing-underflow
+= log1p downward flt-32 0x8p-152f : 0x0p+0f : inexact-ok underflow underflow-ok errno-erange-ok
+= log1p tonearest flt-32 0x8p-152f : 0x8p-152f : inexact-ok underflow underflow-ok errno-erange-ok
+= log1p towardzero flt-32 0x8p-152f : 0x0p+0f : inexact-ok underflow underflow-ok errno-erange-ok
+= log1p upward flt-32 0x8p-152f : 0x8p-152f : inexact-ok underflow underflow-ok errno-erange-ok
+= log1p downward dbl-64 0x8p-152 : 0x7.ffffffffffffcp-152 : inexact-ok
+= log1p tonearest dbl-64 0x8p-152 : 0x8p-152 : inexact-ok
+= log1p towardzero dbl-64 0x8p-152 : 0x7.ffffffffffffcp-152 : inexact-ok
+= log1p upward dbl-64 0x8p-152 : 0x8p-152 : inexact-ok
+= log1p downward ldbl-96-intel 0x8p-152L : 0x7.fffffffffffffff8p-152L : inexact-ok
+= log1p tonearest ldbl-96-intel 0x8p-152L : 0x8p-152L : inexact-ok
+= log1p towardzero ldbl-96-intel 0x8p-152L : 0x7.fffffffffffffff8p-152L : inexact-ok
+= log1p upward ldbl-96-intel 0x8p-152L : 0x8p-152L : inexact-ok
+= log1p downward ldbl-96-m68k 0x8p-152L : 0x7.fffffffffffffff8p-152L : inexact-ok
+= log1p tonearest ldbl-96-m68k 0x8p-152L : 0x8p-152L : inexact-ok
+= log1p towardzero ldbl-96-m68k 0x8p-152L : 0x7.fffffffffffffff8p-152L : inexact-ok
+= log1p upward ldbl-96-m68k 0x8p-152L : 0x8p-152L : inexact-ok
+= log1p downward ldbl-128 0x8p-152L : 0x7.fffffffffffffffffffffffffffcp-152L : inexact-ok
+= log1p tonearest ldbl-128 0x8p-152L : 0x8p-152L : inexact-ok
+= log1p towardzero ldbl-128 0x8p-152L : 0x7.fffffffffffffffffffffffffffcp-152L : inexact-ok
+= log1p upward ldbl-128 0x8p-152L : 0x8p-152L : inexact-ok
+= log1p downward ldbl-128ibm 0x8p-152L : 0x7.fffffffffffffffffffffffffep-152L : inexact-ok
+= log1p tonearest ldbl-128ibm 0x8p-152L : 0x8p-152L : inexact-ok
+= log1p towardzero ldbl-128ibm 0x8p-152L : 0x7.fffffffffffffffffffffffffep-152L : inexact-ok
+= log1p upward ldbl-128ibm 0x8p-152L : 0x8p-152L : inexact-ok
+= log1p downward dbl-64 0x4p-1076 : 0x0p+0 : inexact-ok underflow underflow-ok errno-erange-ok
+= log1p tonearest dbl-64 0x4p-1076 : 0x4p-1076 : inexact-ok underflow underflow-ok errno-erange-ok
+= log1p towardzero dbl-64 0x4p-1076 : 0x0p+0 : inexact-ok underflow underflow-ok errno-erange-ok
+= log1p upward dbl-64 0x4p-1076 : 0x4p-1076 : inexact-ok underflow underflow-ok errno-erange-ok
+= log1p downward ldbl-96-intel 0x4p-1076L : 0x3.fffffffffffffffcp-1076L : inexact-ok
+= log1p tonearest ldbl-96-intel 0x4p-1076L : 0x4p-1076L : inexact-ok
+= log1p towardzero ldbl-96-intel 0x4p-1076L : 0x3.fffffffffffffffcp-1076L : inexact-ok
+= log1p upward ldbl-96-intel 0x4p-1076L : 0x4p-1076L : inexact-ok
+= log1p downward ldbl-96-m68k 0x4p-1076L : 0x3.fffffffffffffffcp-1076L : inexact-ok
+= log1p tonearest ldbl-96-m68k 0x4p-1076L : 0x4p-1076L : inexact-ok
+= log1p towardzero ldbl-96-m68k 0x4p-1076L : 0x3.fffffffffffffffcp-1076L : inexact-ok
+= log1p upward ldbl-96-m68k 0x4p-1076L : 0x4p-1076L : inexact-ok
+= log1p downward ldbl-128 0x4p-1076L : 0x3.fffffffffffffffffffffffffffep-1076L : inexact-ok
+= log1p tonearest ldbl-128 0x4p-1076L : 0x4p-1076L : inexact-ok
+= log1p towardzero ldbl-128 0x4p-1076L : 0x3.fffffffffffffffffffffffffffep-1076L : inexact-ok
+= log1p upward ldbl-128 0x4p-1076L : 0x4p-1076L : inexact-ok
+= log1p downward ldbl-128ibm 0x4p-1076L : 0x0p+0L : inexact-ok underflow underflow-ok errno-erange-ok
+= log1p tonearest ldbl-128ibm 0x4p-1076L : 0x4p-1076L : inexact-ok underflow underflow-ok errno-erange-ok
+= log1p towardzero ldbl-128ibm 0x4p-1076L : 0x0p+0L : inexact-ok underflow underflow-ok errno-erange-ok
+= log1p upward ldbl-128ibm 0x4p-1076L : 0x4p-1076L : inexact-ok underflow underflow-ok errno-erange-ok
+= log1p downward ldbl-96-intel 0x8p-16448L : 0x0p+0L : inexact-ok underflow underflow-ok errno-erange-ok
+= log1p tonearest ldbl-96-intel 0x8p-16448L : 0x8p-16448L : inexact-ok underflow underflow-ok errno-erange-ok
+= log1p towardzero ldbl-96-intel 0x8p-16448L : 0x0p+0L : inexact-ok underflow underflow-ok errno-erange-ok
+= log1p upward ldbl-96-intel 0x8p-16448L : 0x8p-16448L : inexact-ok underflow underflow-ok errno-erange-ok
+= log1p downward ldbl-96-m68k 0x8p-16448L : 0x4p-16448L : inexact-ok underflow underflow-ok errno-erange-ok
+= log1p tonearest ldbl-96-m68k 0x8p-16448L : 0x8p-16448L : inexact-ok underflow underflow-ok errno-erange-ok
+= log1p towardzero ldbl-96-m68k 0x8p-16448L : 0x4p-16448L : inexact-ok underflow underflow-ok errno-erange-ok
+= log1p upward ldbl-96-m68k 0x8p-16448L : 0x8p-16448L : inexact-ok underflow underflow-ok errno-erange-ok
+= log1p downward ldbl-128 0x8p-16448L : 0x7.fffffffffffcp-16448L : inexact-ok underflow underflow-ok errno-erange-ok
+= log1p tonearest ldbl-128 0x8p-16448L : 0x8p-16448L : inexact-ok underflow underflow-ok errno-erange-ok
+= log1p towardzero ldbl-128 0x8p-16448L : 0x7.fffffffffffcp-16448L : inexact-ok underflow underflow-ok errno-erange-ok
+= log1p upward ldbl-128 0x8p-16448L : 0x8p-16448L : inexact-ok underflow underflow-ok errno-erange-ok
+= log1p downward ldbl-96-m68k 0x4p-16448L : 0x0p+0L : inexact-ok underflow underflow-ok errno-erange-ok
+= log1p tonearest ldbl-96-m68k 0x4p-16448L : 0x4p-16448L : inexact-ok underflow underflow-ok errno-erange-ok
+= log1p towardzero ldbl-96-m68k 0x4p-16448L : 0x0p+0L : inexact-ok underflow underflow-ok errno-erange-ok
+= log1p upward ldbl-96-m68k 0x4p-16448L : 0x4p-16448L : inexact-ok underflow underflow-ok errno-erange-ok
+= log1p downward ldbl-128 0x4p-16448L : 0x3.fffffffffffcp-16448L : inexact-ok underflow underflow-ok errno-erange-ok
+= log1p tonearest ldbl-128 0x4p-16448L : 0x4p-16448L : inexact-ok underflow underflow-ok errno-erange-ok
+= log1p towardzero ldbl-128 0x4p-16448L : 0x3.fffffffffffcp-16448L : inexact-ok underflow underflow-ok errno-erange-ok
+= log1p upward ldbl-128 0x4p-16448L : 0x4p-16448L : inexact-ok underflow underflow-ok errno-erange-ok
+= log1p downward ldbl-128 0x4p-16496L : 0x0p+0L : inexact-ok underflow underflow-ok errno-erange-ok
+= log1p tonearest ldbl-128 0x4p-16496L : 0x4p-16496L : inexact-ok underflow underflow-ok errno-erange-ok
+= log1p towardzero ldbl-128 0x4p-16496L : 0x0p+0L : inexact-ok underflow underflow-ok errno-erange-ok
+= log1p upward ldbl-128 0x4p-16496L : 0x4p-16496L : inexact-ok underflow underflow-ok errno-erange-ok
+log1p -min missing-underflow
+= log1p downward flt-32 -0x4p-128f : -0x4p-128f : inexact-ok underflow-ok errno-erange-ok
+= log1p tonearest flt-32 -0x4p-128f : -0x4p-128f : inexact-ok underflow-ok errno-erange-ok
+= log1p towardzero flt-32 -0x4p-128f : -0x3.fffff8p-128f : inexact-ok underflow-ok errno-erange-ok
+= log1p upward flt-32 -0x4p-128f : -0x3.fffff8p-128f : inexact-ok underflow-ok errno-erange-ok
+= log1p downward dbl-64 -0x4p-128 : -0x4p-128 : inexact-ok
+= log1p tonearest dbl-64 -0x4p-128 : -0x4p-128 : inexact-ok
+= log1p towardzero dbl-64 -0x4p-128 : -0x3.ffffffffffffep-128 : inexact-ok
+= log1p upward dbl-64 -0x4p-128 : -0x3.ffffffffffffep-128 : inexact-ok
+= log1p downward ldbl-96-intel -0x4p-128L : -0x4p-128L : inexact-ok
+= log1p tonearest ldbl-96-intel -0x4p-128L : -0x4p-128L : inexact-ok
+= log1p towardzero ldbl-96-intel -0x4p-128L : -0x3.fffffffffffffffcp-128L : inexact-ok
+= log1p upward ldbl-96-intel -0x4p-128L : -0x3.fffffffffffffffcp-128L : inexact-ok
+= log1p downward ldbl-96-m68k -0x4p-128L : -0x4p-128L : inexact-ok
+= log1p tonearest ldbl-96-m68k -0x4p-128L : -0x4p-128L : inexact-ok
+= log1p towardzero ldbl-96-m68k -0x4p-128L : -0x3.fffffffffffffffcp-128L : inexact-ok
+= log1p upward ldbl-96-m68k -0x4p-128L : -0x3.fffffffffffffffcp-128L : inexact-ok
+= log1p downward ldbl-128 -0x4p-128L : -0x4p-128L : inexact-ok
+= log1p tonearest ldbl-128 -0x4p-128L : -0x4p-128L : inexact-ok
+= log1p towardzero ldbl-128 -0x4p-128L : -0x3.fffffffffffffffffffffffffffep-128L : inexact-ok
+= log1p upward ldbl-128 -0x4p-128L : -0x3.fffffffffffffffffffffffffffep-128L : inexact-ok
+= log1p downward ldbl-128ibm -0x4p-128L : -0x4p-128L : inexact-ok
+= log1p tonearest ldbl-128ibm -0x4p-128L : -0x4p-128L : inexact-ok
+= log1p towardzero ldbl-128ibm -0x4p-128L : -0x3.ffffffffffffffffffffffffffp-128L : inexact-ok
+= log1p upward ldbl-128ibm -0x4p-128L : -0x3.ffffffffffffffffffffffffffp-128L : inexact-ok
+= log1p downward dbl-64 -0x4p-1024 : -0x4p-1024 : inexact-ok underflow-ok errno-erange-ok
+= log1p tonearest dbl-64 -0x4p-1024 : -0x4p-1024 : inexact-ok underflow-ok errno-erange-ok
+= log1p towardzero dbl-64 -0x4p-1024 : -0x3.ffffffffffffcp-1024 : inexact-ok underflow-ok errno-erange-ok
+= log1p upward dbl-64 -0x4p-1024 : -0x3.ffffffffffffcp-1024 : inexact-ok underflow-ok errno-erange-ok
+= log1p downward ldbl-96-intel -0x4p-1024L : -0x4p-1024L : inexact-ok
+= log1p tonearest ldbl-96-intel -0x4p-1024L : -0x4p-1024L : inexact-ok
+= log1p towardzero ldbl-96-intel -0x4p-1024L : -0x3.fffffffffffffffcp-1024L : inexact-ok
+= log1p upward ldbl-96-intel -0x4p-1024L : -0x3.fffffffffffffffcp-1024L : inexact-ok
+= log1p downward ldbl-96-m68k -0x4p-1024L : -0x4p-1024L : inexact-ok
+= log1p tonearest ldbl-96-m68k -0x4p-1024L : -0x4p-1024L : inexact-ok
+= log1p towardzero ldbl-96-m68k -0x4p-1024L : -0x3.fffffffffffffffcp-1024L : inexact-ok
+= log1p upward ldbl-96-m68k -0x4p-1024L : -0x3.fffffffffffffffcp-1024L : inexact-ok
+= log1p downward ldbl-128 -0x4p-1024L : -0x4p-1024L : inexact-ok
+= log1p tonearest ldbl-128 -0x4p-1024L : -0x4p-1024L : inexact-ok
+= log1p towardzero ldbl-128 -0x4p-1024L : -0x3.fffffffffffffffffffffffffffep-1024L : inexact-ok
+= log1p upward ldbl-128 -0x4p-1024L : -0x3.fffffffffffffffffffffffffffep-1024L : inexact-ok
+= log1p downward ldbl-128ibm -0x4p-1024L : -0x4p-1024L : inexact-ok underflow underflow-ok errno-erange-ok
+= log1p tonearest ldbl-128ibm -0x4p-1024L : -0x4p-1024L : inexact-ok underflow underflow-ok errno-erange-ok
+= log1p towardzero ldbl-128ibm -0x4p-1024L : -0x3.ffffffffffffcp-1024L : inexact-ok underflow underflow-ok errno-erange-ok
+= log1p upward ldbl-128ibm -0x4p-1024L : -0x3.ffffffffffffcp-1024L : inexact-ok underflow underflow-ok errno-erange-ok
+= log1p downward ldbl-96-intel -0x4p-16384L : -0x4p-16384L : inexact-ok underflow-ok errno-erange-ok
+= log1p tonearest ldbl-96-intel -0x4p-16384L : -0x4p-16384L : inexact-ok underflow-ok errno-erange-ok
+= log1p towardzero ldbl-96-intel -0x4p-16384L : -0x3.fffffffffffffff8p-16384L : inexact-ok underflow-ok errno-erange-ok
+= log1p upward ldbl-96-intel -0x4p-16384L : -0x3.fffffffffffffff8p-16384L : inexact-ok underflow-ok errno-erange-ok
+= log1p downward ldbl-96-m68k -0x4p-16384L : -0x4p-16384L : inexact-ok
+= log1p tonearest ldbl-96-m68k -0x4p-16384L : -0x4p-16384L : inexact-ok
+= log1p towardzero ldbl-96-m68k -0x4p-16384L : -0x3.fffffffffffffffcp-16384L : inexact-ok
+= log1p upward ldbl-96-m68k -0x4p-16384L : -0x3.fffffffffffffffcp-16384L : inexact-ok
+= log1p downward ldbl-128 -0x4p-16384L : -0x4p-16384L : inexact-ok underflow-ok errno-erange-ok
+= log1p tonearest ldbl-128 -0x4p-16384L : -0x4p-16384L : inexact-ok underflow-ok errno-erange-ok
+= log1p towardzero ldbl-128 -0x4p-16384L : -0x3.fffffffffffffffffffffffffffcp-16384L : inexact-ok underflow-ok errno-erange-ok
+= log1p upward ldbl-128 -0x4p-16384L : -0x3.fffffffffffffffffffffffffffcp-16384L : inexact-ok underflow-ok errno-erange-ok
+= log1p downward ldbl-96-intel -0x2p-16384L : -0x2p-16384L : inexact-ok underflow underflow-ok errno-erange-ok
+= log1p tonearest ldbl-96-intel -0x2p-16384L : -0x2p-16384L : inexact-ok underflow underflow-ok errno-erange-ok
+= log1p towardzero ldbl-96-intel -0x2p-16384L : -0x1.fffffffffffffff8p-16384L : inexact-ok underflow underflow-ok errno-erange-ok
+= log1p upward ldbl-96-intel -0x2p-16384L : -0x1.fffffffffffffff8p-16384L : inexact-ok underflow underflow-ok errno-erange-ok
+= log1p downward ldbl-96-m68k -0x2p-16384L : -0x2p-16384L : inexact-ok underflow-ok errno-erange-ok
+= log1p tonearest ldbl-96-m68k -0x2p-16384L : -0x2p-16384L : inexact-ok underflow-ok errno-erange-ok
+= log1p towardzero ldbl-96-m68k -0x2p-16384L : -0x1.fffffffffffffffcp-16384L : inexact-ok underflow-ok errno-erange-ok
+= log1p upward ldbl-96-m68k -0x2p-16384L : -0x1.fffffffffffffffcp-16384L : inexact-ok underflow-ok errno-erange-ok
+= log1p downward ldbl-128 -0x2p-16384L : -0x2p-16384L : inexact-ok underflow underflow-ok errno-erange-ok
+= log1p tonearest ldbl-128 -0x2p-16384L : -0x2p-16384L : inexact-ok underflow underflow-ok errno-erange-ok
+= log1p towardzero ldbl-128 -0x2p-16384L : -0x1.fffffffffffffffffffffffffffcp-16384L : inexact-ok underflow underflow-ok errno-erange-ok
+= log1p upward ldbl-128 -0x2p-16384L : -0x1.fffffffffffffffffffffffffffcp-16384L : inexact-ok underflow underflow-ok errno-erange-ok
+= log1p downward dbl-64 -0x8p-972 : -0x8p-972 : inexact-ok
+= log1p tonearest dbl-64 -0x8p-972 : -0x8p-972 : inexact-ok
+= log1p towardzero dbl-64 -0x8p-972 : -0x7.ffffffffffffcp-972 : inexact-ok
+= log1p upward dbl-64 -0x8p-972 : -0x7.ffffffffffffcp-972 : inexact-ok
+= log1p downward ldbl-96-intel -0x8p-972L : -0x8p-972L : inexact-ok
+= log1p tonearest ldbl-96-intel -0x8p-972L : -0x8p-972L : inexact-ok
+= log1p towardzero ldbl-96-intel -0x8p-972L : -0x7.fffffffffffffff8p-972L : inexact-ok
+= log1p upward ldbl-96-intel -0x8p-972L : -0x7.fffffffffffffff8p-972L : inexact-ok
+= log1p downward ldbl-96-m68k -0x8p-972L : -0x8p-972L : inexact-ok
+= log1p tonearest ldbl-96-m68k -0x8p-972L : -0x8p-972L : inexact-ok
+= log1p towardzero ldbl-96-m68k -0x8p-972L : -0x7.fffffffffffffff8p-972L : inexact-ok
+= log1p upward ldbl-96-m68k -0x8p-972L : -0x7.fffffffffffffff8p-972L : inexact-ok
+= log1p downward ldbl-128 -0x8p-972L : -0x8p-972L : inexact-ok
+= log1p tonearest ldbl-128 -0x8p-972L : -0x8p-972L : inexact-ok
+= log1p towardzero ldbl-128 -0x8p-972L : -0x7.fffffffffffffffffffffffffffcp-972L : inexact-ok
+= log1p upward ldbl-128 -0x8p-972L : -0x7.fffffffffffffffffffffffffffcp-972L : inexact-ok
+= log1p downward ldbl-128ibm -0x8p-972L : -0x8p-972L : inexact-ok underflow-ok errno-erange-ok
+= log1p tonearest ldbl-128ibm -0x8p-972L : -0x8p-972L : inexact-ok underflow-ok errno-erange-ok
+= log1p towardzero ldbl-128ibm -0x8p-972L : -0x7.fffffffffffffffffffffffffcp-972L : inexact-ok underflow-ok errno-erange-ok
+= log1p upward ldbl-128ibm -0x8p-972L : -0x7.fffffffffffffffffffffffffcp-972L : inexact-ok underflow-ok errno-erange-ok
+log1p -min_subnorm missing-underflow
+= log1p downward flt-32 -0x8p-152f : -0x8p-152f : inexact-ok underflow underflow-ok errno-erange-ok
+= log1p tonearest flt-32 -0x8p-152f : -0x8p-152f : inexact-ok underflow underflow-ok errno-erange-ok
+= log1p towardzero flt-32 -0x8p-152f : -0x0p+0f : inexact-ok underflow underflow-ok errno-erange-ok
+= log1p upward flt-32 -0x8p-152f : -0x0p+0f : inexact-ok underflow underflow-ok errno-erange-ok
+= log1p downward dbl-64 -0x8p-152 : -0x8p-152 : inexact-ok
+= log1p tonearest dbl-64 -0x8p-152 : -0x8p-152 : inexact-ok
+= log1p towardzero dbl-64 -0x8p-152 : -0x7.ffffffffffffcp-152 : inexact-ok
+= log1p upward dbl-64 -0x8p-152 : -0x7.ffffffffffffcp-152 : inexact-ok
+= log1p downward ldbl-96-intel -0x8p-152L : -0x8p-152L : inexact-ok
+= log1p tonearest ldbl-96-intel -0x8p-152L : -0x8p-152L : inexact-ok
+= log1p towardzero ldbl-96-intel -0x8p-152L : -0x7.fffffffffffffff8p-152L : inexact-ok
+= log1p upward ldbl-96-intel -0x8p-152L : -0x7.fffffffffffffff8p-152L : inexact-ok
+= log1p downward ldbl-96-m68k -0x8p-152L : -0x8p-152L : inexact-ok
+= log1p tonearest ldbl-96-m68k -0x8p-152L : -0x8p-152L : inexact-ok
+= log1p towardzero ldbl-96-m68k -0x8p-152L : -0x7.fffffffffffffff8p-152L : inexact-ok
+= log1p upward ldbl-96-m68k -0x8p-152L : -0x7.fffffffffffffff8p-152L : inexact-ok
+= log1p downward ldbl-128 -0x8p-152L : -0x8p-152L : inexact-ok
+= log1p tonearest ldbl-128 -0x8p-152L : -0x8p-152L : inexact-ok
+= log1p towardzero ldbl-128 -0x8p-152L : -0x7.fffffffffffffffffffffffffffcp-152L : inexact-ok
+= log1p upward ldbl-128 -0x8p-152L : -0x7.fffffffffffffffffffffffffffcp-152L : inexact-ok
+= log1p downward ldbl-128ibm -0x8p-152L : -0x8p-152L : inexact-ok
+= log1p tonearest ldbl-128ibm -0x8p-152L : -0x8p-152L : inexact-ok
+= log1p towardzero ldbl-128ibm -0x8p-152L : -0x7.fffffffffffffffffffffffffep-152L : inexact-ok
+= log1p upward ldbl-128ibm -0x8p-152L : -0x7.fffffffffffffffffffffffffep-152L : inexact-ok
+= log1p downward dbl-64 -0x4p-1076 : -0x4p-1076 : inexact-ok underflow underflow-ok errno-erange-ok
+= log1p tonearest dbl-64 -0x4p-1076 : -0x4p-1076 : inexact-ok underflow underflow-ok errno-erange-ok
+= log1p towardzero dbl-64 -0x4p-1076 : -0x0p+0 : inexact-ok underflow underflow-ok errno-erange-ok
+= log1p upward dbl-64 -0x4p-1076 : -0x0p+0 : inexact-ok underflow underflow-ok errno-erange-ok
+= log1p downward ldbl-96-intel -0x4p-1076L : -0x4p-1076L : inexact-ok
+= log1p tonearest ldbl-96-intel -0x4p-1076L : -0x4p-1076L : inexact-ok
+= log1p towardzero ldbl-96-intel -0x4p-1076L : -0x3.fffffffffffffffcp-1076L : inexact-ok
+= log1p upward ldbl-96-intel -0x4p-1076L : -0x3.fffffffffffffffcp-1076L : inexact-ok
+= log1p downward ldbl-96-m68k -0x4p-1076L : -0x4p-1076L : inexact-ok
+= log1p tonearest ldbl-96-m68k -0x4p-1076L : -0x4p-1076L : inexact-ok
+= log1p towardzero ldbl-96-m68k -0x4p-1076L : -0x3.fffffffffffffffcp-1076L : inexact-ok
+= log1p upward ldbl-96-m68k -0x4p-1076L : -0x3.fffffffffffffffcp-1076L : inexact-ok
+= log1p downward ldbl-128 -0x4p-1076L : -0x4p-1076L : inexact-ok
+= log1p tonearest ldbl-128 -0x4p-1076L : -0x4p-1076L : inexact-ok
+= log1p towardzero ldbl-128 -0x4p-1076L : -0x3.fffffffffffffffffffffffffffep-1076L : inexact-ok
+= log1p upward ldbl-128 -0x4p-1076L : -0x3.fffffffffffffffffffffffffffep-1076L : inexact-ok
+= log1p downward ldbl-128ibm -0x4p-1076L : -0x4p-1076L : inexact-ok underflow underflow-ok errno-erange-ok
+= log1p tonearest ldbl-128ibm -0x4p-1076L : -0x4p-1076L : inexact-ok underflow underflow-ok errno-erange-ok
+= log1p towardzero ldbl-128ibm -0x4p-1076L : -0x0p+0L : inexact-ok underflow underflow-ok errno-erange-ok
+= log1p upward ldbl-128ibm -0x4p-1076L : -0x0p+0L : inexact-ok underflow underflow-ok errno-erange-ok
+= log1p downward ldbl-96-intel -0x8p-16448L : -0x8p-16448L : inexact-ok underflow underflow-ok errno-erange-ok
+= log1p tonearest ldbl-96-intel -0x8p-16448L : -0x8p-16448L : inexact-ok underflow underflow-ok errno-erange-ok
+= log1p towardzero ldbl-96-intel -0x8p-16448L : -0x0p+0L : inexact-ok underflow underflow-ok errno-erange-ok
+= log1p upward ldbl-96-intel -0x8p-16448L : -0x0p+0L : inexact-ok underflow underflow-ok errno-erange-ok
+= log1p downward ldbl-96-m68k -0x8p-16448L : -0x8p-16448L : inexact-ok underflow underflow-ok errno-erange-ok
+= log1p tonearest ldbl-96-m68k -0x8p-16448L : -0x8p-16448L : inexact-ok underflow underflow-ok errno-erange-ok
+= log1p towardzero ldbl-96-m68k -0x8p-16448L : -0x4p-16448L : inexact-ok underflow underflow-ok errno-erange-ok
+= log1p upward ldbl-96-m68k -0x8p-16448L : -0x4p-16448L : inexact-ok underflow underflow-ok errno-erange-ok
+= log1p downward ldbl-128 -0x8p-16448L : -0x8p-16448L : inexact-ok underflow underflow-ok errno-erange-ok
+= log1p tonearest ldbl-128 -0x8p-16448L : -0x8p-16448L : inexact-ok underflow underflow-ok errno-erange-ok
+= log1p towardzero ldbl-128 -0x8p-16448L : -0x7.fffffffffffcp-16448L : inexact-ok underflow underflow-ok errno-erange-ok
+= log1p upward ldbl-128 -0x8p-16448L : -0x7.fffffffffffcp-16448L : inexact-ok underflow underflow-ok errno-erange-ok
+= log1p downward ldbl-96-m68k -0x4p-16448L : -0x4p-16448L : inexact-ok underflow underflow-ok errno-erange-ok
+= log1p tonearest ldbl-96-m68k -0x4p-16448L : -0x4p-16448L : inexact-ok underflow underflow-ok errno-erange-ok
+= log1p towardzero ldbl-96-m68k -0x4p-16448L : -0x0p+0L : inexact-ok underflow underflow-ok errno-erange-ok
+= log1p upward ldbl-96-m68k -0x4p-16448L : -0x0p+0L : inexact-ok underflow underflow-ok errno-erange-ok
+= log1p downward ldbl-128 -0x4p-16448L : -0x4p-16448L : inexact-ok underflow underflow-ok errno-erange-ok
+= log1p tonearest ldbl-128 -0x4p-16448L : -0x4p-16448L : inexact-ok underflow underflow-ok errno-erange-ok
+= log1p towardzero ldbl-128 -0x4p-16448L : -0x3.fffffffffffcp-16448L : inexact-ok underflow underflow-ok errno-erange-ok
+= log1p upward ldbl-128 -0x4p-16448L : -0x3.fffffffffffcp-16448L : inexact-ok underflow underflow-ok errno-erange-ok
+= log1p downward ldbl-128 -0x4p-16496L : -0x4p-16496L : inexact-ok underflow underflow-ok errno-erange-ok
+= log1p tonearest ldbl-128 -0x4p-16496L : -0x4p-16496L : inexact-ok underflow underflow-ok errno-erange-ok
+= log1p towardzero ldbl-128 -0x4p-16496L : -0x0p+0L : inexact-ok underflow underflow-ok errno-erange-ok
+= log1p upward ldbl-128 -0x4p-16496L : -0x0p+0L : inexact-ok underflow underflow-ok errno-erange-ok
 log2 1
 = log2 downward flt-32 0x1p+0f : 0x0p+0f : inexact-ok
 = log2 tonearest flt-32 0x1p+0f : 0x0p+0f : inexact-ok
@@ -26989,6 +27621,164 @@ log2 0.75
 = log2 tonearest ldbl-128ibm 0xcp-4L : -0x6.a3fe5c6042978605ff4edf5f98p-4L : inexact-ok
 = log2 towardzero ldbl-128ibm 0xcp-4L : -0x6.a3fe5c6042978605ff4edf5f96p-4L : inexact-ok
 = log2 upward ldbl-128ibm 0xcp-4L : -0x6.a3fe5c6042978605ff4edf5f96p-4L : inexact-ok
+log2 min
+= log2 downward flt-32 0x4p-128f : -0x7.ep+4f : inexact-ok
+= log2 tonearest flt-32 0x4p-128f : -0x7.ep+4f : inexact-ok
+= log2 towardzero flt-32 0x4p-128f : -0x7.ep+4f : inexact-ok
+= log2 upward flt-32 0x4p-128f : -0x7.ep+4f : inexact-ok
+= log2 downward dbl-64 0x4p-128 : -0x7.ep+4 : inexact-ok
+= log2 tonearest dbl-64 0x4p-128 : -0x7.ep+4 : inexact-ok
+= log2 towardzero dbl-64 0x4p-128 : -0x7.ep+4 : inexact-ok
+= log2 upward dbl-64 0x4p-128 : -0x7.ep+4 : inexact-ok
+= log2 downward ldbl-96-intel 0x4p-128L : -0x7.ep+4L : inexact-ok
+= log2 tonearest ldbl-96-intel 0x4p-128L : -0x7.ep+4L : inexact-ok
+= log2 towardzero ldbl-96-intel 0x4p-128L : -0x7.ep+4L : inexact-ok
+= log2 upward ldbl-96-intel 0x4p-128L : -0x7.ep+4L : inexact-ok
+= log2 downward ldbl-96-m68k 0x4p-128L : -0x7.ep+4L : inexact-ok
+= log2 tonearest ldbl-96-m68k 0x4p-128L : -0x7.ep+4L : inexact-ok
+= log2 towardzero ldbl-96-m68k 0x4p-128L : -0x7.ep+4L : inexact-ok
+= log2 upward ldbl-96-m68k 0x4p-128L : -0x7.ep+4L : inexact-ok
+= log2 downward ldbl-128 0x4p-128L : -0x7.ep+4L : inexact-ok
+= log2 tonearest ldbl-128 0x4p-128L : -0x7.ep+4L : inexact-ok
+= log2 towardzero ldbl-128 0x4p-128L : -0x7.ep+4L : inexact-ok
+= log2 upward ldbl-128 0x4p-128L : -0x7.ep+4L : inexact-ok
+= log2 downward ldbl-128ibm 0x4p-128L : -0x7.ep+4L : inexact-ok
+= log2 tonearest ldbl-128ibm 0x4p-128L : -0x7.ep+4L : inexact-ok
+= log2 towardzero ldbl-128ibm 0x4p-128L : -0x7.ep+4L : inexact-ok
+= log2 upward ldbl-128ibm 0x4p-128L : -0x7.ep+4L : inexact-ok
+= log2 downward dbl-64 0x4p-1024 : -0x3.fep+8 : inexact-ok
+= log2 tonearest dbl-64 0x4p-1024 : -0x3.fep+8 : inexact-ok
+= log2 towardzero dbl-64 0x4p-1024 : -0x3.fep+8 : inexact-ok
+= log2 upward dbl-64 0x4p-1024 : -0x3.fep+8 : inexact-ok
+= log2 downward ldbl-96-intel 0x4p-1024L : -0x3.fep+8L : inexact-ok
+= log2 tonearest ldbl-96-intel 0x4p-1024L : -0x3.fep+8L : inexact-ok
+= log2 towardzero ldbl-96-intel 0x4p-1024L : -0x3.fep+8L : inexact-ok
+= log2 upward ldbl-96-intel 0x4p-1024L : -0x3.fep+8L : inexact-ok
+= log2 downward ldbl-96-m68k 0x4p-1024L : -0x3.fep+8L : inexact-ok
+= log2 tonearest ldbl-96-m68k 0x4p-1024L : -0x3.fep+8L : inexact-ok
+= log2 towardzero ldbl-96-m68k 0x4p-1024L : -0x3.fep+8L : inexact-ok
+= log2 upward ldbl-96-m68k 0x4p-1024L : -0x3.fep+8L : inexact-ok
+= log2 downward ldbl-128 0x4p-1024L : -0x3.fep+8L : inexact-ok
+= log2 tonearest ldbl-128 0x4p-1024L : -0x3.fep+8L : inexact-ok
+= log2 towardzero ldbl-128 0x4p-1024L : -0x3.fep+8L : inexact-ok
+= log2 upward ldbl-128 0x4p-1024L : -0x3.fep+8L : inexact-ok
+= log2 downward ldbl-128ibm 0x4p-1024L : -0x3.fep+8L : inexact-ok
+= log2 tonearest ldbl-128ibm 0x4p-1024L : -0x3.fep+8L : inexact-ok
+= log2 towardzero ldbl-128ibm 0x4p-1024L : -0x3.fep+8L : inexact-ok
+= log2 upward ldbl-128ibm 0x4p-1024L : -0x3.fep+8L : inexact-ok
+= log2 downward ldbl-96-intel 0x4p-16384L : -0x3.ffep+12L : inexact-ok
+= log2 tonearest ldbl-96-intel 0x4p-16384L : -0x3.ffep+12L : inexact-ok
+= log2 towardzero ldbl-96-intel 0x4p-16384L : -0x3.ffep+12L : inexact-ok
+= log2 upward ldbl-96-intel 0x4p-16384L : -0x3.ffep+12L : inexact-ok
+= log2 downward ldbl-96-m68k 0x4p-16384L : -0x3.ffep+12L : inexact-ok
+= log2 tonearest ldbl-96-m68k 0x4p-16384L : -0x3.ffep+12L : inexact-ok
+= log2 towardzero ldbl-96-m68k 0x4p-16384L : -0x3.ffep+12L : inexact-ok
+= log2 upward ldbl-96-m68k 0x4p-16384L : -0x3.ffep+12L : inexact-ok
+= log2 downward ldbl-128 0x4p-16384L : -0x3.ffep+12L : inexact-ok
+= log2 tonearest ldbl-128 0x4p-16384L : -0x3.ffep+12L : inexact-ok
+= log2 towardzero ldbl-128 0x4p-16384L : -0x3.ffep+12L : inexact-ok
+= log2 upward ldbl-128 0x4p-16384L : -0x3.ffep+12L : inexact-ok
+= log2 downward ldbl-96-intel 0x2p-16384L : -0x3.fffp+12L : inexact-ok
+= log2 tonearest ldbl-96-intel 0x2p-16384L : -0x3.fffp+12L : inexact-ok
+= log2 towardzero ldbl-96-intel 0x2p-16384L : -0x3.fffp+12L : inexact-ok
+= log2 upward ldbl-96-intel 0x2p-16384L : -0x3.fffp+12L : inexact-ok
+= log2 downward ldbl-96-m68k 0x2p-16384L : -0x3.fffp+12L : inexact-ok
+= log2 tonearest ldbl-96-m68k 0x2p-16384L : -0x3.fffp+12L : inexact-ok
+= log2 towardzero ldbl-96-m68k 0x2p-16384L : -0x3.fffp+12L : inexact-ok
+= log2 upward ldbl-96-m68k 0x2p-16384L : -0x3.fffp+12L : inexact-ok
+= log2 downward ldbl-128 0x2p-16384L : -0x3.fffp+12L : inexact-ok
+= log2 tonearest ldbl-128 0x2p-16384L : -0x3.fffp+12L : inexact-ok
+= log2 towardzero ldbl-128 0x2p-16384L : -0x3.fffp+12L : inexact-ok
+= log2 upward ldbl-128 0x2p-16384L : -0x3.fffp+12L : inexact-ok
+= log2 downward dbl-64 0x8p-972 : -0x3.c9p+8 : inexact-ok
+= log2 tonearest dbl-64 0x8p-972 : -0x3.c9p+8 : inexact-ok
+= log2 towardzero dbl-64 0x8p-972 : -0x3.c9p+8 : inexact-ok
+= log2 upward dbl-64 0x8p-972 : -0x3.c9p+8 : inexact-ok
+= log2 downward ldbl-96-intel 0x8p-972L : -0x3.c9p+8L : inexact-ok
+= log2 tonearest ldbl-96-intel 0x8p-972L : -0x3.c9p+8L : inexact-ok
+= log2 towardzero ldbl-96-intel 0x8p-972L : -0x3.c9p+8L : inexact-ok
+= log2 upward ldbl-96-intel 0x8p-972L : -0x3.c9p+8L : inexact-ok
+= log2 downward ldbl-96-m68k 0x8p-972L : -0x3.c9p+8L : inexact-ok
+= log2 tonearest ldbl-96-m68k 0x8p-972L : -0x3.c9p+8L : inexact-ok
+= log2 towardzero ldbl-96-m68k 0x8p-972L : -0x3.c9p+8L : inexact-ok
+= log2 upward ldbl-96-m68k 0x8p-972L : -0x3.c9p+8L : inexact-ok
+= log2 downward ldbl-128 0x8p-972L : -0x3.c9p+8L : inexact-ok
+= log2 tonearest ldbl-128 0x8p-972L : -0x3.c9p+8L : inexact-ok
+= log2 towardzero ldbl-128 0x8p-972L : -0x3.c9p+8L : inexact-ok
+= log2 upward ldbl-128 0x8p-972L : -0x3.c9p+8L : inexact-ok
+= log2 downward ldbl-128ibm 0x8p-972L : -0x3.c9p+8L : inexact-ok
+= log2 tonearest ldbl-128ibm 0x8p-972L : -0x3.c9p+8L : inexact-ok
+= log2 towardzero ldbl-128ibm 0x8p-972L : -0x3.c9p+8L : inexact-ok
+= log2 upward ldbl-128ibm 0x8p-972L : -0x3.c9p+8L : inexact-ok
+log2 min_subnorm
+= log2 downward flt-32 0x8p-152f : -0x9.5p+4f : inexact-ok
+= log2 tonearest flt-32 0x8p-152f : -0x9.5p+4f : inexact-ok
+= log2 towardzero flt-32 0x8p-152f : -0x9.5p+4f : inexact-ok
+= log2 upward flt-32 0x8p-152f : -0x9.5p+4f : inexact-ok
+= log2 downward dbl-64 0x8p-152 : -0x9.5p+4 : inexact-ok
+= log2 tonearest dbl-64 0x8p-152 : -0x9.5p+4 : inexact-ok
+= log2 towardzero dbl-64 0x8p-152 : -0x9.5p+4 : inexact-ok
+= log2 upward dbl-64 0x8p-152 : -0x9.5p+4 : inexact-ok
+= log2 downward ldbl-96-intel 0x8p-152L : -0x9.5p+4L : inexact-ok
+= log2 tonearest ldbl-96-intel 0x8p-152L : -0x9.5p+4L : inexact-ok
+= log2 towardzero ldbl-96-intel 0x8p-152L : -0x9.5p+4L : inexact-ok
+= log2 upward ldbl-96-intel 0x8p-152L : -0x9.5p+4L : inexact-ok
+= log2 downward ldbl-96-m68k 0x8p-152L : -0x9.5p+4L : inexact-ok
+= log2 tonearest ldbl-96-m68k 0x8p-152L : -0x9.5p+4L : inexact-ok
+= log2 towardzero ldbl-96-m68k 0x8p-152L : -0x9.5p+4L : inexact-ok
+= log2 upward ldbl-96-m68k 0x8p-152L : -0x9.5p+4L : inexact-ok
+= log2 downward ldbl-128 0x8p-152L : -0x9.5p+4L : inexact-ok
+= log2 tonearest ldbl-128 0x8p-152L : -0x9.5p+4L : inexact-ok
+= log2 towardzero ldbl-128 0x8p-152L : -0x9.5p+4L : inexact-ok
+= log2 upward ldbl-128 0x8p-152L : -0x9.5p+4L : inexact-ok
+= log2 downward ldbl-128ibm 0x8p-152L : -0x9.5p+4L : inexact-ok
+= log2 tonearest ldbl-128ibm 0x8p-152L : -0x9.5p+4L : inexact-ok
+= log2 towardzero ldbl-128ibm 0x8p-152L : -0x9.5p+4L : inexact-ok
+= log2 upward ldbl-128ibm 0x8p-152L : -0x9.5p+4L : inexact-ok
+= log2 downward dbl-64 0x4p-1076 : -0x4.32p+8 : inexact-ok
+= log2 tonearest dbl-64 0x4p-1076 : -0x4.32p+8 : inexact-ok
+= log2 towardzero dbl-64 0x4p-1076 : -0x4.32p+8 : inexact-ok
+= log2 upward dbl-64 0x4p-1076 : -0x4.32p+8 : inexact-ok
+= log2 downward ldbl-96-intel 0x4p-1076L : -0x4.32p+8L : inexact-ok
+= log2 tonearest ldbl-96-intel 0x4p-1076L : -0x4.32p+8L : inexact-ok
+= log2 towardzero ldbl-96-intel 0x4p-1076L : -0x4.32p+8L : inexact-ok
+= log2 upward ldbl-96-intel 0x4p-1076L : -0x4.32p+8L : inexact-ok
+= log2 downward ldbl-96-m68k 0x4p-1076L : -0x4.32p+8L : inexact-ok
+= log2 tonearest ldbl-96-m68k 0x4p-1076L : -0x4.32p+8L : inexact-ok
+= log2 towardzero ldbl-96-m68k 0x4p-1076L : -0x4.32p+8L : inexact-ok
+= log2 upward ldbl-96-m68k 0x4p-1076L : -0x4.32p+8L : inexact-ok
+= log2 downward ldbl-128 0x4p-1076L : -0x4.32p+8L : inexact-ok
+= log2 tonearest ldbl-128 0x4p-1076L : -0x4.32p+8L : inexact-ok
+= log2 towardzero ldbl-128 0x4p-1076L : -0x4.32p+8L : inexact-ok
+= log2 upward ldbl-128 0x4p-1076L : -0x4.32p+8L : inexact-ok
+= log2 downward ldbl-128ibm 0x4p-1076L : -0x4.32p+8L : inexact-ok
+= log2 tonearest ldbl-128ibm 0x4p-1076L : -0x4.32p+8L : inexact-ok
+= log2 towardzero ldbl-128ibm 0x4p-1076L : -0x4.32p+8L : inexact-ok
+= log2 upward ldbl-128ibm 0x4p-1076L : -0x4.32p+8L : inexact-ok
+= log2 downward ldbl-96-intel 0x8p-16448L : -0x4.03dp+12L : inexact-ok
+= log2 tonearest ldbl-96-intel 0x8p-16448L : -0x4.03dp+12L : inexact-ok
+= log2 towardzero ldbl-96-intel 0x8p-16448L : -0x4.03dp+12L : inexact-ok
+= log2 upward ldbl-96-intel 0x8p-16448L : -0x4.03dp+12L : inexact-ok
+= log2 downward ldbl-96-m68k 0x8p-16448L : -0x4.03dp+12L : inexact-ok
+= log2 tonearest ldbl-96-m68k 0x8p-16448L : -0x4.03dp+12L : inexact-ok
+= log2 towardzero ldbl-96-m68k 0x8p-16448L : -0x4.03dp+12L : inexact-ok
+= log2 upward ldbl-96-m68k 0x8p-16448L : -0x4.03dp+12L : inexact-ok
+= log2 downward ldbl-128 0x8p-16448L : -0x4.03dp+12L : inexact-ok
+= log2 tonearest ldbl-128 0x8p-16448L : -0x4.03dp+12L : inexact-ok
+= log2 towardzero ldbl-128 0x8p-16448L : -0x4.03dp+12L : inexact-ok
+= log2 upward ldbl-128 0x8p-16448L : -0x4.03dp+12L : inexact-ok
+= log2 downward ldbl-96-m68k 0x4p-16448L : -0x4.03ep+12L : inexact-ok
+= log2 tonearest ldbl-96-m68k 0x4p-16448L : -0x4.03ep+12L : inexact-ok
+= log2 towardzero ldbl-96-m68k 0x4p-16448L : -0x4.03ep+12L : inexact-ok
+= log2 upward ldbl-96-m68k 0x4p-16448L : -0x4.03ep+12L : inexact-ok
+= log2 downward ldbl-128 0x4p-16448L : -0x4.03ep+12L : inexact-ok
+= log2 tonearest ldbl-128 0x4p-16448L : -0x4.03ep+12L : inexact-ok
+= log2 towardzero ldbl-128 0x4p-16448L : -0x4.03ep+12L : inexact-ok
+= log2 upward ldbl-128 0x4p-16448L : -0x4.03ep+12L : inexact-ok
+= log2 downward ldbl-128 0x4p-16496L : -0x4.06ep+12L : inexact-ok
+= log2 tonearest ldbl-128 0x4p-16496L : -0x4.06ep+12L : inexact-ok
+= log2 towardzero ldbl-128 0x4p-16496L : -0x4.06ep+12L : inexact-ok
+= log2 upward ldbl-128 0x4p-16496L : -0x4.06ep+12L : inexact-ok
 pow 0 0
 = pow downward flt-32 0x0p+0f 0x0p+0f : 0x1p+0f : inexact-ok
 = pow tonearest flt-32 0x0p+0f 0x0p+0f : 0x1p+0f : inexact-ok