summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog15
-rw-r--r--NEWS30
-rw-r--r--math/auto-libm-test-in16
-rw-r--r--math/auto-libm-test-out948
-rw-r--r--sysdeps/ieee754/dbl-64/e_j1.c13
-rw-r--r--sysdeps/ieee754/dbl-64/e_jn.c5
-rw-r--r--sysdeps/ieee754/flt-32/e_j1f.c10
-rw-r--r--sysdeps/ieee754/flt-32/e_jnf.c4
-rw-r--r--sysdeps/ieee754/ldbl-128/e_jnl.c5
-rw-r--r--sysdeps/ieee754/ldbl-128ibm/e_jnl.c5
-rw-r--r--sysdeps/ieee754/ldbl-96/e_j1l.c13
-rw-r--r--sysdeps/ieee754/ldbl-96/e_jnl.c5
12 files changed, 1049 insertions, 20 deletions
diff --git a/ChangeLog b/ChangeLog
index c6f0e494e4..cd03015ad8 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,20 @@
2015-06-29 Joseph Myers <joseph@codesourcery.com>
+ [BZ #16559]
+ * sysdeps/ieee754/dbl-64/e_j1.c: Include <float.h>.
+ (__ieee754_j1): Force underflow exception for small results.
+ * sysdeps/ieee754/dbl-64/e_jn.c (__ieee754_jn): Likewise.
+ * sysdeps/ieee754/flt-32/e_j1f.c: Include <float.h>.
+ (__ieee754_j1f): Force underflow exception for small results.
+ * sysdeps/ieee754/flt-32/e_jnf.c (__ieee754_jnf): Likewise.
+ * sysdeps/ieee754/ldbl-128/e_jnl.c (__ieee754_jnl): Likewise.
+ * sysdeps/ieee754/ldbl-128ibm/e_jnl.c (__ieee754_jnl): Likewise.
+ * sysdeps/ieee754/ldbl-96/e_j1l.c: Include <float.h>.
+ (__ieee754_j1l): Force underflow exception for small results.
+ * sysdeps/ieee754/ldbl-96/e_jnl.c (__ieee754_jnl): Likewise.
+ * math/auto-libm-test-in: Add more tests of j1 and jn.
+ * math/auto-libm-test-out: Regenerated.
+
* sysdeps/unix/sysv/linux/bits/in.h (IP_CHECKSUM): New macro.
* sysdeps/unix/sysv/linux/bits/socket.h (PF_IB): Likewise.
(PF_MPLS): Likewise.
diff --git a/NEWS b/NEWS
index 6bfb82275d..c454e912be 100644
--- a/NEWS
+++ b/NEWS
@@ -11,21 +11,21 @@ Version 2.22
438, 4719, 6792, 13028, 13064, 14094, 14841, 14906, 14958, 15319, 15467,
15790, 15969, 16159, 16339, 16350, 16351, 16352, 16353, 16361, 16512,
- 16526, 16538, 16560, 16704, 16783, 16850, 17053, 17090, 17195, 17269,
- 17293, 17322, 17403, 17523, 17542, 17569, 17581, 17588, 17596, 17620,
- 17621, 17628, 17631, 17692, 17711, 17715, 17776, 17779, 17792, 17836,
- 17841, 17912, 17916, 17930, 17932, 17944, 17949, 17964, 17965, 17967,
- 17969, 17977, 17978, 17987, 17991, 17996, 17998, 17999, 18007, 18019,
- 18020, 18029, 18030, 18032, 18034, 18036, 18038, 18039, 18042, 18043,
- 18046, 18047, 18049, 18068, 18080, 18093, 18100, 18104, 18110, 18111,
- 18116, 18125, 18128, 18138, 18185, 18196, 18197, 18206, 18210, 18211,
- 18217, 18219, 18220, 18221, 18234, 18244, 18245, 18247, 18287, 18319,
- 18324, 18333, 18346, 18371, 18397, 18409, 18410, 18412, 18418, 18422,
- 18434, 18444, 18468, 18469, 18470, 18479, 18483, 18495, 18496, 18497,
- 18498, 18502, 18507, 18512, 18513, 18519, 18520, 18522, 18527, 18528,
- 18529, 18530, 18532, 18533, 18534, 18536, 18539, 18540, 18542, 18544,
- 18545, 18546, 18547, 18549, 18553, 18558, 18569, 18583, 18585, 18586,
- 18593, 18594, 18602.
+ 16526, 16538, 16559, 16560, 16704, 16783, 16850, 17053, 17090, 17195,
+ 17269, 17293, 17322, 17403, 17523, 17542, 17569, 17581, 17588, 17596,
+ 17620, 17621, 17628, 17631, 17692, 17711, 17715, 17776, 17779, 17792,
+ 17836, 17841, 17912, 17916, 17930, 17932, 17944, 17949, 17964, 17965,
+ 17967, 17969, 17977, 17978, 17987, 17991, 17996, 17998, 17999, 18007,
+ 18019, 18020, 18029, 18030, 18032, 18034, 18036, 18038, 18039, 18042,
+ 18043, 18046, 18047, 18049, 18068, 18080, 18093, 18100, 18104, 18110,
+ 18111, 18116, 18125, 18128, 18138, 18185, 18196, 18197, 18206, 18210,
+ 18211, 18217, 18219, 18220, 18221, 18234, 18244, 18245, 18247, 18287,
+ 18319, 18324, 18333, 18346, 18371, 18397, 18409, 18410, 18412, 18418,
+ 18422, 18434, 18444, 18468, 18469, 18470, 18479, 18483, 18495, 18496,
+ 18497, 18498, 18502, 18507, 18512, 18513, 18519, 18520, 18522, 18527,
+ 18528, 18529, 18530, 18532, 18533, 18534, 18536, 18539, 18540, 18542,
+ 18544, 18545, 18546, 18547, 18549, 18553, 18558, 18569, 18583, 18585,
+ 18586, 18593, 18594, 18602.
* Cache information can be queried via sysconf() function on s390 e.g. with
_SC_LEVEL1_ICACHE_SIZE as argument.
diff --git a/math/auto-libm-test-in b/math/auto-libm-test-in
index 75cf545a86..34b02c91f7 100644
--- a/math/auto-libm-test-in
+++ b/math/auto-libm-test-in
@@ -1812,6 +1812,11 @@ j1 0x1.ff00000000002p+840
j1 0x1p1023
j1 0x1p16382
j1 0x1p16383
+# Bug 18611: errno setting may be missing.
+j1 min missing-errno
+j1 -min missing-errno
+j1 min_subnorm missing-errno
+j1 -min_subnorm missing-errno
# jn (0, x) == j0 (x).
jn 0 -1.0
@@ -1836,6 +1841,11 @@ jn 1 1.5
jn 1 2.0
jn 1 8.0
jn 1 10.0
+# Bug 18611: errno setting may be missing.
+jn 1 min missing-errno
+jn 1 -min missing-errno
+jn 1 min_subnorm missing-errno
+jn 1 -min_subnorm missing-errno
jn 3 -1.0
jn 3 0.0
@@ -1867,6 +1877,12 @@ jn 2 0x1p127
jn 2 0x1p1023
jn 2 0x1p16383
+# Bug 18611: errno setting may be missing.
+jn 10 min missing-errno
+jn 10 -min missing-errno
+jn 10 min_subnorm missing-errno
+jn 10 -min_subnorm missing-errno
+
lgamma max
lgamma 1
lgamma 3
diff --git a/math/auto-libm-test-out b/math/auto-libm-test-out
index 448232995a..8ae005d081 100644
--- a/math/auto-libm-test-out
+++ b/math/auto-libm-test-out
@@ -142437,6 +142437,322 @@ j1 0x1p16383
= j1 tonearest ldbl-128ibm 0xf.ffffffffffffbffffffffffffcp+1020L : -0x5.34b8be56c9cb044a0ef191b026p-516L : inexact-ok
= j1 towardzero ldbl-128ibm 0xf.ffffffffffffbffffffffffffcp+1020L : -0x5.34b8be56c9cb044a0ef191b024p-516L : inexact-ok
= j1 upward ldbl-128ibm 0xf.ffffffffffffbffffffffffffcp+1020L : -0x5.34b8be56c9cb044a0ef191b024p-516L : inexact-ok
+j1 min missing-errno
+= j1 downward flt-32 0x4p-128f : 0x1.fffff8p-128f : inexact-ok underflow errno-erange-ok
+= j1 tonearest flt-32 0x4p-128f : 0x2p-128f : inexact-ok underflow errno-erange-ok
+= j1 towardzero flt-32 0x4p-128f : 0x1.fffff8p-128f : inexact-ok underflow errno-erange-ok
+= j1 upward flt-32 0x4p-128f : 0x2p-128f : inexact-ok underflow errno-erange-ok
+= j1 downward dbl-64 0x4p-128 : 0x1.fffffffffffffp-128 : inexact-ok
+= j1 tonearest dbl-64 0x4p-128 : 0x2p-128 : inexact-ok
+= j1 towardzero dbl-64 0x4p-128 : 0x1.fffffffffffffp-128 : inexact-ok
+= j1 upward dbl-64 0x4p-128 : 0x2p-128 : inexact-ok
+= j1 downward ldbl-96-intel 0x4p-128L : 0x1.fffffffffffffffep-128L : inexact-ok
+= j1 tonearest ldbl-96-intel 0x4p-128L : 0x2p-128L : inexact-ok
+= j1 towardzero ldbl-96-intel 0x4p-128L : 0x1.fffffffffffffffep-128L : inexact-ok
+= j1 upward ldbl-96-intel 0x4p-128L : 0x2p-128L : inexact-ok
+= j1 downward ldbl-96-m68k 0x4p-128L : 0x1.fffffffffffffffep-128L : inexact-ok
+= j1 tonearest ldbl-96-m68k 0x4p-128L : 0x2p-128L : inexact-ok
+= j1 towardzero ldbl-96-m68k 0x4p-128L : 0x1.fffffffffffffffep-128L : inexact-ok
+= j1 upward ldbl-96-m68k 0x4p-128L : 0x2p-128L : inexact-ok
+= j1 downward ldbl-128 0x4p-128L : 0x1.ffffffffffffffffffffffffffffp-128L : inexact-ok
+= j1 tonearest ldbl-128 0x4p-128L : 0x2p-128L : inexact-ok
+= j1 towardzero ldbl-128 0x4p-128L : 0x1.ffffffffffffffffffffffffffffp-128L : inexact-ok
+= j1 upward ldbl-128 0x4p-128L : 0x2p-128L : inexact-ok
+= j1 downward ldbl-128ibm 0x4p-128L : 0x1.ffffffffffffffffffffffffff8p-128L : inexact-ok
+= j1 tonearest ldbl-128ibm 0x4p-128L : 0x2p-128L : inexact-ok
+= j1 towardzero ldbl-128ibm 0x4p-128L : 0x1.ffffffffffffffffffffffffff8p-128L : inexact-ok
+= j1 upward ldbl-128ibm 0x4p-128L : 0x2p-128L : inexact-ok
+= j1 downward dbl-64 0x4p-1024 : 0x1.ffffffffffffcp-1024 : inexact-ok underflow errno-erange-ok
+= j1 tonearest dbl-64 0x4p-1024 : 0x2p-1024 : inexact-ok underflow errno-erange-ok
+= j1 towardzero dbl-64 0x4p-1024 : 0x1.ffffffffffffcp-1024 : inexact-ok underflow errno-erange-ok
+= j1 upward dbl-64 0x4p-1024 : 0x2p-1024 : inexact-ok underflow errno-erange-ok
+= j1 downward ldbl-96-intel 0x4p-1024L : 0x1.fffffffffffffffep-1024L : inexact-ok
+= j1 tonearest ldbl-96-intel 0x4p-1024L : 0x2p-1024L : inexact-ok
+= j1 towardzero ldbl-96-intel 0x4p-1024L : 0x1.fffffffffffffffep-1024L : inexact-ok
+= j1 upward ldbl-96-intel 0x4p-1024L : 0x2p-1024L : inexact-ok
+= j1 downward ldbl-96-m68k 0x4p-1024L : 0x1.fffffffffffffffep-1024L : inexact-ok
+= j1 tonearest ldbl-96-m68k 0x4p-1024L : 0x2p-1024L : inexact-ok
+= j1 towardzero ldbl-96-m68k 0x4p-1024L : 0x1.fffffffffffffffep-1024L : inexact-ok
+= j1 upward ldbl-96-m68k 0x4p-1024L : 0x2p-1024L : inexact-ok
+= j1 downward ldbl-128 0x4p-1024L : 0x1.ffffffffffffffffffffffffffffp-1024L : inexact-ok
+= j1 tonearest ldbl-128 0x4p-1024L : 0x2p-1024L : inexact-ok
+= j1 towardzero ldbl-128 0x4p-1024L : 0x1.ffffffffffffffffffffffffffffp-1024L : inexact-ok
+= j1 upward ldbl-128 0x4p-1024L : 0x2p-1024L : inexact-ok
+= j1 downward ldbl-128ibm 0x4p-1024L : 0x1.ffffffffffffcp-1024L : inexact-ok underflow errno-erange-ok
+= j1 tonearest ldbl-128ibm 0x4p-1024L : 0x2p-1024L : inexact-ok underflow errno-erange-ok
+= j1 towardzero ldbl-128ibm 0x4p-1024L : 0x1.ffffffffffffcp-1024L : inexact-ok underflow errno-erange-ok
+= j1 upward ldbl-128ibm 0x4p-1024L : 0x2p-1024L : inexact-ok underflow errno-erange-ok
+= j1 downward ldbl-96-intel 0x4p-16384L : 0x1.fffffffffffffff8p-16384L : inexact-ok underflow errno-erange-ok
+= j1 tonearest ldbl-96-intel 0x4p-16384L : 0x2p-16384L : inexact-ok underflow errno-erange-ok
+= j1 towardzero ldbl-96-intel 0x4p-16384L : 0x1.fffffffffffffff8p-16384L : inexact-ok underflow errno-erange-ok
+= j1 upward ldbl-96-intel 0x4p-16384L : 0x2p-16384L : inexact-ok underflow errno-erange-ok
+= j1 downward ldbl-96-m68k 0x4p-16384L : 0x1.fffffffffffffffcp-16384L : inexact-ok underflow-ok errno-erange-ok
+= j1 tonearest ldbl-96-m68k 0x4p-16384L : 0x2p-16384L : inexact-ok underflow-ok errno-erange-ok
+= j1 towardzero ldbl-96-m68k 0x4p-16384L : 0x1.fffffffffffffffcp-16384L : inexact-ok underflow-ok errno-erange-ok
+= j1 upward ldbl-96-m68k 0x4p-16384L : 0x2p-16384L : inexact-ok underflow-ok errno-erange-ok
+= j1 downward ldbl-128 0x4p-16384L : 0x1.fffffffffffffffffffffffffffcp-16384L : inexact-ok underflow errno-erange-ok
+= j1 tonearest ldbl-128 0x4p-16384L : 0x2p-16384L : inexact-ok underflow errno-erange-ok
+= j1 towardzero ldbl-128 0x4p-16384L : 0x1.fffffffffffffffffffffffffffcp-16384L : inexact-ok underflow errno-erange-ok
+= j1 upward ldbl-128 0x4p-16384L : 0x2p-16384L : inexact-ok underflow errno-erange-ok
+= j1 downward ldbl-96-intel 0x2p-16384L : 0xf.ffffffffffffff8p-16388L : inexact-ok underflow errno-erange-ok
+= j1 tonearest ldbl-96-intel 0x2p-16384L : 0x1p-16384L : inexact-ok underflow errno-erange-ok
+= j1 towardzero ldbl-96-intel 0x2p-16384L : 0xf.ffffffffffffff8p-16388L : inexact-ok underflow errno-erange-ok
+= j1 upward ldbl-96-intel 0x2p-16384L : 0x1p-16384L : inexact-ok underflow errno-erange-ok
+= j1 downward ldbl-96-m68k 0x2p-16384L : 0xf.ffffffffffffffcp-16388L : inexact-ok underflow errno-erange-ok
+= j1 tonearest ldbl-96-m68k 0x2p-16384L : 0x1p-16384L : inexact-ok underflow errno-erange-ok
+= j1 towardzero ldbl-96-m68k 0x2p-16384L : 0xf.ffffffffffffffcp-16388L : inexact-ok underflow errno-erange-ok
+= j1 upward ldbl-96-m68k 0x2p-16384L : 0x1p-16384L : inexact-ok underflow errno-erange-ok
+= j1 downward ldbl-128 0x2p-16384L : 0xf.ffffffffffffffffffffffffffcp-16388L : inexact-ok underflow errno-erange-ok
+= j1 tonearest ldbl-128 0x2p-16384L : 0x1p-16384L : inexact-ok underflow errno-erange-ok
+= j1 towardzero ldbl-128 0x2p-16384L : 0xf.ffffffffffffffffffffffffffcp-16388L : inexact-ok underflow errno-erange-ok
+= j1 upward ldbl-128 0x2p-16384L : 0x1p-16384L : inexact-ok underflow errno-erange-ok
+= j1 downward dbl-64 0x8p-972 : 0x3.ffffffffffffep-972 : inexact-ok
+= j1 tonearest dbl-64 0x8p-972 : 0x4p-972 : inexact-ok
+= j1 towardzero dbl-64 0x8p-972 : 0x3.ffffffffffffep-972 : inexact-ok
+= j1 upward dbl-64 0x8p-972 : 0x4p-972 : inexact-ok
+= j1 downward ldbl-96-intel 0x8p-972L : 0x3.fffffffffffffffcp-972L : inexact-ok
+= j1 tonearest ldbl-96-intel 0x8p-972L : 0x4p-972L : inexact-ok
+= j1 towardzero ldbl-96-intel 0x8p-972L : 0x3.fffffffffffffffcp-972L : inexact-ok
+= j1 upward ldbl-96-intel 0x8p-972L : 0x4p-972L : inexact-ok
+= j1 downward ldbl-96-m68k 0x8p-972L : 0x3.fffffffffffffffcp-972L : inexact-ok
+= j1 tonearest ldbl-96-m68k 0x8p-972L : 0x4p-972L : inexact-ok
+= j1 towardzero ldbl-96-m68k 0x8p-972L : 0x3.fffffffffffffffcp-972L : inexact-ok
+= j1 upward ldbl-96-m68k 0x8p-972L : 0x4p-972L : inexact-ok
+= j1 downward ldbl-128 0x8p-972L : 0x3.fffffffffffffffffffffffffffep-972L : inexact-ok
+= j1 tonearest ldbl-128 0x8p-972L : 0x4p-972L : inexact-ok
+= j1 towardzero ldbl-128 0x8p-972L : 0x3.fffffffffffffffffffffffffffep-972L : inexact-ok
+= j1 upward ldbl-128 0x8p-972L : 0x4p-972L : inexact-ok
+= j1 downward ldbl-128ibm 0x8p-972L : 0x3.fffffffffffffffffffffffffcp-972L : inexact-ok underflow errno-erange-ok
+= j1 tonearest ldbl-128ibm 0x8p-972L : 0x4p-972L : inexact-ok underflow errno-erange-ok
+= j1 towardzero ldbl-128ibm 0x8p-972L : 0x3.fffffffffffffffffffffffffcp-972L : inexact-ok underflow errno-erange-ok
+= j1 upward ldbl-128ibm 0x8p-972L : 0x4p-972L : inexact-ok underflow errno-erange-ok
+j1 -min missing-errno
+= j1 downward flt-32 -0x4p-128f : -0x2p-128f : inexact-ok underflow errno-erange-ok
+= j1 tonearest flt-32 -0x4p-128f : -0x2p-128f : inexact-ok underflow errno-erange-ok
+= j1 towardzero flt-32 -0x4p-128f : -0x1.fffff8p-128f : inexact-ok underflow errno-erange-ok
+= j1 upward flt-32 -0x4p-128f : -0x1.fffff8p-128f : inexact-ok underflow errno-erange-ok
+= j1 downward dbl-64 -0x4p-128 : -0x2p-128 : inexact-ok
+= j1 tonearest dbl-64 -0x4p-128 : -0x2p-128 : inexact-ok
+= j1 towardzero dbl-64 -0x4p-128 : -0x1.fffffffffffffp-128 : inexact-ok
+= j1 upward dbl-64 -0x4p-128 : -0x1.fffffffffffffp-128 : inexact-ok
+= j1 downward ldbl-96-intel -0x4p-128L : -0x2p-128L : inexact-ok
+= j1 tonearest ldbl-96-intel -0x4p-128L : -0x2p-128L : inexact-ok
+= j1 towardzero ldbl-96-intel -0x4p-128L : -0x1.fffffffffffffffep-128L : inexact-ok
+= j1 upward ldbl-96-intel -0x4p-128L : -0x1.fffffffffffffffep-128L : inexact-ok
+= j1 downward ldbl-96-m68k -0x4p-128L : -0x2p-128L : inexact-ok
+= j1 tonearest ldbl-96-m68k -0x4p-128L : -0x2p-128L : inexact-ok
+= j1 towardzero ldbl-96-m68k -0x4p-128L : -0x1.fffffffffffffffep-128L : inexact-ok
+= j1 upward ldbl-96-m68k -0x4p-128L : -0x1.fffffffffffffffep-128L : inexact-ok
+= j1 downward ldbl-128 -0x4p-128L : -0x2p-128L : inexact-ok
+= j1 tonearest ldbl-128 -0x4p-128L : -0x2p-128L : inexact-ok
+= j1 towardzero ldbl-128 -0x4p-128L : -0x1.ffffffffffffffffffffffffffffp-128L : inexact-ok
+= j1 upward ldbl-128 -0x4p-128L : -0x1.ffffffffffffffffffffffffffffp-128L : inexact-ok
+= j1 downward ldbl-128ibm -0x4p-128L : -0x2p-128L : inexact-ok
+= j1 tonearest ldbl-128ibm -0x4p-128L : -0x2p-128L : inexact-ok
+= j1 towardzero ldbl-128ibm -0x4p-128L : -0x1.ffffffffffffffffffffffffff8p-128L : inexact-ok
+= j1 upward ldbl-128ibm -0x4p-128L : -0x1.ffffffffffffffffffffffffff8p-128L : inexact-ok
+= j1 downward dbl-64 -0x4p-1024 : -0x2p-1024 : inexact-ok underflow errno-erange-ok
+= j1 tonearest dbl-64 -0x4p-1024 : -0x2p-1024 : inexact-ok underflow errno-erange-ok
+= j1 towardzero dbl-64 -0x4p-1024 : -0x1.ffffffffffffcp-1024 : inexact-ok underflow errno-erange-ok
+= j1 upward dbl-64 -0x4p-1024 : -0x1.ffffffffffffcp-1024 : inexact-ok underflow errno-erange-ok
+= j1 downward ldbl-96-intel -0x4p-1024L : -0x2p-1024L : inexact-ok
+= j1 tonearest ldbl-96-intel -0x4p-1024L : -0x2p-1024L : inexact-ok
+= j1 towardzero ldbl-96-intel -0x4p-1024L : -0x1.fffffffffffffffep-1024L : inexact-ok
+= j1 upward ldbl-96-intel -0x4p-1024L : -0x1.fffffffffffffffep-1024L : inexact-ok
+= j1 downward ldbl-96-m68k -0x4p-1024L : -0x2p-1024L : inexact-ok
+= j1 tonearest ldbl-96-m68k -0x4p-1024L : -0x2p-1024L : inexact-ok
+= j1 towardzero ldbl-96-m68k -0x4p-1024L : -0x1.fffffffffffffffep-1024L : inexact-ok
+= j1 upward ldbl-96-m68k -0x4p-1024L : -0x1.fffffffffffffffep-1024L : inexact-ok
+= j1 downward ldbl-128 -0x4p-1024L : -0x2p-1024L : inexact-ok
+= j1 tonearest ldbl-128 -0x4p-1024L : -0x2p-1024L : inexact-ok
+= j1 towardzero ldbl-128 -0x4p-1024L : -0x1.ffffffffffffffffffffffffffffp-1024L : inexact-ok
+= j1 upward ldbl-128 -0x4p-1024L : -0x1.ffffffffffffffffffffffffffffp-1024L : inexact-ok
+= j1 downward ldbl-128ibm -0x4p-1024L : -0x2p-1024L : inexact-ok underflow errno-erange-ok
+= j1 tonearest ldbl-128ibm -0x4p-1024L : -0x2p-1024L : inexact-ok underflow errno-erange-ok
+= j1 towardzero ldbl-128ibm -0x4p-1024L : -0x1.ffffffffffffcp-1024L : inexact-ok underflow errno-erange-ok
+= j1 upward ldbl-128ibm -0x4p-1024L : -0x1.ffffffffffffcp-1024L : inexact-ok underflow errno-erange-ok
+= j1 downward ldbl-96-intel -0x4p-16384L : -0x2p-16384L : inexact-ok underflow errno-erange-ok
+= j1 tonearest ldbl-96-intel -0x4p-16384L : -0x2p-16384L : inexact-ok underflow errno-erange-ok
+= j1 towardzero ldbl-96-intel -0x4p-16384L : -0x1.fffffffffffffff8p-16384L : inexact-ok underflow errno-erange-ok
+= j1 upward ldbl-96-intel -0x4p-16384L : -0x1.fffffffffffffff8p-16384L : inexact-ok underflow errno-erange-ok
+= j1 downward ldbl-96-m68k -0x4p-16384L : -0x2p-16384L : inexact-ok underflow-ok errno-erange-ok
+= j1 tonearest ldbl-96-m68k -0x4p-16384L : -0x2p-16384L : inexact-ok underflow-ok errno-erange-ok
+= j1 towardzero ldbl-96-m68k -0x4p-16384L : -0x1.fffffffffffffffcp-16384L : inexact-ok underflow-ok errno-erange-ok
+= j1 upward ldbl-96-m68k -0x4p-16384L : -0x1.fffffffffffffffcp-16384L : inexact-ok underflow-ok errno-erange-ok
+= j1 downward ldbl-128 -0x4p-16384L : -0x2p-16384L : inexact-ok underflow errno-erange-ok
+= j1 tonearest ldbl-128 -0x4p-16384L : -0x2p-16384L : inexact-ok underflow errno-erange-ok
+= j1 towardzero ldbl-128 -0x4p-16384L : -0x1.fffffffffffffffffffffffffffcp-16384L : inexact-ok underflow errno-erange-ok
+= j1 upward ldbl-128 -0x4p-16384L : -0x1.fffffffffffffffffffffffffffcp-16384L : inexact-ok underflow errno-erange-ok
+= j1 downward ldbl-96-intel -0x2p-16384L : -0x1p-16384L : inexact-ok underflow errno-erange-ok
+= j1 tonearest ldbl-96-intel -0x2p-16384L : -0x1p-16384L : inexact-ok underflow errno-erange-ok
+= j1 towardzero ldbl-96-intel -0x2p-16384L : -0xf.ffffffffffffff8p-16388L : inexact-ok underflow errno-erange-ok
+= j1 upward ldbl-96-intel -0x2p-16384L : -0xf.ffffffffffffff8p-16388L : inexact-ok underflow errno-erange-ok
+= j1 downward ldbl-96-m68k -0x2p-16384L : -0x1p-16384L : inexact-ok underflow errno-erange-ok
+= j1 tonearest ldbl-96-m68k -0x2p-16384L : -0x1p-16384L : inexact-ok underflow errno-erange-ok
+= j1 towardzero ldbl-96-m68k -0x2p-16384L : -0xf.ffffffffffffffcp-16388L : inexact-ok underflow errno-erange-ok
+= j1 upward ldbl-96-m68k -0x2p-16384L : -0xf.ffffffffffffffcp-16388L : inexact-ok underflow errno-erange-ok
+= j1 downward ldbl-128 -0x2p-16384L : -0x1p-16384L : inexact-ok underflow errno-erange-ok
+= j1 tonearest ldbl-128 -0x2p-16384L : -0x1p-16384L : inexact-ok underflow errno-erange-ok
+= j1 towardzero ldbl-128 -0x2p-16384L : -0xf.ffffffffffffffffffffffffffcp-16388L : inexact-ok underflow errno-erange-ok
+= j1 upward ldbl-128 -0x2p-16384L : -0xf.ffffffffffffffffffffffffffcp-16388L : inexact-ok underflow errno-erange-ok
+= j1 downward dbl-64 -0x8p-972 : -0x4p-972 : inexact-ok
+= j1 tonearest dbl-64 -0x8p-972 : -0x4p-972 : inexact-ok
+= j1 towardzero dbl-64 -0x8p-972 : -0x3.ffffffffffffep-972 : inexact-ok
+= j1 upward dbl-64 -0x8p-972 : -0x3.ffffffffffffep-972 : inexact-ok
+= j1 downward ldbl-96-intel -0x8p-972L : -0x4p-972L : inexact-ok
+= j1 tonearest ldbl-96-intel -0x8p-972L : -0x4p-972L : inexact-ok
+= j1 towardzero ldbl-96-intel -0x8p-972L : -0x3.fffffffffffffffcp-972L : inexact-ok
+= j1 upward ldbl-96-intel -0x8p-972L : -0x3.fffffffffffffffcp-972L : inexact-ok
+= j1 downward ldbl-96-m68k -0x8p-972L : -0x4p-972L : inexact-ok
+= j1 tonearest ldbl-96-m68k -0x8p-972L : -0x4p-972L : inexact-ok
+= j1 towardzero ldbl-96-m68k -0x8p-972L : -0x3.fffffffffffffffcp-972L : inexact-ok
+= j1 upward ldbl-96-m68k -0x8p-972L : -0x3.fffffffffffffffcp-972L : inexact-ok
+= j1 downward ldbl-128 -0x8p-972L : -0x4p-972L : inexact-ok
+= j1 tonearest ldbl-128 -0x8p-972L : -0x4p-972L : inexact-ok
+= j1 towardzero ldbl-128 -0x8p-972L : -0x3.fffffffffffffffffffffffffffep-972L : inexact-ok
+= j1 upward ldbl-128 -0x8p-972L : -0x3.fffffffffffffffffffffffffffep-972L : inexact-ok
+= j1 downward ldbl-128ibm -0x8p-972L : -0x4p-972L : inexact-ok underflow errno-erange-ok
+= j1 tonearest ldbl-128ibm -0x8p-972L : -0x4p-972L : inexact-ok underflow errno-erange-ok
+= j1 towardzero ldbl-128ibm -0x8p-972L : -0x3.fffffffffffffffffffffffffcp-972L : inexact-ok underflow errno-erange-ok
+= j1 upward ldbl-128ibm -0x8p-972L : -0x3.fffffffffffffffffffffffffcp-972L : inexact-ok underflow errno-erange-ok
+j1 min_subnorm missing-errno
+= j1 downward flt-32 0x8p-152f : 0x0p+0f : inexact-ok underflow errno-erange errno-erange-ok
+= j1 tonearest flt-32 0x8p-152f : 0x0p+0f : inexact-ok underflow errno-erange errno-erange-ok
+= j1 towardzero flt-32 0x8p-152f : 0x0p+0f : inexact-ok underflow errno-erange errno-erange-ok
+= j1 upward flt-32 0x8p-152f : 0x8p-152f : inexact-ok underflow errno-erange-ok
+= j1 downward dbl-64 0x8p-152 : 0x3.ffffffffffffep-152 : inexact-ok
+= j1 tonearest dbl-64 0x8p-152 : 0x4p-152 : inexact-ok
+= j1 towardzero dbl-64 0x8p-152 : 0x3.ffffffffffffep-152 : inexact-ok
+= j1 upward dbl-64 0x8p-152 : 0x4p-152 : inexact-ok
+= j1 downward ldbl-96-intel 0x8p-152L : 0x3.fffffffffffffffcp-152L : inexact-ok
+= j1 tonearest ldbl-96-intel 0x8p-152L : 0x4p-152L : inexact-ok
+= j1 towardzero ldbl-96-intel 0x8p-152L : 0x3.fffffffffffffffcp-152L : inexact-ok
+= j1 upward ldbl-96-intel 0x8p-152L : 0x4p-152L : inexact-ok
+= j1 downward ldbl-96-m68k 0x8p-152L : 0x3.fffffffffffffffcp-152L : inexact-ok
+= j1 tonearest ldbl-96-m68k 0x8p-152L : 0x4p-152L : inexact-ok
+= j1 towardzero ldbl-96-m68k 0x8p-152L : 0x3.fffffffffffffffcp-152L : inexact-ok
+= j1 upward ldbl-96-m68k 0x8p-152L : 0x4p-152L : inexact-ok
+= j1 downward ldbl-128 0x8p-152L : 0x3.fffffffffffffffffffffffffffep-152L : inexact-ok
+= j1 tonearest ldbl-128 0x8p-152L : 0x4p-152L : inexact-ok
+= j1 towardzero ldbl-128 0x8p-152L : 0x3.fffffffffffffffffffffffffffep-152L : inexact-ok
+= j1 upward ldbl-128 0x8p-152L : 0x4p-152L : inexact-ok
+= j1 downward ldbl-128ibm 0x8p-152L : 0x3.ffffffffffffffffffffffffffp-152L : inexact-ok
+= j1 tonearest ldbl-128ibm 0x8p-152L : 0x4p-152L : inexact-ok
+= j1 towardzero ldbl-128ibm 0x8p-152L : 0x3.ffffffffffffffffffffffffffp-152L : inexact-ok
+= j1 upward ldbl-128ibm 0x8p-152L : 0x4p-152L : inexact-ok
+= j1 downward dbl-64 0x4p-1076 : 0x0p+0 : inexact-ok underflow errno-erange errno-erange-ok
+= j1 tonearest dbl-64 0x4p-1076 : 0x0p+0 : inexact-ok underflow errno-erange errno-erange-ok
+= j1 towardzero dbl-64 0x4p-1076 : 0x0p+0 : inexact-ok underflow errno-erange errno-erange-ok
+= j1 upward dbl-64 0x4p-1076 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= j1 downward ldbl-96-intel 0x4p-1076L : 0x1.fffffffffffffffep-1076L : inexact-ok
+= j1 tonearest ldbl-96-intel 0x4p-1076L : 0x2p-1076L : inexact-ok
+= j1 towardzero ldbl-96-intel 0x4p-1076L : 0x1.fffffffffffffffep-1076L : inexact-ok
+= j1 upward ldbl-96-intel 0x4p-1076L : 0x2p-1076L : inexact-ok
+= j1 downward ldbl-96-m68k 0x4p-1076L : 0x1.fffffffffffffffep-1076L : inexact-ok
+= j1 tonearest ldbl-96-m68k 0x4p-1076L : 0x2p-1076L : inexact-ok
+= j1 towardzero ldbl-96-m68k 0x4p-1076L : 0x1.fffffffffffffffep-1076L : inexact-ok
+= j1 upward ldbl-96-m68k 0x4p-1076L : 0x2p-1076L : inexact-ok
+= j1 downward ldbl-128 0x4p-1076L : 0x1.ffffffffffffffffffffffffffffp-1076L : inexact-ok
+= j1 tonearest ldbl-128 0x4p-1076L : 0x2p-1076L : inexact-ok
+= j1 towardzero ldbl-128 0x4p-1076L : 0x1.ffffffffffffffffffffffffffffp-1076L : inexact-ok
+= j1 upward ldbl-128 0x4p-1076L : 0x2p-1076L : inexact-ok
+= j1 downward ldbl-128ibm 0x4p-1076L : 0x0p+0L : inexact-ok underflow errno-erange errno-erange-ok
+= j1 tonearest ldbl-128ibm 0x4p-1076L : 0x0p+0L : inexact-ok underflow errno-erange errno-erange-ok
+= j1 towardzero ldbl-128ibm 0x4p-1076L : 0x0p+0L : inexact-ok underflow errno-erange errno-erange-ok
+= j1 upward ldbl-128ibm 0x4p-1076L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= j1 downward ldbl-96-intel 0x8p-16448L : 0x0p+0L : inexact-ok underflow errno-erange errno-erange-ok
+= j1 tonearest ldbl-96-intel 0x8p-16448L : 0x0p+0L : inexact-ok underflow errno-erange errno-erange-ok
+= j1 towardzero ldbl-96-intel 0x8p-16448L : 0x0p+0L : inexact-ok underflow errno-erange errno-erange-ok
+= j1 upward ldbl-96-intel 0x8p-16448L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= j1 downward ldbl-96-m68k 0x8p-16448L : 0x0p+0L : inexact-ok underflow errno-erange-ok
+= j1 tonearest ldbl-96-m68k 0x8p-16448L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= j1 towardzero ldbl-96-m68k 0x8p-16448L : 0x0p+0L : inexact-ok underflow errno-erange-ok
+= j1 upward ldbl-96-m68k 0x8p-16448L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= j1 downward ldbl-128 0x8p-16448L : 0x3.fffffffffffcp-16448L : inexact-ok underflow errno-erange-ok
+= j1 tonearest ldbl-128 0x8p-16448L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= j1 towardzero ldbl-128 0x8p-16448L : 0x3.fffffffffffcp-16448L : inexact-ok underflow errno-erange-ok
+= j1 upward ldbl-128 0x8p-16448L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= j1 downward ldbl-96-m68k 0x4p-16448L : 0x0p+0L : inexact-ok underflow errno-erange errno-erange-ok
+= j1 tonearest ldbl-96-m68k 0x4p-16448L : 0x0p+0L : inexact-ok underflow errno-erange errno-erange-ok
+= j1 towardzero ldbl-96-m68k 0x4p-16448L : 0x0p+0L : inexact-ok underflow errno-erange errno-erange-ok
+= j1 upward ldbl-96-m68k 0x4p-16448L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= j1 downward ldbl-128 0x4p-16448L : 0x1.fffffffffffcp-16448L : inexact-ok underflow errno-erange-ok
+= j1 tonearest ldbl-128 0x4p-16448L : 0x2p-16448L : inexact-ok underflow errno-erange-ok
+= j1 towardzero ldbl-128 0x4p-16448L : 0x1.fffffffffffcp-16448L : inexact-ok underflow errno-erange-ok
+= j1 upward ldbl-128 0x4p-16448L : 0x2p-16448L : inexact-ok underflow errno-erange-ok
+= j1 downward ldbl-128 0x4p-16496L : 0x0p+0L : inexact-ok underflow errno-erange errno-erange-ok
+= j1 tonearest ldbl-128 0x4p-16496L : 0x0p+0L : inexact-ok underflow errno-erange errno-erange-ok
+= j1 towardzero ldbl-128 0x4p-16496L : 0x0p+0L : inexact-ok underflow errno-erange errno-erange-ok
+= j1 upward ldbl-128 0x4p-16496L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+j1 -min_subnorm missing-errno
+= j1 downward flt-32 -0x8p-152f : -0x8p-152f : inexact-ok underflow errno-erange-ok
+= j1 tonearest flt-32 -0x8p-152f : -0x0p+0f : inexact-ok underflow errno-erange errno-erange-ok
+= j1 towardzero flt-32 -0x8p-152f : -0x0p+0f : inexact-ok underflow errno-erange errno-erange-ok
+= j1 upward flt-32 -0x8p-152f : -0x0p+0f : inexact-ok underflow errno-erange errno-erange-ok
+= j1 downward dbl-64 -0x8p-152 : -0x4p-152 : inexact-ok
+= j1 tonearest dbl-64 -0x8p-152 : -0x4p-152 : inexact-ok
+= j1 towardzero dbl-64 -0x8p-152 : -0x3.ffffffffffffep-152 : inexact-ok
+= j1 upward dbl-64 -0x8p-152 : -0x3.ffffffffffffep-152 : inexact-ok
+= j1 downward ldbl-96-intel -0x8p-152L : -0x4p-152L : inexact-ok
+= j1 tonearest ldbl-96-intel -0x8p-152L : -0x4p-152L : inexact-ok
+= j1 towardzero ldbl-96-intel -0x8p-152L : -0x3.fffffffffffffffcp-152L : inexact-ok
+= j1 upward ldbl-96-intel -0x8p-152L : -0x3.fffffffffffffffcp-152L : inexact-ok
+= j1 downward ldbl-96-m68k -0x8p-152L : -0x4p-152L : inexact-ok
+= j1 tonearest ldbl-96-m68k -0x8p-152L : -0x4p-152L : inexact-ok
+= j1 towardzero ldbl-96-m68k -0x8p-152L : -0x3.fffffffffffffffcp-152L : inexact-ok
+= j1 upward ldbl-96-m68k -0x8p-152L : -0x3.fffffffffffffffcp-152L : inexact-ok
+= j1 downward ldbl-128 -0x8p-152L : -0x4p-152L : inexact-ok
+= j1 tonearest ldbl-128 -0x8p-152L : -0x4p-152L : inexact-ok
+= j1 towardzero ldbl-128 -0x8p-152L : -0x3.fffffffffffffffffffffffffffep-152L : inexact-ok
+= j1 upward ldbl-128 -0x8p-152L : -0x3.fffffffffffffffffffffffffffep-152L : inexact-ok
+= j1 downward ldbl-128ibm -0x8p-152L : -0x4p-152L : inexact-ok
+= j1 tonearest ldbl-128ibm -0x8p-152L : -0x4p-152L : inexact-ok
+= j1 towardzero ldbl-128ibm -0x8p-152L : -0x3.ffffffffffffffffffffffffffp-152L : inexact-ok
+= j1 upward ldbl-128ibm -0x8p-152L : -0x3.ffffffffffffffffffffffffffp-152L : inexact-ok
+= j1 downward dbl-64 -0x4p-1076 : -0x4p-1076 : inexact-ok underflow errno-erange-ok
+= j1 tonearest dbl-64 -0x4p-1076 : -0x0p+0 : inexact-ok underflow errno-erange errno-erange-ok
+= j1 towardzero dbl-64 -0x4p-1076 : -0x0p+0 : inexact-ok underflow errno-erange errno-erange-ok
+= j1 upward dbl-64 -0x4p-1076 : -0x0p+0 : inexact-ok underflow errno-erange errno-erange-ok
+= j1 downward ldbl-96-intel -0x4p-1076L : -0x2p-1076L : inexact-ok
+= j1 tonearest ldbl-96-intel -0x4p-1076L : -0x2p-1076L : inexact-ok
+= j1 towardzero ldbl-96-intel -0x4p-1076L : -0x1.fffffffffffffffep-1076L : inexact-ok
+= j1 upward ldbl-96-intel -0x4p-1076L : -0x1.fffffffffffffffep-1076L : inexact-ok
+= j1 downward ldbl-96-m68k -0x4p-1076L : -0x2p-1076L : inexact-ok
+= j1 tonearest ldbl-96-m68k -0x4p-1076L : -0x2p-1076L : inexact-ok
+= j1 towardzero ldbl-96-m68k -0x4p-1076L : -0x1.fffffffffffffffep-1076L : inexact-ok
+= j1 upward ldbl-96-m68k -0x4p-1076L : -0x1.fffffffffffffffep-1076L : inexact-ok
+= j1 downward ldbl-128 -0x4p-1076L : -0x2p-1076L : inexact-ok
+= j1 tonearest ldbl-128 -0x4p-1076L : -0x2p-1076L : inexact-ok
+= j1 towardzero ldbl-128 -0x4p-1076L : -0x1.ffffffffffffffffffffffffffffp-1076L : inexact-ok
+= j1 upward ldbl-128 -0x4p-1076L : -0x1.ffffffffffffffffffffffffffffp-1076L : inexact-ok
+= j1 downward ldbl-128ibm -0x4p-1076L : -0x4p-1076L : inexact-ok underflow errno-erange-ok
+= j1 tonearest ldbl-128ibm -0x4p-1076L : -0x0p+0L : inexact-ok underflow errno-erange errno-erange-ok
+= j1 towardzero ldbl-128ibm -0x4p-1076L : -0x0p+0L : inexact-ok underflow errno-erange errno-erange-ok
+= j1 upward ldbl-128ibm -0x4p-1076L : -0x0p+0L : inexact-ok underflow errno-erange errno-erange-ok
+= j1 downward ldbl-96-intel -0x8p-16448L : -0x8p-16448L : inexact-ok underflow errno-erange-ok
+= j1 tonearest ldbl-96-intel -0x8p-16448L : -0x0p+0L : inexact-ok underflow errno-erange errno-erange-ok
+= j1 towardzero ldbl-96-intel -0x8p-16448L : -0x0p+0L : inexact-ok underflow errno-erange errno-erange-ok
+= j1 upward ldbl-96-intel -0x8p-16448L : -0x0p+0L : inexact-ok underflow errno-erange errno-erange-ok
+= j1 downward ldbl-96-m68k -0x8p-16448L : -0x4p-16448L : inexact-ok underflow errno-erange-ok
+= j1 tonearest ldbl-96-m68k -0x8p-16448L : -0x4p-16448L : inexact-ok underflow errno-erange-ok
+= j1 towardzero ldbl-96-m68k -0x8p-16448L : -0x0p+0L : inexact-ok underflow errno-erange-ok
+= j1 upward ldbl-96-m68k -0x8p-16448L : -0x0p+0L : inexact-ok underflow errno-erange-ok
+= j1 downward ldbl-128 -0x8p-16448L : -0x4p-16448L : inexact-ok underflow errno-erange-ok
+= j1 tonearest ldbl-128 -0x8p-16448L : -0x4p-16448L : inexact-ok underflow errno-erange-ok
+= j1 towardzero ldbl-128 -0x8p-16448L : -0x3.fffffffffffcp-16448L : inexact-ok underflow errno-erange-ok
+= j1 upward ldbl-128 -0x8p-16448L : -0x3.fffffffffffcp-16448L : inexact-ok underflow errno-erange-ok
+= j1 downward ldbl-96-m68k -0x4p-16448L : -0x4p-16448L : inexact-ok underflow errno-erange-ok
+= j1 tonearest ldbl-96-m68k -0x4p-16448L : -0x0p+0L : inexact-ok underflow errno-erange errno-erange-ok
+= j1 towardzero ldbl-96-m68k -0x4p-16448L : -0x0p+0L : inexact-ok underflow errno-erange errno-erange-ok
+= j1 upward ldbl-96-m68k -0x4p-16448L : -0x0p+0L : inexact-ok underflow errno-erange errno-erange-ok
+= j1 downward ldbl-128 -0x4p-16448L : -0x2p-16448L : inexact-ok underflow errno-erange-ok
+= j1 tonearest ldbl-128 -0x4p-16448L : -0x2p-16448L : inexact-ok underflow errno-erange-ok
+= j1 towardzero ldbl-128 -0x4p-16448L : -0x1.fffffffffffcp-16448L : inexact-ok underflow errno-erange-ok
+= j1 upward ldbl-128 -0x4p-16448L : -0x1.fffffffffffcp-16448L : inexact-ok underflow errno-erange-ok
+= j1 downward ldbl-128 -0x4p-16496L : -0x4p-16496L : inexact-ok underflow errno-erange-ok
+= j1 tonearest ldbl-128 -0x4p-16496L : -0x0p+0L : inexact-ok underflow errno-erange errno-erange-ok
+= j1 towardzero ldbl-128 -0x4p-16496L : -0x0p+0L : inexact-ok underflow errno-erange errno-erange-ok
+= j1 upward ldbl-128 -0x4p-16496L : -0x0p+0L : inexact-ok underflow errno-erange errno-erange-ok
jn 0 -1.0
= jn downward flt-32 0 -0x1p+0f : 0xc.3e3fep-4f : inexact-ok
= jn tonearest flt-32 0 -0x1p+0f : 0xc.3e3ffp-4f : inexact-ok
@@ -142937,6 +143253,322 @@ jn 1 10.0
= jn tonearest ldbl-128ibm 1 0xap+0L : 0xb.2107a710048861578f0a8f4f2cp-8L : inexact-ok
= jn towardzero ldbl-128ibm 1 0xap+0L : 0xb.2107a710048861578f0a8f4f28p-8L : inexact-ok
= jn upward ldbl-128ibm 1 0xap+0L : 0xb.2107a710048861578f0a8f4f2cp-8L : inexact-ok
+jn 1 min missing-errno
+= jn downward flt-32 1 0x4p-128f : 0x1.fffff8p-128f : inexact-ok underflow errno-erange-ok
+= jn tonearest flt-32 1 0x4p-128f : 0x2p-128f : inexact-ok underflow errno-erange-ok
+= jn towardzero flt-32 1 0x4p-128f : 0x1.fffff8p-128f : inexact-ok underflow errno-erange-ok
+= jn upward flt-32 1 0x4p-128f : 0x2p-128f : inexact-ok underflow errno-erange-ok
+= jn downward dbl-64 1 0x4p-128 : 0x1.fffffffffffffp-128 : inexact-ok
+= jn tonearest dbl-64 1 0x4p-128 : 0x2p-128 : inexact-ok
+= jn towardzero dbl-64 1 0x4p-128 : 0x1.fffffffffffffp-128 : inexact-ok
+= jn upward dbl-64 1 0x4p-128 : 0x2p-128 : inexact-ok
+= jn downward ldbl-96-intel 1 0x4p-128L : 0x1.fffffffffffffffep-128L : inexact-ok
+= jn tonearest ldbl-96-intel 1 0x4p-128L : 0x2p-128L : inexact-ok
+= jn towardzero ldbl-96-intel 1 0x4p-128L : 0x1.fffffffffffffffep-128L : inexact-ok
+= jn upward ldbl-96-intel 1 0x4p-128L : 0x2p-128L : inexact-ok
+= jn downward ldbl-96-m68k 1 0x4p-128L : 0x1.fffffffffffffffep-128L : inexact-ok
+= jn tonearest ldbl-96-m68k 1 0x4p-128L : 0x2p-128L : inexact-ok
+= jn towardzero ldbl-96-m68k 1 0x4p-128L : 0x1.fffffffffffffffep-128L : inexact-ok
+= jn upward ldbl-96-m68k 1 0x4p-128L : 0x2p-128L : inexact-ok
+= jn downward ldbl-128 1 0x4p-128L : 0x1.ffffffffffffffffffffffffffffp-128L : inexact-ok
+= jn tonearest ldbl-128 1 0x4p-128L : 0x2p-128L : inexact-ok
+= jn towardzero ldbl-128 1 0x4p-128L : 0x1.ffffffffffffffffffffffffffffp-128L : inexact-ok
+= jn upward ldbl-128 1 0x4p-128L : 0x2p-128L : inexact-ok
+= jn downward ldbl-128ibm 1 0x4p-128L : 0x1.ffffffffffffffffffffffffff8p-128L : inexact-ok
+= jn tonearest ldbl-128ibm 1 0x4p-128L : 0x2p-128L : inexact-ok
+= jn towardzero ldbl-128ibm 1 0x4p-128L : 0x1.ffffffffffffffffffffffffff8p-128L : inexact-ok
+= jn upward ldbl-128ibm 1 0x4p-128L : 0x2p-128L : inexact-ok
+= jn downward dbl-64 1 0x4p-1024 : 0x1.ffffffffffffcp-1024 : inexact-ok underflow errno-erange-ok
+= jn tonearest dbl-64 1 0x4p-1024 : 0x2p-1024 : inexact-ok underflow errno-erange-ok
+= jn towardzero dbl-64 1 0x4p-1024 : 0x1.ffffffffffffcp-1024 : inexact-ok underflow errno-erange-ok
+= jn upward dbl-64 1 0x4p-1024 : 0x2p-1024 : inexact-ok underflow errno-erange-ok
+= jn downward ldbl-96-intel 1 0x4p-1024L : 0x1.fffffffffffffffep-1024L : inexact-ok
+= jn tonearest ldbl-96-intel 1 0x4p-1024L : 0x2p-1024L : inexact-ok
+= jn towardzero ldbl-96-intel 1 0x4p-1024L : 0x1.fffffffffffffffep-1024L : inexact-ok
+= jn upward ldbl-96-intel 1 0x4p-1024L : 0x2p-1024L : inexact-ok
+= jn downward ldbl-96-m68k 1 0x4p-1024L : 0x1.fffffffffffffffep-1024L : inexact-ok
+= jn tonearest ldbl-96-m68k 1 0x4p-1024L : 0x2p-1024L : inexact-ok
+= jn towardzero ldbl-96-m68k 1 0x4p-1024L : 0x1.fffffffffffffffep-1024L : inexact-ok
+= jn upward ldbl-96-m68k 1 0x4p-1024L : 0x2p-1024L : inexact-ok
+= jn downward ldbl-128 1 0x4p-1024L : 0x1.ffffffffffffffffffffffffffffp-1024L : inexact-ok
+= jn tonearest ldbl-128 1 0x4p-1024L : 0x2p-1024L : inexact-ok
+= jn towardzero ldbl-128 1 0x4p-1024L : 0x1.ffffffffffffffffffffffffffffp-1024L : inexact-ok
+= jn upward ldbl-128 1 0x4p-1024L : 0x2p-1024L : inexact-ok
+= jn downward ldbl-128ibm 1 0x4p-1024L : 0x1.ffffffffffffcp-1024L : inexact-ok underflow errno-erange-ok
+= jn tonearest ldbl-128ibm 1 0x4p-1024L : 0x2p-1024L : inexact-ok underflow errno-erange-ok
+= jn towardzero ldbl-128ibm 1 0x4p-1024L : 0x1.ffffffffffffcp-1024L : inexact-ok underflow errno-erange-ok
+= jn upward ldbl-128ibm 1 0x4p-1024L : 0x2p-1024L : inexact-ok underflow errno-erange-ok
+= jn downward ldbl-96-intel 1 0x4p-16384L : 0x1.fffffffffffffff8p-16384L : inexact-ok underflow errno-erange-ok
+= jn tonearest ldbl-96-intel 1 0x4p-16384L : 0x2p-16384L : inexact-ok underflow errno-erange-ok
+= jn towardzero ldbl-96-intel 1 0x4p-16384L : 0x1.fffffffffffffff8p-16384L : inexact-ok underflow errno-erange-ok
+= jn upward ldbl-96-intel 1 0x4p-16384L : 0x2p-16384L : inexact-ok underflow errno-erange-ok
+= jn downward ldbl-96-m68k 1 0x4p-16384L : 0x1.fffffffffffffffcp-16384L : inexact-ok underflow-ok errno-erange-ok
+= jn tonearest ldbl-96-m68k 1 0x4p-16384L : 0x2p-16384L : inexact-ok underflow-ok errno-erange-ok
+= jn towardzero ldbl-96-m68k 1 0x4p-16384L : 0x1.fffffffffffffffcp-16384L : inexact-ok underflow-ok errno-erange-ok
+= jn upward ldbl-96-m68k 1 0x4p-16384L : 0x2p-16384L : inexact-ok underflow-ok errno-erange-ok
+= jn downward ldbl-128 1 0x4p-16384L : 0x1.fffffffffffffffffffffffffffcp-16384L : inexact-ok underflow errno-erange-ok
+= jn tonearest ldbl-128 1 0x4p-16384L : 0x2p-16384L : inexact-ok underflow errno-erange-ok
+= jn towardzero ldbl-128 1 0x4p-16384L : 0x1.fffffffffffffffffffffffffffcp-16384L : inexact-ok underflow errno-erange-ok
+= jn upward ldbl-128 1 0x4p-16384L : 0x2p-16384L : inexact-ok underflow errno-erange-ok
+= jn downward ldbl-96-intel 1 0x2p-16384L : 0xf.ffffffffffffff8p-16388L : inexact-ok underflow errno-erange-ok
+= jn tonearest ldbl-96-intel 1 0x2p-16384L : 0x1p-16384L : inexact-ok underflow errno-erange-ok
+= jn towardzero ldbl-96-intel 1 0x2p-16384L : 0xf.ffffffffffffff8p-16388L : inexact-ok underflow errno-erange-ok
+= jn upward ldbl-96-intel 1 0x2p-16384L : 0x1p-16384L : inexact-ok underflow errno-erange-ok
+= jn downward ldbl-96-m68k 1 0x2p-16384L : 0xf.ffffffffffffffcp-16388L : inexact-ok underflow errno-erange-ok
+= jn tonearest ldbl-96-m68k 1 0x2p-16384L : 0x1p-16384L : inexact-ok underflow errno-erange-ok
+= jn towardzero ldbl-96-m68k 1 0x2p-16384L : 0xf.ffffffffffffffcp-16388L : inexact-ok underflow errno-erange-ok
+= jn upward ldbl-96-m68k 1 0x2p-16384L : 0x1p-16384L : inexact-ok underflow errno-erange-ok
+= jn downward ldbl-128 1 0x2p-16384L : 0xf.ffffffffffffffffffffffffffcp-16388L : inexact-ok underflow errno-erange-ok
+= jn tonearest ldbl-128 1 0x2p-16384L : 0x1p-16384L : inexact-ok underflow errno-erange-ok
+= jn towardzero ldbl-128 1 0x2p-16384L : 0xf.ffffffffffffffffffffffffffcp-16388L : inexact-ok underflow errno-erange-ok
+= jn upward ldbl-128 1 0x2p-16384L : 0x1p-16384L : inexact-ok underflow errno-erange-ok
+= jn downward dbl-64 1 0x8p-972 : 0x3.ffffffffffffep-972 : inexact-ok
+= jn tonearest dbl-64 1 0x8p-972 : 0x4p-972 : inexact-ok
+= jn towardzero dbl-64 1 0x8p-972 : 0x3.ffffffffffffep-972 : inexact-ok
+= jn upward dbl-64 1 0x8p-972 : 0x4p-972 : inexact-ok
+= jn downward ldbl-96-intel 1 0x8p-972L : 0x3.fffffffffffffffcp-972L : inexact-ok
+= jn tonearest ldbl-96-intel 1 0x8p-972L : 0x4p-972L : inexact-ok
+= jn towardzero ldbl-96-intel 1 0x8p-972L : 0x3.fffffffffffffffcp-972L : inexact-ok
+= jn upward ldbl-96-intel 1 0x8p-972L : 0x4p-972L : inexact-ok
+= jn downward ldbl-96-m68k 1 0x8p-972L : 0x3.fffffffffffffffcp-972L : inexact-ok
+= jn tonearest ldbl-96-m68k 1 0x8p-972L : 0x4p-972L : inexact-ok
+= jn towardzero ldbl-96-m68k 1 0x8p-972L : 0x3.fffffffffffffffcp-972L : inexact-ok
+= jn upward ldbl-96-m68k 1 0x8p-972L : 0x4p-972L : inexact-ok
+= jn downward ldbl-128 1 0x8p-972L : 0x3.fffffffffffffffffffffffffffep-972L : inexact-ok
+= jn tonearest ldbl-128 1 0x8p-972L : 0x4p-972L : inexact-ok
+= jn towardzero ldbl-128 1 0x8p-972L : 0x3.fffffffffffffffffffffffffffep-972L : inexact-ok
+= jn upward ldbl-128 1 0x8p-972L : 0x4p-972L : inexact-ok
+= jn downward ldbl-128ibm 1 0x8p-972L : 0x3.fffffffffffffffffffffffffcp-972L : inexact-ok underflow errno-erange-ok
+= jn tonearest ldbl-128ibm 1 0x8p-972L : 0x4p-972L : inexact-ok underflow errno-erange-ok
+= jn towardzero ldbl-128ibm 1 0x8p-972L : 0x3.fffffffffffffffffffffffffcp-972L : inexact-ok underflow errno-erange-ok
+= jn upward ldbl-128ibm 1 0x8p-972L : 0x4p-972L : inexact-ok underflow errno-erange-ok
+jn 1 -min missing-errno
+= jn downward flt-32 1 -0x4p-128f : -0x2p-128f : inexact-ok underflow errno-erange-ok
+= jn tonearest flt-32 1 -0x4p-128f : -0x2p-128f : inexact-ok underflow errno-erange-ok
+= jn towardzero flt-32 1 -0x4p-128f : -0x1.fffff8p-128f : inexact-ok underflow errno-erange-ok
+= jn upward flt-32 1 -0x4p-128f : -0x1.fffff8p-128f : inexact-ok underflow errno-erange-ok
+= jn downward dbl-64 1 -0x4p-128 : -0x2p-128 : inexact-ok
+= jn tonearest dbl-64 1 -0x4p-128 : -0x2p-128 : inexact-ok
+= jn towardzero dbl-64 1 -0x4p-128 : -0x1.fffffffffffffp-128 : inexact-ok
+= jn upward dbl-64 1 -0x4p-128 : -0x1.fffffffffffffp-128 : inexact-ok
+= jn downward ldbl-96-intel 1 -0x4p-128L : -0x2p-128L : inexact-ok
+= jn tonearest ldbl-96-intel 1 -0x4p-128L : -0x2p-128L : inexact-ok
+= jn towardzero ldbl-96-intel 1 -0x4p-128L : -0x1.fffffffffffffffep-128L : inexact-ok
+= jn upward ldbl-96-intel 1 -0x4p-128L : -0x1.fffffffffffffffep-128L : inexact-ok
+= jn downward ldbl-96-m68k 1 -0x4p-128L : -0x2p-128L : inexact-ok
+= jn tonearest ldbl-96-m68k 1 -0x4p-128L : -0x2p-128L : inexact-ok
+= jn towardzero ldbl-96-m68k 1 -0x4p-128L : -0x1.fffffffffffffffep-128L : inexact-ok
+= jn upward ldbl-96-m68k 1 -0x4p-128L : -0x1.fffffffffffffffep-128L : inexact-ok
+= jn downward ldbl-128 1 -0x4p-128L : -0x2p-128L : inexact-ok
+= jn tonearest ldbl-128 1 -0x4p-128L : -0x2p-128L : inexact-ok
+= jn towardzero ldbl-128 1 -0x4p-128L : -0x1.ffffffffffffffffffffffffffffp-128L : inexact-ok
+= jn upward ldbl-128 1 -0x4p-128L : -0x1.ffffffffffffffffffffffffffffp-128L : inexact-ok
+= jn downward ldbl-128ibm 1 -0x4p-128L : -0x2p-128L : inexact-ok
+= jn tonearest ldbl-128ibm 1 -0x4p-128L : -0x2p-128L : inexact-ok
+= jn towardzero ldbl-128ibm 1 -0x4p-128L : -0x1.ffffffffffffffffffffffffff8p-128L : inexact-ok
+= jn upward ldbl-128ibm 1 -0x4p-128L : -0x1.ffffffffffffffffffffffffff8p-128L : inexact-ok
+= jn downward dbl-64 1 -0x4p-1024 : -0x2p-1024 : inexact-ok underflow errno-erange-ok
+= jn tonearest dbl-64 1 -0x4p-1024 : -0x2p-1024 : inexact-ok underflow errno-erange-ok
+= jn towardzero dbl-64 1 -0x4p-1024 : -0x1.ffffffffffffcp-1024 : inexact-ok underflow errno-erange-ok
+= jn upward dbl-64 1 -0x4p-1024 : -0x1.ffffffffffffcp-1024 : inexact-ok underflow errno-erange-ok
+= jn downward ldbl-96-intel 1 -0x4p-1024L : -0x2p-1024L : inexact-ok
+= jn tonearest ldbl-96-intel 1 -0x4p-1024L : -0x2p-1024L : inexact-ok
+= jn towardzero ldbl-96-intel 1 -0x4p-1024L : -0x1.fffffffffffffffep-1024L : inexact-ok
+= jn upward ldbl-96-intel 1 -0x4p-1024L : -0x1.fffffffffffffffep-1024L : inexact-ok
+= jn downward ldbl-96-m68k 1 -0x4p-1024L : -0x2p-1024L : inexact-ok
+= jn tonearest ldbl-96-m68k 1 -0x4p-1024L : -0x2p-1024L : inexact-ok
+= jn towardzero ldbl-96-m68k 1 -0x4p-1024L : -0x1.fffffffffffffffep-1024L : inexact-ok
+= jn upward ldbl-96-m68k 1 -0x4p-1024L : -0x1.fffffffffffffffep-1024L : inexact-ok
+= jn downward ldbl-128 1 -0x4p-1024L : -0x2p-1024L : inexact-ok
+= jn tonearest ldbl-128 1 -0x4p-1024L : -0x2p-1024L : inexact-ok
+= jn towardzero ldbl-128 1 -0x4p-1024L : -0x1.ffffffffffffffffffffffffffffp-1024L : inexact-ok
+= jn upward ldbl-128 1 -0x4p-1024L : -0x1.ffffffffffffffffffffffffffffp-1024L : inexact-ok
+= jn downward ldbl-128ibm 1 -0x4p-1024L : -0x2p-1024L : inexact-ok underflow errno-erange-ok
+= jn tonearest ldbl-128ibm 1 -0x4p-1024L : -0x2p-1024L : inexact-ok underflow errno-erange-ok
+= jn towardzero ldbl-128ibm 1 -0x4p-1024L : -0x1.ffffffffffffcp-1024L : inexact-ok underflow errno-erange-ok
+= jn upward ldbl-128ibm 1 -0x4p-1024L : -0x1.ffffffffffffcp-1024L : inexact-ok underflow errno-erange-ok
+= jn downward ldbl-96-intel 1 -0x4p-16384L : -0x2p-16384L : inexact-ok underflow errno-erange-ok
+= jn tonearest ldbl-96-intel 1 -0x4p-16384L : -0x2p-16384L : inexact-ok underflow errno-erange-ok
+= jn towardzero ldbl-96-intel 1 -0x4p-16384L : -0x1.fffffffffffffff8p-16384L : inexact-ok underflow errno-erange-ok
+= jn upward ldbl-96-intel 1 -0x4p-16384L : -0x1.fffffffffffffff8p-16384L : inexact-ok underflow errno-erange-ok
+= jn downward ldbl-96-m68k 1 -0x4p-16384L : -0x2p-16384L : inexact-ok underflow-ok errno-erange-ok
+= jn tonearest ldbl-96-m68k 1 -0x4p-16384L : -0x2p-16384L : inexact-ok underflow-ok errno-erange-ok
+= jn towardzero ldbl-96-m68k 1 -0x4p-16384L : -0x1.fffffffffffffffcp-16384L : inexact-ok underflow-ok errno-erange-ok
+= jn upward ldbl-96-m68k 1 -0x4p-16384L : -0x1.fffffffffffffffcp-16384L : inexact-ok underflow-ok errno-erange-ok
+= jn downward ldbl-128 1 -0x4p-16384L : -0x2p-16384L : inexact-ok underflow errno-erange-ok
+= jn tonearest ldbl-128 1 -0x4p-16384L : -0x2p-16384L : inexact-ok underflow errno-erange-ok
+= jn towardzero ldbl-128 1 -0x4p-16384L : -0x1.fffffffffffffffffffffffffffcp-16384L : inexact-ok underflow errno-erange-ok
+= jn upward ldbl-128 1 -0x4p-16384L : -0x1.fffffffffffffffffffffffffffcp-16384L : inexact-ok underflow errno-erange-ok
+= jn downward ldbl-96-intel 1 -0x2p-16384L : -0x1p-16384L : inexact-ok underflow errno-erange-ok
+= jn tonearest ldbl-96-intel 1 -0x2p-16384L : -0x1p-16384L : inexact-ok underflow errno-erange-ok
+= jn towardzero ldbl-96-intel 1 -0x2p-16384L : -0xf.ffffffffffffff8p-16388L : inexact-ok underflow errno-erange-ok
+= jn upward ldbl-96-intel 1 -0x2p-16384L : -0xf.ffffffffffffff8p-16388L : inexact-ok underflow errno-erange-ok
+= jn downward ldbl-96-m68k 1 -0x2p-16384L : -0x1p-16384L : inexact-ok underflow errno-erange-ok
+= jn tonearest ldbl-96-m68k 1 -0x2p-16384L : -0x1p-16384L : inexact-ok underflow errno-erange-ok
+= jn towardzero ldbl-96-m68k 1 -0x2p-16384L : -0xf.ffffffffffffffcp-16388L : inexact-ok underflow errno-erange-ok
+= jn upward ldbl-96-m68k 1 -0x2p-16384L : -0xf.ffffffffffffffcp-16388L : inexact-ok underflow errno-erange-ok
+= jn downward ldbl-128 1 -0x2p-16384L : -0x1p-16384L : inexact-ok underflow errno-erange-ok
+= jn tonearest ldbl-128 1 -0x2p-16384L : -0x1p-16384L : inexact-ok underflow errno-erange-ok
+= jn towardzero ldbl-128 1 -0x2p-16384L : -0xf.ffffffffffffffffffffffffffcp-16388L : inexact-ok underflow errno-erange-ok
+= jn upward ldbl-128 1 -0x2p-16384L : -0xf.ffffffffffffffffffffffffffcp-16388L : inexact-ok underflow errno-erange-ok
+= jn downward dbl-64 1 -0x8p-972 : -0x4p-972 : inexact-ok
+= jn tonearest dbl-64 1 -0x8p-972 : -0x4p-972 : inexact-ok
+= jn towardzero dbl-64 1 -0x8p-972 : -0x3.ffffffffffffep-972 : inexact-ok
+= jn upward dbl-64 1 -0x8p-972 : -0x3.ffffffffffffep-972 : inexact-ok
+= jn downward ldbl-96-intel 1 -0x8p-972L : -0x4p-972L : inexact-ok
+= jn tonearest ldbl-96-intel 1 -0x8p-972L : -0x4p-972L : inexact-ok
+= jn towardzero ldbl-96-intel 1 -0x8p-972L : -0x3.fffffffffffffffcp-972L : inexact-ok
+= jn upward ldbl-96-intel 1 -0x8p-972L : -0x3.fffffffffffffffcp-972L : inexact-ok
+= jn downward ldbl-96-m68k 1 -0x8p-972L : -0x4p-972L : inexact-ok
+= jn tonearest ldbl-96-m68k 1 -0x8p-972L : -0x4p-972L : inexact-ok
+= jn towardzero ldbl-96-m68k 1 -0x8p-972L : -0x3.fffffffffffffffcp-972L : inexact-ok
+= jn upward ldbl-96-m68k 1 -0x8p-972L : -0x3.fffffffffffffffcp-972L : inexact-ok
+= jn downward ldbl-128 1 -0x8p-972L : -0x4p-972L : inexact-ok
+= jn tonearest ldbl-128 1 -0x8p-972L : -0x4p-972L : inexact-ok
+= jn towardzero ldbl-128 1 -0x8p-972L : -0x3.fffffffffffffffffffffffffffep-972L : inexact-ok
+= jn upward ldbl-128 1 -0x8p-972L : -0x3.fffffffffffffffffffffffffffep-972L : inexact-ok
+= jn downward ldbl-128ibm 1 -0x8p-972L : -0x4p-972L : inexact-ok underflow errno-erange-ok
+= jn tonearest ldbl-128ibm 1 -0x8p-972L : -0x4p-972L : inexact-ok underflow errno-erange-ok
+= jn towardzero ldbl-128ibm 1 -0x8p-972L : -0x3.fffffffffffffffffffffffffcp-972L : inexact-ok underflow errno-erange-ok
+= jn upward ldbl-128ibm 1 -0x8p-972L : -0x3.fffffffffffffffffffffffffcp-972L : inexact-ok underflow errno-erange-ok
+jn 1 min_subnorm missing-errno
+= jn downward flt-32 1 0x8p-152f : 0x0p+0f : inexact-ok underflow errno-erange errno-erange-ok
+= jn tonearest flt-32 1 0x8p-152f : 0x0p+0f : inexact-ok underflow errno-erange errno-erange-ok
+= jn towardzero flt-32 1 0x8p-152f : 0x0p+0f : inexact-ok underflow errno-erange errno-erange-ok
+= jn upward flt-32 1 0x8p-152f : 0x8p-152f : inexact-ok underflow errno-erange-ok
+= jn downward dbl-64 1 0x8p-152 : 0x3.ffffffffffffep-152 : inexact-ok
+= jn tonearest dbl-64 1 0x8p-152 : 0x4p-152 : inexact-ok
+= jn towardzero dbl-64 1 0x8p-152 : 0x3.ffffffffffffep-152 : inexact-ok
+= jn upward dbl-64 1 0x8p-152 : 0x4p-152 : inexact-ok
+= jn downward ldbl-96-intel 1 0x8p-152L : 0x3.fffffffffffffffcp-152L : inexact-ok
+= jn tonearest ldbl-96-intel 1 0x8p-152L : 0x4p-152L : inexact-ok
+= jn towardzero ldbl-96-intel 1 0x8p-152L : 0x3.fffffffffffffffcp-152L : inexact-ok
+= jn upward ldbl-96-intel 1 0x8p-152L : 0x4p-152L : inexact-ok
+= jn downward ldbl-96-m68k 1 0x8p-152L : 0x3.fffffffffffffffcp-152L : inexact-ok
+= jn tonearest ldbl-96-m68k 1 0x8p-152L : 0x4p-152L : inexact-ok
+= jn towardzero ldbl-96-m68k 1 0x8p-152L : 0x3.fffffffffffffffcp-152L : inexact-ok
+= jn upward ldbl-96-m68k 1 0x8p-152L : 0x4p-152L : inexact-ok
+= jn downward ldbl-128 1 0x8p-152L : 0x3.fffffffffffffffffffffffffffep-152L : inexact-ok
+= jn tonearest ldbl-128 1 0x8p-152L : 0x4p-152L : inexact-ok
+= jn towardzero ldbl-128 1 0x8p-152L : 0x3.fffffffffffffffffffffffffffep-152L : inexact-ok
+= jn upward ldbl-128 1 0x8p-152L : 0x4p-152L : inexact-ok
+= jn downward ldbl-128ibm 1 0x8p-152L : 0x3.ffffffffffffffffffffffffffp-152L : inexact-ok
+= jn tonearest ldbl-128ibm 1 0x8p-152L : 0x4p-152L : inexact-ok
+= jn towardzero ldbl-128ibm 1 0x8p-152L : 0x3.ffffffffffffffffffffffffffp-152L : inexact-ok
+= jn upward ldbl-128ibm 1 0x8p-152L : 0x4p-152L : inexact-ok
+= jn downward dbl-64 1 0x4p-1076 : 0x0p+0 : inexact-ok underflow errno-erange errno-erange-ok
+= jn tonearest dbl-64 1 0x4p-1076 : 0x0p+0 : inexact-ok underflow errno-erange errno-erange-ok
+= jn towardzero dbl-64 1 0x4p-1076 : 0x0p+0 : inexact-ok underflow errno-erange errno-erange-ok
+= jn upward dbl-64 1 0x4p-1076 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= jn downward ldbl-96-intel 1 0x4p-1076L : 0x1.fffffffffffffffep-1076L : inexact-ok
+= jn tonearest ldbl-96-intel 1 0x4p-1076L : 0x2p-1076L : inexact-ok
+= jn towardzero ldbl-96-intel 1 0x4p-1076L : 0x1.fffffffffffffffep-1076L : inexact-ok
+= jn upward ldbl-96-intel 1 0x4p-1076L : 0x2p-1076L : inexact-ok
+= jn downward ldbl-96-m68k 1 0x4p-1076L : 0x1.fffffffffffffffep-1076L : inexact-ok
+= jn tonearest ldbl-96-m68k 1 0x4p-1076L : 0x2p-1076L : inexact-ok
+= jn towardzero ldbl-96-m68k 1 0x4p-1076L : 0x1.fffffffffffffffep-1076L : inexact-ok
+= jn upward ldbl-96-m68k 1 0x4p-1076L : 0x2p-1076L : inexact-ok
+= jn downward ldbl-128 1 0x4p-1076L : 0x1.ffffffffffffffffffffffffffffp-1076L : inexact-ok
+= jn tonearest ldbl-128 1 0x4p-1076L : 0x2p-1076L : inexact-ok
+= jn towardzero ldbl-128 1 0x4p-1076L : 0x1.ffffffffffffffffffffffffffffp-1076L : inexact-ok
+= jn upward ldbl-128 1 0x4p-1076L : 0x2p-1076L : inexact-ok
+= jn downward ldbl-128ibm 1 0x4p-1076L : 0x0p+0L : inexact-ok underflow errno-erange errno-erange-ok
+= jn tonearest ldbl-128ibm 1 0x4p-1076L : 0x0p+0L : inexact-ok underflow errno-erange errno-erange-ok
+= jn towardzero ldbl-128ibm 1 0x4p-1076L : 0x0p+0L : inexact-ok underflow errno-erange errno-erange-ok
+= jn upward ldbl-128ibm 1 0x4p-1076L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= jn downward ldbl-96-intel 1 0x8p-16448L : 0x0p+0L : inexact-ok underflow errno-erange errno-erange-ok
+= jn tonearest ldbl-96-intel 1 0x8p-16448L : 0x0p+0L : inexact-ok underflow errno-erange errno-erange-ok
+= jn towardzero ldbl-96-intel 1 0x8p-16448L : 0x0p+0L : inexact-ok underflow errno-erange errno-erange-ok
+= jn upward ldbl-96-intel 1 0x8p-16448L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= jn downward ldbl-96-m68k 1 0x8p-16448L : 0x0p+0L : inexact-ok underflow errno-erange-ok
+= jn tonearest ldbl-96-m68k 1 0x8p-16448L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= jn towardzero ldbl-96-m68k 1 0x8p-16448L : 0x0p+0L : inexact-ok underflow errno-erange-ok
+= jn upward ldbl-96-m68k 1 0x8p-16448L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= jn downward ldbl-128 1 0x8p-16448L : 0x3.fffffffffffcp-16448L : inexact-ok underflow errno-erange-ok
+= jn tonearest ldbl-128 1 0x8p-16448L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= jn towardzero ldbl-128 1 0x8p-16448L : 0x3.fffffffffffcp-16448L : inexact-ok underflow errno-erange-ok
+= jn upward ldbl-128 1 0x8p-16448L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= jn downward ldbl-96-m68k 1 0x4p-16448L : 0x0p+0L : inexact-ok underflow errno-erange errno-erange-ok
+= jn tonearest ldbl-96-m68k 1 0x4p-16448L : 0x0p+0L : inexact-ok underflow errno-erange errno-erange-ok
+= jn towardzero ldbl-96-m68k 1 0x4p-16448L : 0x0p+0L : inexact-ok underflow errno-erange errno-erange-ok
+= jn upward ldbl-96-m68k 1 0x4p-16448L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= jn downward ldbl-128 1 0x4p-16448L : 0x1.fffffffffffcp-16448L : inexact-ok underflow errno-erange-ok
+= jn tonearest ldbl-128 1 0x4p-16448L : 0x2p-16448L : inexact-ok underflow errno-erange-ok
+= jn towardzero ldbl-128 1 0x4p-16448L : 0x1.fffffffffffcp-16448L : inexact-ok underflow errno-erange-ok
+= jn upward ldbl-128 1 0x4p-16448L : 0x2p-16448L : inexact-ok underflow errno-erange-ok
+= jn downward ldbl-128 1 0x4p-16496L : 0x0p+0L : inexact-ok underflow errno-erange errno-erange-ok
+= jn tonearest ldbl-128 1 0x4p-16496L : 0x0p+0L : inexact-ok underflow errno-erange errno-erange-ok
+= jn towardzero ldbl-128 1 0x4p-16496L : 0x0p+0L : inexact-ok underflow errno-erange errno-erange-ok
+= jn upward ldbl-128 1 0x4p-16496L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+jn 1 -min_subnorm missing-errno
+= jn downward flt-32 1 -0x8p-152f : -0x8p-152f : inexact-ok underflow errno-erange-ok
+= jn tonearest flt-32 1 -0x8p-152f : -0x0p+0f : inexact-ok underflow errno-erange errno-erange-ok
+= jn towardzero flt-32 1 -0x8p-152f : -0x0p+0f : inexact-ok underflow errno-erange errno-erange-ok
+= jn upward flt-32 1 -0x8p-152f : -0x0p+0f : inexact-ok underflow errno-erange errno-erange-ok
+= jn downward dbl-64 1 -0x8p-152 : -0x4p-152 : inexact-ok
+= jn tonearest dbl-64 1 -0x8p-152 : -0x4p-152 : inexact-ok
+= jn towardzero dbl-64 1 -0x8p-152 : -0x3.ffffffffffffep-152 : inexact-ok
+= jn upward dbl-64 1 -0x8p-152 : -0x3.ffffffffffffep-152 : inexact-ok
+= jn downward ldbl-96-intel 1 -0x8p-152L : -0x4p-152L : inexact-ok
+= jn tonearest ldbl-96-intel 1 -0x8p-152L : -0x4p-152L : inexact-ok
+= jn towardzero ldbl-96-intel 1 -0x8p-152L : -0x3.fffffffffffffffcp-152L : inexact-ok
+= jn upward ldbl-96-intel 1 -0x8p-152L : -0x3.fffffffffffffffcp-152L : inexact-ok
+= jn downward ldbl-96-m68k 1 -0x8p-152L : -0x4p-152L : inexact-ok
+= jn tonearest ldbl-96-m68k 1 -0x8p-152L : -0x4p-152L : inexact-ok
+= jn towardzero ldbl-96-m68k 1 -0x8p-152L : -0x3.fffffffffffffffcp-152L : inexact-ok
+= jn upward ldbl-96-m68k 1 -0x8p-152L : -0x3.fffffffffffffffcp-152L : inexact-ok
+= jn downward ldbl-128 1 -0x8p-152L : -0x4p-152L : inexact-ok
+= jn tonearest ldbl-128 1 -0x8p-152L : -0x4p-152L : inexact-ok
+= jn towardzero ldbl-128 1 -0x8p-152L : -0x3.fffffffffffffffffffffffffffep-152L : inexact-ok
+= jn upward ldbl-128 1 -0x8p-152L : -0x3.fffffffffffffffffffffffffffep-152L : inexact-ok
+= jn downward ldbl-128ibm 1 -0x8p-152L : -0x4p-152L : inexact-ok
+= jn tonearest ldbl-128ibm 1 -0x8p-152L : -0x4p-152L : inexact-ok
+= jn towardzero ldbl-128ibm 1 -0x8p-152L : -0x3.ffffffffffffffffffffffffffp-152L : inexact-ok
+= jn upward ldbl-128ibm 1 -0x8p-152L : -0x3.ffffffffffffffffffffffffffp-152L : inexact-ok
+= jn downward dbl-64 1 -0x4p-1076 : -0x4p-1076 : inexact-ok underflow errno-erange-ok
+= jn tonearest dbl-64 1 -0x4p-1076 : -0x0p+0 : inexact-ok underflow errno-erange errno-erange-ok
+= jn towardzero dbl-64 1 -0x4p-1076 : -0x0p+0 : inexact-ok underflow errno-erange errno-erange-ok
+= jn upward dbl-64 1 -0x4p-1076 : -0x0p+0 : inexact-ok underflow errno-erange errno-erange-ok
+= jn downward ldbl-96-intel 1 -0x4p-1076L : -0x2p-1076L : inexact-ok
+= jn tonearest ldbl-96-intel 1 -0x4p-1076L : -0x2p-1076L : inexact-ok
+= jn towardzero ldbl-96-intel 1 -0x4p-1076L : -0x1.fffffffffffffffep-1076L : inexact-ok
+= jn upward ldbl-96-intel 1 -0x4p-1076L : -0x1.fffffffffffffffep-1076L : inexact-ok
+= jn downward ldbl-96-m68k 1 -0x4p-1076L : -0x2p-1076L : inexact-ok
+= jn tonearest ldbl-96-m68k 1 -0x4p-1076L : -0x2p-1076L : inexact-ok
+= jn towardzero ldbl-96-m68k 1 -0x4p-1076L : -0x1.fffffffffffffffep-1076L : inexact-ok
+= jn upward ldbl-96-m68k 1 -0x4p-1076L : -0x1.fffffffffffffffep-1076L : inexact-ok
+= jn downward ldbl-128 1 -0x4p-1076L : -0x2p-1076L : inexact-ok
+= jn tonearest ldbl-128 1 -0x4p-1076L : -0x2p-1076L : inexact-ok
+= jn towardzero ldbl-128 1 -0x4p-1076L : -0x1.ffffffffffffffffffffffffffffp-1076L : inexact-ok
+= jn upward ldbl-128 1 -0x4p-1076L : -0x1.ffffffffffffffffffffffffffffp-1076L : inexact-ok
+= jn downward ldbl-128ibm 1 -0x4p-1076L : -0x4p-1076L : inexact-ok underflow errno-erange-ok
+= jn tonearest ldbl-128ibm 1 -0x4p-1076L : -0x0p+0L : inexact-ok underflow errno-erange errno-erange-ok
+= jn towardzero ldbl-128ibm 1 -0x4p-1076L : -0x0p+0L : inexact-ok underflow errno-erange errno-erange-ok
+= jn upward ldbl-128ibm 1 -0x4p-1076L : -0x0p+0L : inexact-ok underflow errno-erange errno-erange-ok
+= jn downward ldbl-96-intel 1 -0x8p-16448L : -0x8p-16448L : inexact-ok underflow errno-erange-ok
+= jn tonearest ldbl-96-intel 1 -0x8p-16448L : -0x0p+0L : inexact-ok underflow errno-erange errno-erange-ok
+= jn towardzero ldbl-96-intel 1 -0x8p-16448L : -0x0p+0L : inexact-ok underflow errno-erange errno-erange-ok
+= jn upward ldbl-96-intel 1 -0x8p-16448L : -0x0p+0L : inexact-ok underflow errno-erange errno-erange-ok
+= jn downward ldbl-96-m68k 1 -0x8p-16448L : -0x4p-16448L : inexact-ok underflow errno-erange-ok
+= jn tonearest ldbl-96-m68k 1 -0x8p-16448L : -0x4p-16448L : inexact-ok underflow errno-erange-ok
+= jn towardzero ldbl-96-m68k 1 -0x8p-16448L : -0x0p+0L : inexact-ok underflow errno-erange-ok
+= jn upward ldbl-96-m68k 1 -0x8p-16448L : -0x0p+0L : inexact-ok underflow errno-erange-ok
+= jn downward ldbl-128 1 -0x8p-16448L : -0x4p-16448L : inexact-ok underflow errno-erange-ok
+= jn tonearest ldbl-128 1 -0x8p-16448L : -0x4p-16448L : inexact-ok underflow errno-erange-ok
+= jn towardzero ldbl-128 1 -0x8p-16448L : -0x3.fffffffffffcp-16448L : inexact-ok underflow errno-erange-ok
+= jn upward ldbl-128 1 -0x8p-16448L : -0x3.fffffffffffcp-16448L : inexact-ok underflow errno-erange-ok
+= jn downward ldbl-96-m68k 1 -0x4p-16448L : -0x4p-16448L : inexact-ok underflow errno-erange-ok
+= jn tonearest ldbl-96-m68k 1 -0x4p-16448L : -0x0p+0L : inexact-ok underflow errno-erange errno-erange-ok
+= jn towardzero ldbl-96-m68k 1 -0x4p-16448L : -0x0p+0L : inexact-ok underflow errno-erange errno-erange-ok
+= jn upward ldbl-96-m68k 1 -0x4p-16448L : -0x0p+0L : inexact-ok underflow errno-erange errno-erange-ok
+= jn downward ldbl-128 1 -0x4p-16448L : -0x2p-16448L : inexact-ok underflow errno-erange-ok
+= jn tonearest ldbl-128 1 -0x4p-16448L : -0x2p-16448L : inexact-ok underflow errno-erange-ok
+= jn towardzero ldbl-128 1 -0x4p-16448L : -0x1.fffffffffffcp-16448L : inexact-ok underflow errno-erange-ok
+= jn upward ldbl-128 1 -0x4p-16448L : -0x1.fffffffffffcp-16448L : inexact-ok underflow errno-erange-ok
+= jn downward ldbl-128 1 -0x4p-16496L : -0x4p-16496L : inexact-ok underflow errno-erange-ok
+= jn tonearest ldbl-128 1 -0x4p-16496L : -0x0p+0L : inexact-ok underflow errno-erange errno-erange-ok
+= jn towardzero ldbl-128 1 -0x4p-16496L : -0x0p+0L : inexact-ok underflow errno-erange errno-erange-ok
+= jn upward ldbl-128 1 -0x4p-16496L : -0x0p+0L : inexact-ok underflow errno-erange errno-erange-ok
jn 3 -1.0
= jn downward flt-32 3 -0x1p+0f : -0x5.021aap-8f : inexact-ok
= jn tonearest flt-32 3 -0x1p+0f : -0x5.021aap-8f : inexact-ok
@@ -144607,6 +145239,322 @@ jn 2 0x1p16383
= jn tonearest ldbl-128ibm 2 0xf.ffffffffffffbffffffffffffcp+1020L : 0xb.a80d0ee91ce259a722e1f01904p-516L : inexact-ok
= jn towardzero ldbl-128ibm 2 0xf.ffffffffffffbffffffffffffcp+1020L : 0xb.a80d0ee91ce259a722e1f019p-516L : inexact-ok
= jn upward ldbl-128ibm 2 0xf.ffffffffffffbffffffffffffcp+1020L : 0xb.a80d0ee91ce259a722e1f01904p-516L : inexact-ok
+jn 10 min missing-errno
+= jn downward flt-32 10 0x4p-128f : 0x0p+0f : inexact-ok underflow errno-erange errno-erange-ok
+= jn tonearest flt-32 10 0x4p-128f : 0x0p+0f : inexact-ok underflow errno-erange errno-erange-ok
+= jn towardzero flt-32 10 0x4p-128f : 0x0p+0f : inexact-ok underflow errno-erange errno-erange-ok
+= jn upward flt-32 10 0x4p-128f : 0x8p-152f : inexact-ok underflow errno-erange-ok
+= jn downward dbl-64 10 0x4p-128 : 0x0p+0 : inexact-ok underflow errno-erange errno-erange-ok
+= jn tonearest dbl-64 10 0x4p-128 : 0x0p+0 : inexact-ok underflow errno-erange errno-erange-ok
+= jn towardzero dbl-64 10 0x4p-128 : 0x0p+0 : inexact-ok underflow errno-erange errno-erange-ok
+= jn upward dbl-64 10 0x4p-128 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= jn downward ldbl-96-intel 10 0x4p-128L : 0x1.27e4fb7789f5c72ep-1292L : inexact-ok
+= jn tonearest ldbl-96-intel 10 0x4p-128L : 0x1.27e4fb7789f5c72ep-1292L : inexact-ok
+= jn towardzero ldbl-96-intel 10 0x4p-128L : 0x1.27e4fb7789f5c72ep-1292L : inexact-ok
+= jn upward ldbl-96-intel 10 0x4p-128L : 0x1.27e4fb7789f5c73p-1292L : inexact-ok
+= jn downward ldbl-96-m68k 10 0x4p-128L : 0x1.27e4fb7789f5c72ep-1292L : inexact-ok
+= jn tonearest ldbl-96-m68k 10 0x4p-128L : 0x1.27e4fb7789f5c72ep-1292L : inexact-ok
+= jn towardzero ldbl-96-m68k 10 0x4p-128L : 0x1.27e4fb7789f5c72ep-1292L : inexact-ok
+= jn upward ldbl-96-m68k 10 0x4p-128L : 0x1.27e4fb7789f5c73p-1292L : inexact-ok
+= jn downward ldbl-128 10 0x4p-128L : 0x1.27e4fb7789f5c72ef016d3ea6678p-1292L : inexact-ok
+= jn tonearest ldbl-128 10 0x4p-128L : 0x1.27e4fb7789f5c72ef016d3ea6679p-1292L : inexact-ok
+= jn towardzero ldbl-128 10 0x4p-128L : 0x1.27e4fb7789f5c72ef016d3ea6678p-1292L : inexact-ok
+= jn upward ldbl-128 10 0x4p-128L : 0x1.27e4fb7789f5c72ef016d3ea6679p-1292L : inexact-ok
+= jn downward ldbl-128ibm 10 0x4p-128L : 0x0p+0L : inexact-ok underflow errno-erange errno-erange-ok
+= jn tonearest ldbl-128ibm 10 0x4p-128L : 0x0p+0L : inexact-ok underflow errno-erange errno-erange-ok
+= jn towardzero ldbl-128ibm 10 0x4p-128L : 0x0p+0L : inexact-ok underflow errno-erange errno-erange-ok
+= jn upward ldbl-128ibm 10 0x4p-128L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= jn downward dbl-64 10 0x4p-1024 : 0x0p+0 : inexact-ok underflow errno-erange errno-erange-ok
+= jn tonearest dbl-64 10 0x4p-1024 : 0x0p+0 : inexact-ok underflow errno-erange errno-erange-ok
+= jn towardzero dbl-64 10 0x4p-1024 : 0x0p+0 : inexact-ok underflow errno-erange errno-erange-ok
+= jn upward dbl-64 10 0x4p-1024 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= jn downward ldbl-96-intel 10 0x4p-1024L : 0x1.27e4fb7789f5c72ep-10252L : inexact-ok
+= jn tonearest ldbl-96-intel 10 0x4p-1024L : 0x1.27e4fb7789f5c72ep-10252L : inexact-ok
+= jn towardzero ldbl-96-intel 10 0x4p-1024L : 0x1.27e4fb7789f5c72ep-10252L : inexact-ok
+= jn upward ldbl-96-intel 10 0x4p-1024L : 0x1.27e4fb7789f5c73p-10252L : inexact-ok
+= jn downward ldbl-96-m68k 10 0x4p-1024L : 0x1.27e4fb7789f5c72ep-10252L : inexact-ok
+= jn tonearest ldbl-96-m68k 10 0x4p-1024L : 0x1.27e4fb7789f5c72ep-10252L : inexact-ok
+= jn towardzero ldbl-96-m68k 10 0x4p-1024L : 0x1.27e4fb7789f5c72ep-10252L : inexact-ok
+= jn upward ldbl-96-m68k 10 0x4p-1024L : 0x1.27e4fb7789f5c73p-10252L : inexact-ok
+= jn downward ldbl-128 10 0x4p-1024L : 0x1.27e4fb7789f5c72ef016d3ea6678p-10252L : inexact-ok
+= jn tonearest ldbl-128 10 0x4p-1024L : 0x1.27e4fb7789f5c72ef016d3ea6679p-10252L : inexact-ok
+= jn towardzero ldbl-128 10 0x4p-1024L : 0x1.27e4fb7789f5c72ef016d3ea6678p-10252L : inexact-ok
+= jn upward ldbl-128 10 0x4p-1024L : 0x1.27e4fb7789f5c72ef016d3ea6679p-10252L : inexact-ok
+= jn downward ldbl-128ibm 10 0x4p-1024L : 0x0p+0L : inexact-ok underflow errno-erange errno-erange-ok
+= jn tonearest ldbl-128ibm 10 0x4p-1024L : 0x0p+0L : inexact-ok underflow errno-erange errno-erange-ok
+= jn towardzero ldbl-128ibm 10 0x4p-1024L : 0x0p+0L : inexact-ok underflow errno-erange errno-erange-ok
+= jn upward ldbl-128ibm 10 0x4p-1024L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= jn downward ldbl-96-intel 10 0x4p-16384L : 0x0p+0L : inexact-ok underflow errno-erange errno-erange-ok
+= jn tonearest ldbl-96-intel 10 0x4p-16384L : 0x0p+0L : inexact-ok underflow errno-erange errno-erange-ok
+= jn towardzero ldbl-96-intel 10 0x4p-16384L : 0x0p+0L : inexact-ok underflow errno-erange errno-erange-ok
+= jn upward ldbl-96-intel 10 0x4p-16384L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= jn downward ldbl-96-m68k 10 0x4p-16384L : 0x0p+0L : inexact-ok underflow errno-erange errno-erange-ok
+= jn tonearest ldbl-96-m68k 10 0x4p-16384L : 0x0p+0L : inexact-ok underflow errno-erange errno-erange-ok
+= jn towardzero ldbl-96-m68k 10 0x4p-16384L : 0x0p+0L : inexact-ok underflow errno-erange errno-erange-ok
+= jn upward ldbl-96-m68k 10 0x4p-16384L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= jn downward ldbl-128 10 0x4p-16384L : 0x0p+0L : inexact-ok underflow errno-erange errno-erange-ok
+= jn tonearest ldbl-128 10 0x4p-16384L : 0x0p+0L : inexact-ok underflow errno-erange errno-erange-ok
+= jn towardzero ldbl-128 10 0x4p-16384L : 0x0p+0L : inexact-ok underflow errno-erange errno-erange-ok
+= jn upward ldbl-128 10 0x4p-16384L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= jn downward ldbl-96-intel 10 0x2p-16384L : 0x0p+0L : inexact-ok underflow errno-erange errno-erange-ok
+= jn tonearest ldbl-96-intel 10 0x2p-16384L : 0x0p+0L : inexact-ok underflow errno-erange errno-erange-ok
+= jn towardzero ldbl-96-intel 10 0x2p-16384L : 0x0p+0L : inexact-ok underflow errno-erange errno-erange-ok
+= jn upward ldbl-96-intel 10 0x2p-16384L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= jn downward ldbl-96-m68k 10 0x2p-16384L : 0x0p+0L : inexact-ok underflow errno-erange errno-erange-ok
+= jn tonearest ldbl-96-m68k 10 0x2p-16384L : 0x0p+0L : inexact-ok underflow errno-erange errno-erange-ok
+= jn towardzero ldbl-96-m68k 10 0x2p-16384L : 0x0p+0L : inexact-ok underflow errno-erange errno-erange-ok
+= jn upward ldbl-96-m68k 10 0x2p-16384L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= jn downward ldbl-128 10 0x2p-16384L : 0x0p+0L : inexact-ok underflow errno-erange errno-erange-ok
+= jn tonearest ldbl-128 10 0x2p-16384L : 0x0p+0L : inexact-ok underflow errno-erange errno-erange-ok
+= jn towardzero ldbl-128 10 0x2p-16384L : 0x0p+0L : inexact-ok underflow errno-erange errno-erange-ok
+= jn upward ldbl-128 10 0x2p-16384L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= jn downward dbl-64 10 0x8p-972 : 0x0p+0 : inexact-ok underflow errno-erange errno-erange-ok
+= jn tonearest dbl-64 10 0x8p-972 : 0x0p+0 : inexact-ok underflow errno-erange errno-erange-ok
+= jn towardzero dbl-64 10 0x8p-972 : 0x0p+0 : inexact-ok underflow errno-erange errno-erange-ok
+= jn upward dbl-64 10 0x8p-972 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= jn downward ldbl-96-intel 10 0x8p-972L : 0x4.9f93edde27d71cb8p-9724L : inexact-ok
+= jn tonearest ldbl-96-intel 10 0x8p-972L : 0x4.9f93edde27d71cb8p-9724L : inexact-ok
+= jn towardzero ldbl-96-intel 10 0x8p-972L : 0x4.9f93edde27d71cb8p-9724L : inexact-ok
+= jn upward ldbl-96-intel 10 0x8p-972L : 0x4.9f93edde27d71ccp-9724L : inexact-ok
+= jn downward ldbl-96-m68k 10 0x8p-972L : 0x4.9f93edde27d71cb8p-9724L : inexact-ok
+= jn tonearest ldbl-96-m68k 10 0x8p-972L : 0x4.9f93edde27d71cb8p-9724L : inexact-ok
+= jn towardzero ldbl-96-m68k 10 0x8p-972L : 0x4.9f93edde27d71cb8p-9724L : inexact-ok
+= jn upward ldbl-96-m68k 10 0x8p-972L : 0x4.9f93edde27d71ccp-9724L : inexact-ok
+= jn downward ldbl-128 10 0x8p-972L : 0x4.9f93edde27d71cbbc05b4fa999ep-9724L : inexact-ok
+= jn tonearest ldbl-128 10 0x8p-972L : 0x4.9f93edde27d71cbbc05b4fa999e4p-9724L : inexact-ok
+= jn towardzero ldbl-128 10 0x8p-972L : 0x4.9f93edde27d71cbbc05b4fa999ep-9724L : inexact-ok
+= jn upward ldbl-128 10 0x8p-972L : 0x4.9f93edde27d71cbbc05b4fa999e4p-9724L : inexact-ok
+= jn downward ldbl-128ibm 10 0x8p-972L : 0x0p+0L : inexact-ok underflow errno-erange errno-erange-ok
+= jn tonearest ldbl-128ibm 10 0x8p-972L : 0x0p+0L : inexact-ok underflow errno-erange errno-erange-ok
+= jn towardzero ldbl-128ibm 10 0x8p-972L : 0x0p+0L : inexact-ok underflow errno-erange errno-erange-ok
+= jn upward ldbl-128ibm 10 0x8p-972L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+jn 10 -min missing-errno
+= jn downward flt-32 10 -0x4p-128f : 0x0p+0f : inexact-ok underflow errno-erange errno-erange-ok
+= jn tonearest flt-32 10 -0x4p-128f : 0x0p+0f : inexact-ok underflow errno-erange errno-erange-ok
+= jn towardzero flt-32 10 -0x4p-128f : 0x0p+0f : inexact-ok underflow errno-erange errno-erange-ok
+= jn upward flt-32 10 -0x4p-128f : 0x8p-152f : inexact-ok underflow errno-erange-ok
+= jn downward dbl-64 10 -0x4p-128 : 0x0p+0 : inexact-ok underflow errno-erange errno-erange-ok
+= jn tonearest dbl-64 10 -0x4p-128 : 0x0p+0 : inexact-ok underflow errno-erange errno-erange-ok
+= jn towardzero dbl-64 10 -0x4p-128 : 0x0p+0 : inexact-ok underflow errno-erange errno-erange-ok
+= jn upward dbl-64 10 -0x4p-128 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= jn downward ldbl-96-intel 10 -0x4p-128L : 0x1.27e4fb7789f5c72ep-1292L : inexact-ok
+= jn tonearest ldbl-96-intel 10 -0x4p-128L : 0x1.27e4fb7789f5c72ep-1292L : inexact-ok
+= jn towardzero ldbl-96-intel 10 -0x4p-128L : 0x1.27e4fb7789f5c72ep-1292L : inexact-ok
+= jn upward ldbl-96-intel 10 -0x4p-128L : 0x1.27e4fb7789f5c73p-1292L : inexact-ok
+= jn downward ldbl-96-m68k 10 -0x4p-128L : 0x1.27e4fb7789f5c72ep-1292L : inexact-ok
+= jn tonearest ldbl-96-m68k 10 -0x4p-128L : 0x1.27e4fb7789f5c72ep-1292L : inexact-ok
+= jn towardzero ldbl-96-m68k 10 -0x4p-128L : 0x1.27e4fb7789f5c72ep-1292L : inexact-ok
+= jn upward ldbl-96-m68k 10 -0x4p-128L : 0x1.27e4fb7789f5c73p-1292L : inexact-ok
+= jn downward ldbl-128 10 -0x4p-128L : 0x1.27e4fb7789f5c72ef016d3ea6678p-1292L : inexact-ok
+= jn tonearest ldbl-128 10 -0x4p-128L : 0x1.27e4fb7789f5c72ef016d3ea6679p-1292L : inexact-ok
+= jn towardzero ldbl-128 10 -0x4p-128L : 0x1.27e4fb7789f5c72ef016d3ea6678p-1292L : inexact-ok
+= jn upward ldbl-128 10 -0x4p-128L : 0x1.27e4fb7789f5c72ef016d3ea6679p-1292L : inexact-ok
+= jn downward ldbl-128ibm 10 -0x4p-128L : 0x0p+0L : inexact-ok underflow errno-erange errno-erange-ok
+= jn tonearest ldbl-128ibm 10 -0x4p-128L : 0x0p+0L : inexact-ok underflow errno-erange errno-erange-ok
+= jn towardzero ldbl-128ibm 10 -0x4p-128L : 0x0p+0L : inexact-ok underflow errno-erange errno-erange-ok
+= jn upward ldbl-128ibm 10 -0x4p-128L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= jn downward dbl-64 10 -0x4p-1024 : 0x0p+0 : inexact-ok underflow errno-erange errno-erange-ok
+= jn tonearest dbl-64 10 -0x4p-1024 : 0x0p+0 : inexact-ok underflow errno-erange errno-erange-ok
+= jn towardzero dbl-64 10 -0x4p-1024 : 0x0p+0 : inexact-ok underflow errno-erange errno-erange-ok
+= jn upward dbl-64 10 -0x4p-1024 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= jn downward ldbl-96-intel 10 -0x4p-1024L : 0x1.27e4fb7789f5c72ep-10252L : inexact-ok
+= jn tonearest ldbl-96-intel 10 -0x4p-1024L : 0x1.27e4fb7789f5c72ep-10252L : inexact-ok
+= jn towardzero ldbl-96-intel 10 -0x4p-1024L : 0x1.27e4fb7789f5c72ep-10252L : inexact-ok
+= jn upward ldbl-96-intel 10 -0x4p-1024L : 0x1.27e4fb7789f5c73p-10252L : inexact-ok
+= jn downward ldbl-96-m68k 10 -0x4p-1024L : 0x1.27e4fb7789f5c72ep-10252L : inexact-ok
+= jn tonearest ldbl-96-m68k 10 -0x4p-1024L : 0x1.27e4fb7789f5c72ep-10252L : inexact-ok
+= jn towardzero ldbl-96-m68k 10 -0x4p-1024L : 0x1.27e4fb7789f5c72ep-10252L : inexact-ok
+= jn upward ldbl-96-m68k 10 -0x4p-1024L : 0x1.27e4fb7789f5c73p-10252L : inexact-ok
+= jn downward ldbl-128 10 -0x4p-1024L : 0x1.27e4fb7789f5c72ef016d3ea6678p-10252L : inexact-ok
+= jn tonearest ldbl-128 10 -0x4p-1024L : 0x1.27e4fb7789f5c72ef016d3ea6679p-10252L : inexact-ok
+= jn towardzero ldbl-128 10 -0x4p-1024L : 0x1.27e4fb7789f5c72ef016d3ea6678p-10252L : inexact-ok
+= jn upward ldbl-128 10 -0x4p-1024L : 0x1.27e4fb7789f5c72ef016d3ea6679p-10252L : inexact-ok
+= jn downward ldbl-128ibm 10 -0x4p-1024L : 0x0p+0L : inexact-ok underflow errno-erange errno-erange-ok
+= jn tonearest ldbl-128ibm 10 -0x4p-1024L : 0x0p+0L : inexact-ok underflow errno-erange errno-erange-ok
+= jn towardzero ldbl-128ibm 10 -0x4p-1024L : 0x0p+0L : inexact-ok underflow errno-erange errno-erange-ok
+= jn upward ldbl-128ibm 10 -0x4p-1024L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= jn downward ldbl-96-intel 10 -0x4p-16384L : 0x0p+0L : inexact-ok underflow errno-erange errno-erange-ok
+= jn tonearest ldbl-96-intel 10 -0x4p-16384L : 0x0p+0L : inexact-ok underflow errno-erange errno-erange-ok
+= jn towardzero ldbl-96-intel 10 -0x4p-16384L : 0x0p+0L : inexact-ok underflow errno-erange errno-erange-ok
+= jn upward ldbl-96-intel 10 -0x4p-16384L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= jn downward ldbl-96-m68k 10 -0x4p-16384L : 0x0p+0L : inexact-ok underflow errno-erange errno-erange-ok
+= jn tonearest ldbl-96-m68k 10 -0x4p-16384L : 0x0p+0L : inexact-ok underflow errno-erange errno-erange-ok
+= jn towardzero ldbl-96-m68k 10 -0x4p-16384L : 0x0p+0L : inexact-ok underflow errno-erange errno-erange-ok
+= jn upward ldbl-96-m68k 10 -0x4p-16384L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= jn downward ldbl-128 10 -0x4p-16384L : 0x0p+0L : inexact-ok underflow errno-erange errno-erange-ok
+= jn tonearest ldbl-128 10 -0x4p-16384L : 0x0p+0L : inexact-ok underflow errno-erange errno-erange-ok
+= jn towardzero ldbl-128 10 -0x4p-16384L : 0x0p+0L : inexact-ok underflow errno-erange errno-erange-ok
+= jn upward ldbl-128 10 -0x4p-16384L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= jn downward ldbl-96-intel 10 -0x2p-16384L : 0x0p+0L : inexact-ok underflow errno-erange errno-erange-ok
+= jn tonearest ldbl-96-intel 10 -0x2p-16384L : 0x0p+0L : inexact-ok underflow errno-erange errno-erange-ok
+= jn towardzero ldbl-96-intel 10 -0x2p-16384L : 0x0p+0L : inexact-ok underflow errno-erange errno-erange-ok
+= jn upward ldbl-96-intel 10 -0x2p-16384L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= jn downward ldbl-96-m68k 10 -0x2p-16384L : 0x0p+0L : inexact-ok underflow errno-erange errno-erange-ok
+= jn tonearest ldbl-96-m68k 10 -0x2p-16384L : 0x0p+0L : inexact-ok underflow errno-erange errno-erange-ok
+= jn towardzero ldbl-96-m68k 10 -0x2p-16384L : 0x0p+0L : inexact-ok underflow errno-erange errno-erange-ok
+= jn upward ldbl-96-m68k 10 -0x2p-16384L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= jn downward ldbl-128 10 -0x2p-16384L : 0x0p+0L : inexact-ok underflow errno-erange errno-erange-ok
+= jn tonearest ldbl-128 10 -0x2p-16384L : 0x0p+0L : inexact-ok underflow errno-erange errno-erange-ok
+= jn towardzero ldbl-128 10 -0x2p-16384L : 0x0p+0L : inexact-ok underflow errno-erange errno-erange-ok
+= jn upward ldbl-128 10 -0x2p-16384L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= jn downward dbl-64 10 -0x8p-972 : 0x0p+0 : inexact-ok underflow errno-erange errno-erange-ok
+= jn tonearest dbl-64 10 -0x8p-972 : 0x0p+0 : inexact-ok underflow errno-erange errno-erange-ok
+= jn towardzero dbl-64 10 -0x8p-972 : 0x0p+0 : inexact-ok underflow errno-erange errno-erange-ok
+= jn upward dbl-64 10 -0x8p-972 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= jn downward ldbl-96-intel 10 -0x8p-972L : 0x4.9f93edde27d71cb8p-9724L : inexact-ok
+= jn tonearest ldbl-96-intel 10 -0x8p-972L : 0x4.9f93edde27d71cb8p-9724L : inexact-ok
+= jn towardzero ldbl-96-intel 10 -0x8p-972L : 0x4.9f93edde27d71cb8p-9724L : inexact-ok
+= jn upward ldbl-96-intel 10 -0x8p-972L : 0x4.9f93edde27d71ccp-9724L : inexact-ok
+= jn downward ldbl-96-m68k 10 -0x8p-972L : 0x4.9f93edde27d71cb8p-9724L : inexact-ok
+= jn tonearest ldbl-96-m68k 10 -0x8p-972L : 0x4.9f93edde27d71cb8p-9724L : inexact-ok
+= jn towardzero ldbl-96-m68k 10 -0x8p-972L : 0x4.9f93edde27d71cb8p-9724L : inexact-ok
+= jn upward ldbl-96-m68k 10 -0x8p-972L : 0x4.9f93edde27d71ccp-9724L : inexact-ok
+= jn downward ldbl-128 10 -0x8p-972L : 0x4.9f93edde27d71cbbc05b4fa999ep-9724L : inexact-ok
+= jn tonearest ldbl-128 10 -0x8p-972L : 0x4.9f93edde27d71cbbc05b4fa999e4p-9724L : inexact-ok
+= jn towardzero ldbl-128 10 -0x8p-972L : 0x4.9f93edde27d71cbbc05b4fa999ep-9724L : inexact-ok
+= jn upward ldbl-128 10 -0x8p-972L : 0x4.9f93edde27d71cbbc05b4fa999e4p-9724L : inexact-ok
+= jn downward ldbl-128ibm 10 -0x8p-972L : 0x0p+0L : inexact-ok underflow errno-erange errno-erange-ok
+= jn tonearest ldbl-128ibm 10 -0x8p-972L : 0x0p+0L : inexact-ok underflow errno-erange errno-erange-ok
+= jn towardzero ldbl-128ibm 10 -0x8p-972L : 0x0p+0L : inexact-ok underflow errno-erange errno-erange-ok
+= jn upward ldbl-128ibm 10 -0x8p-972L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+jn 10 min_subnorm missing-errno
+= jn downward flt-32 10 0x8p-152f : 0x0p+0f : inexact-ok underflow errno-erange errno-erange-ok
+= jn tonearest flt-32 10 0x8p-152f : 0x0p+0f : inexact-ok underflow errno-erange errno-erange-ok
+= jn towardzero flt-32 10 0x8p-152f : 0x0p+0f : inexact-ok underflow errno-erange errno-erange-ok
+= jn upward flt-32 10 0x8p-152f : 0x8p-152f : inexact-ok underflow errno-erange-ok
+= jn downward dbl-64 10 0x8p-152 : 0x0p+0 : inexact-ok underflow errno-erange errno-erange-ok
+= jn tonearest dbl-64 10 0x8p-152 : 0x0p+0 : inexact-ok underflow errno-erange errno-erange-ok
+= jn towardzero dbl-64 10 0x8p-152 : 0x0p+0 : inexact-ok underflow errno-erange errno-erange-ok
+= jn upward dbl-64 10 0x8p-152 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= jn downward ldbl-96-intel 10 0x8p-152L : 0x4.9f93edde27d71cb8p-1524L : inexact-ok
+= jn tonearest ldbl-96-intel 10 0x8p-152L : 0x4.9f93edde27d71cb8p-1524L : inexact-ok
+= jn towardzero ldbl-96-intel 10 0x8p-152L : 0x4.9f93edde27d71cb8p-1524L : inexact-ok
+= jn upward ldbl-96-intel 10 0x8p-152L : 0x4.9f93edde27d71ccp-1524L : inexact-ok
+= jn downward ldbl-96-m68k 10 0x8p-152L : 0x4.9f93edde27d71cb8p-1524L : inexact-ok
+= jn tonearest ldbl-96-m68k 10 0x8p-152L : 0x4.9f93edde27d71cb8p-1524L : inexact-ok
+= jn towardzero ldbl-96-m68k 10 0x8p-152L : 0x4.9f93edde27d71cb8p-1524L : inexact-ok
+= jn upward ldbl-96-m68k 10 0x8p-152L : 0x4.9f93edde27d71ccp-1524L : inexact-ok
+= jn downward ldbl-128 10 0x8p-152L : 0x4.9f93edde27d71cbbc05b4fa999ep-1524L : inexact-ok
+= jn tonearest ldbl-128 10 0x8p-152L : 0x4.9f93edde27d71cbbc05b4fa999e4p-1524L : inexact-ok
+= jn towardzero ldbl-128 10 0x8p-152L : 0x4.9f93edde27d71cbbc05b4fa999ep-1524L : inexact-ok
+= jn upward ldbl-128 10 0x8p-152L : 0x4.9f93edde27d71cbbc05b4fa999e4p-1524L : inexact-ok
+= jn downward ldbl-128ibm 10 0x8p-152L : 0x0p+0L : inexact-ok underflow errno-erange errno-erange-ok
+= jn tonearest ldbl-128ibm 10 0x8p-152L : 0x0p+0L : inexact-ok underflow errno-erange errno-erange-ok
+= jn towardzero ldbl-128ibm 10 0x8p-152L : 0x0p+0L : inexact-ok underflow errno-erange errno-erange-ok
+= jn upward ldbl-128ibm 10 0x8p-152L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= jn downward dbl-64 10 0x4p-1076 : 0x0p+0 : inexact-ok underflow errno-erange errno-erange-ok
+= jn tonearest dbl-64 10 0x4p-1076 : 0x0p+0 : inexact-ok underflow errno-erange errno-erange-ok
+= jn towardzero dbl-64 10 0x4p-1076 : 0x0p+0 : inexact-ok underflow errno-erange errno-erange-ok
+= jn upward dbl-64 10 0x4p-1076 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= jn downward ldbl-96-intel 10 0x4p-1076L : 0x1.27e4fb7789f5c72ep-10772L : inexact-ok
+= jn tonearest ldbl-96-intel 10 0x4p-1076L : 0x1.27e4fb7789f5c72ep-10772L : inexact-ok
+= jn towardzero ldbl-96-intel 10 0x4p-1076L : 0x1.27e4fb7789f5c72ep-10772L : inexact-ok
+= jn upward ldbl-96-intel 10 0x4p-1076L : 0x1.27e4fb7789f5c73p-10772L : inexact-ok
+= jn downward ldbl-96-m68k 10 0x4p-1076L : 0x1.27e4fb7789f5c72ep-10772L : inexact-ok
+= jn tonearest ldbl-96-m68k 10 0x4p-1076L : 0x1.27e4fb7789f5c72ep-10772L : inexact-ok
+= jn towardzero ldbl-96-m68k 10 0x4p-1076L : 0x1.27e4fb7789f5c72ep-10772L : inexact-ok
+= jn upward ldbl-96-m68k 10 0x4p-1076L : 0x1.27e4fb7789f5c73p-10772L : inexact-ok
+= jn downward ldbl-128 10 0x4p-1076L : 0x1.27e4fb7789f5c72ef016d3ea6678p-10772L : inexact-ok
+= jn tonearest ldbl-128 10 0x4p-1076L : 0x1.27e4fb7789f5c72ef016d3ea6679p-10772L : inexact-ok
+= jn towardzero ldbl-128 10 0x4p-1076L : 0x1.27e4fb7789f5c72ef016d3ea6678p-10772L : inexact-ok
+= jn upward ldbl-128 10 0x4p-1076L : 0x1.27e4fb7789f5c72ef016d3ea6679p-10772L : inexact-ok
+= jn downward ldbl-128ibm 10 0x4p-1076L : 0x0p+0L : inexact-ok underflow errno-erange errno-erange-ok
+= jn tonearest ldbl-128ibm 10 0x4p-1076L : 0x0p+0L : inexact-ok underflow errno-erange errno-erange-ok
+= jn towardzero ldbl-128ibm 10 0x4p-1076L : 0x0p+0L : inexact-ok underflow errno-erange errno-erange-ok
+= jn upward ldbl-128ibm 10 0x4p-1076L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= jn downward ldbl-96-intel 10 0x8p-16448L : 0x0p+0L : inexact-ok underflow errno-erange errno-erange-ok
+= jn tonearest ldbl-96-intel 10 0x8p-16448L : 0x0p+0L : inexact-ok underflow errno-erange errno-erange-ok
+= jn towardzero ldbl-96-intel 10 0x8p-16448L : 0x0p+0L : inexact-ok underflow errno-erange errno-erange-ok
+= jn upward ldbl-96-intel 10 0x8p-16448L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= jn downward ldbl-96-m68k 10 0x8p-16448L : 0x0p+0L : inexact-ok underflow errno-erange errno-erange-ok
+= jn tonearest ldbl-96-m68k 10 0x8p-16448L : 0x0p+0L : inexact-ok underflow errno-erange errno-erange-ok
+= jn towardzero ldbl-96-m68k 10 0x8p-16448L : 0x0p+0L : inexact-ok underflow errno-erange errno-erange-ok
+= jn upward ldbl-96-m68k 10 0x8p-16448L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= jn downward ldbl-128 10 0x8p-16448L : 0x0p+0L : inexact-ok underflow errno-erange errno-erange-ok
+= jn tonearest ldbl-128 10 0x8p-16448L : 0x0p+0L : inexact-ok underflow errno-erange errno-erange-ok
+= jn towardzero ldbl-128 10 0x8p-16448L : 0x0p+0L : inexact-ok underflow errno-erange errno-erange-ok
+= jn upward ldbl-128 10 0x8p-16448L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= jn downward ldbl-96-m68k 10 0x4p-16448L : 0x0p+0L : inexact-ok underflow errno-erange errno-erange-ok
+= jn tonearest ldbl-96-m68k 10 0x4p-16448L : 0x0p+0L : inexact-ok underflow errno-erange errno-erange-ok
+= jn towardzero ldbl-96-m68k 10 0x4p-16448L : 0x0p+0L : inexact-ok underflow errno-erange errno-erange-ok
+= jn upward ldbl-96-m68k 10 0x4p-16448L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= jn downward ldbl-128 10 0x4p-16448L : 0x0p+0L : inexact-ok underflow errno-erange errno-erange-ok
+= jn tonearest ldbl-128 10 0x4p-16448L : 0x0p+0L : inexact-ok underflow errno-erange errno-erange-ok
+= jn towardzero ldbl-128 10 0x4p-16448L : 0x0p+0L : inexact-ok underflow errno-erange errno-erange-ok
+= jn upward ldbl-128 10 0x4p-16448L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= jn downward ldbl-128 10 0x4p-16496L : 0x0p+0L : inexact-ok underflow errno-erange errno-erange-ok
+= jn tonearest ldbl-128 10 0x4p-16496L : 0x0p+0L : inexact-ok underflow errno-erange errno-erange-ok
+= jn towardzero ldbl-128 10 0x4p-16496L : 0x0p+0L : inexact-ok underflow errno-erange errno-erange-ok
+= jn upward ldbl-128 10 0x4p-16496L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+jn 10 -min_subnorm missing-errno
+= jn downward flt-32 10 -0x8p-152f : 0x0p+0f : inexact-ok underflow errno-erange errno-erange-ok
+= jn tonearest flt-32 10 -0x8p-152f : 0x0p+0f : inexact-ok underflow errno-erange errno-erange-ok
+= jn towardzero flt-32 10 -0x8p-152f : 0x0p+0f : inexact-ok underflow errno-erange errno-erange-ok
+= jn upward flt-32 10 -0x8p-152f : 0x8p-152f : inexact-ok underflow errno-erange-ok
+= jn downward dbl-64 10 -0x8p-152 : 0x0p+0 : inexact-ok underflow errno-erange errno-erange-ok
+= jn tonearest dbl-64 10 -0x8p-152 : 0x0p+0 : inexact-ok underflow errno-erange errno-erange-ok
+= jn towardzero dbl-64 10 -0x8p-152 : 0x0p+0 : inexact-ok underflow errno-erange errno-erange-ok
+= jn upward dbl-64 10 -0x8p-152 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= jn downward ldbl-96-intel 10 -0x8p-152L : 0x4.9f93edde27d71cb8p-1524L : inexact-ok
+= jn tonearest ldbl-96-intel 10 -0x8p-152L : 0x4.9f93edde27d71cb8p-1524L : inexact-ok
+= jn towardzero ldbl-96-intel 10 -0x8p-152L : 0x4.9f93edde27d71cb8p-1524L : inexact-ok
+= jn upward ldbl-96-intel 10 -0x8p-152L : 0x4.9f93edde27d71ccp-1524L : inexact-ok
+= jn downward ldbl-96-m68k 10 -0x8p-152L : 0x4.9f93edde27d71cb8p-1524L : inexact-ok
+= jn tonearest ldbl-96-m68k 10 -0x8p-152L : 0x4.9f93edde27d71cb8p-1524L : inexact-ok
+= jn towardzero ldbl-96-m68k 10 -0x8p-152L : 0x4.9f93edde27d71cb8p-1524L : inexact-ok
+= jn upward ldbl-96-m68k 10 -0x8p-152L : 0x4.9f93edde27d71ccp-1524L : inexact-ok
+= jn downward ldbl-128 10 -0x8p-152L : 0x4.9f93edde27d71cbbc05b4fa999ep-1524L : inexact-ok
+= jn tonearest ldbl-128 10 -0x8p-152L : 0x4.9f93edde27d71cbbc05b4fa999e4p-1524L : inexact-ok
+= jn towardzero ldbl-128 10 -0x8p-152L : 0x4.9f93edde27d71cbbc05b4fa999ep-1524L : inexact-ok
+= jn upward ldbl-128 10 -0x8p-152L : 0x4.9f93edde27d71cbbc05b4fa999e4p-1524L : inexact-ok
+= jn downward ldbl-128ibm 10 -0x8p-152L : 0x0p+0L : inexact-ok underflow errno-erange errno-erange-ok
+= jn tonearest ldbl-128ibm 10 -0x8p-152L : 0x0p+0L : inexact-ok underflow errno-erange errno-erange-ok
+= jn towardzero ldbl-128ibm 10 -0x8p-152L : 0x0p+0L : inexact-ok underflow errno-erange errno-erange-ok
+= jn upward ldbl-128ibm 10 -0x8p-152L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= jn downward dbl-64 10 -0x4p-1076 : 0x0p+0 : inexact-ok underflow errno-erange errno-erange-ok
+= jn tonearest dbl-64 10 -0x4p-1076 : 0x0p+0 : inexact-ok underflow errno-erange errno-erange-ok
+= jn towardzero dbl-64 10 -0x4p-1076 : 0x0p+0 : inexact-ok underflow errno-erange errno-erange-ok
+= jn upward dbl-64 10 -0x4p-1076 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= jn downward ldbl-96-intel 10 -0x4p-1076L : 0x1.27e4fb7789f5c72ep-10772L : inexact-ok
+= jn tonearest ldbl-96-intel 10 -0x4p-1076L : 0x1.27e4fb7789f5c72ep-10772L : inexact-ok
+= jn towardzero ldbl-96-intel 10 -0x4p-1076L : 0x1.27e4fb7789f5c72ep-10772L : inexact-ok
+= jn upward ldbl-96-intel 10 -0x4p-1076L : 0x1.27e4fb7789f5c73p-10772L : inexact-ok
+= jn downward ldbl-96-m68k 10 -0x4p-1076L : 0x1.27e4fb7789f5c72ep-10772L : inexact-ok
+= jn tonearest ldbl-96-m68k 10 -0x4p-1076L : 0x1.27e4fb7789f5c72ep-10772L : inexact-ok
+= jn towardzero ldbl-96-m68k 10 -0x4p-1076L : 0x1.27e4fb7789f5c72ep-10772L : inexact-ok
+= jn upward ldbl-96-m68k 10 -0x4p-1076L : 0x1.27e4fb7789f5c73p-10772L : inexact-ok
+= jn downward ldbl-128 10 -0x4p-1076L : 0x1.27e4fb7789f5c72ef016d3ea6678p-10772L : inexact-ok
+= jn tonearest ldbl-128 10 -0x4p-1076L : 0x1.27e4fb7789f5c72ef016d3ea6679p-10772L : inexact-ok
+= jn towardzero ldbl-128 10 -0x4p-1076L : 0x1.27e4fb7789f5c72ef016d3ea6678p-10772L : inexact-ok
+= jn upward ldbl-128 10 -0x4p-1076L : 0x1.27e4fb7789f5c72ef016d3ea6679p-10772L : inexact-ok
+= jn downward ldbl-128ibm 10 -0x4p-1076L : 0x0p+0L : inexact-ok underflow errno-erange errno-erange-ok
+= jn tonearest ldbl-128ibm 10 -0x4p-1076L : 0x0p+0L : inexact-ok underflow errno-erange errno-erange-ok
+= jn towardzero ldbl-128ibm 10 -0x4p-1076L : 0x0p+0L : inexact-ok underflow errno-erange errno-erange-ok
+= jn upward ldbl-128ibm 10 -0x4p-1076L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= jn downward ldbl-96-intel 10 -0x8p-16448L : 0x0p+0L : inexact-ok underflow errno-erange errno-erange-ok
+= jn tonearest ldbl-96-intel 10 -0x8p-16448L : 0x0p+0L : inexact-ok underflow errno-erange errno-erange-ok
+= jn towardzero ldbl-96-intel 10 -0x8p-16448L : 0x0p+0L : inexact-ok underflow errno-erange errno-erange-ok
+= jn upward ldbl-96-intel 10 -0x8p-16448L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= jn downward ldbl-96-m68k 10 -0x8p-16448L : 0x0p+0L : inexact-ok underflow errno-erange errno-erange-ok
+= jn tonearest ldbl-96-m68k 10 -0x8p-16448L : 0x0p+0L : inexact-ok underflow errno-erange errno-erange-ok
+= jn towardzero ldbl-96-m68k 10 -0x8p-16448L : 0x0p+0L : inexact-ok underflow errno-erange errno-erange-ok
+= jn upward ldbl-96-m68k 10 -0x8p-16448L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= jn downward ldbl-128 10 -0x8p-16448L : 0x0p+0L : inexact-ok underflow errno-erange errno-erange-ok
+= jn tonearest ldbl-128 10 -0x8p-16448L : 0x0p+0L : inexact-ok underflow errno-erange errno-erange-ok
+= jn towardzero ldbl-128 10 -0x8p-16448L : 0x0p+0L : inexact-ok underflow errno-erange errno-erange-ok
+= jn upward ldbl-128 10 -0x8p-16448L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= jn downward ldbl-96-m68k 10 -0x4p-16448L : 0x0p+0L : inexact-ok underflow errno-erange errno-erange-ok
+= jn tonearest ldbl-96-m68k 10 -0x4p-16448L : 0x0p+0L : inexact-ok underflow errno-erange errno-erange-ok
+= jn towardzero ldbl-96-m68k 10 -0x4p-16448L : 0x0p+0L : inexact-ok underflow errno-erange errno-erange-ok
+= jn upward ldbl-96-m68k 10 -0x4p-16448L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= jn downward ldbl-128 10 -0x4p-16448L : 0x0p+0L : inexact-ok underflow errno-erange errno-erange-ok
+= jn tonearest ldbl-128 10 -0x4p-16448L : 0x0p+0L : inexact-ok underflow errno-erange errno-erange-ok
+= jn towardzero ldbl-128 10 -0x4p-16448L : 0x0p+0L : inexact-ok underflow errno-erange errno-erange-ok
+= jn upward ldbl-128 10 -0x4p-16448L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= jn downward ldbl-128 10 -0x4p-16496L : 0x0p+0L : inexact-ok underflow errno-erange errno-erange-ok
+= jn tonearest ldbl-128 10 -0x4p-16496L : 0x0p+0L : inexact-ok underflow errno-erange errno-erange-ok
+= jn towardzero ldbl-128 10 -0x4p-16496L : 0x0p+0L : inexact-ok underflow errno-erange errno-erange-ok
+= jn upward ldbl-128 10 -0x4p-16496L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
lgamma max
= lgamma downward flt-32 0xf.fffffp+124f : 0xf.fffffp+124f 1 : inexact-ok overflow errno-erange-ok
= lgamma tonearest flt-32 0xf.fffffp+124f : plus_infty 1 : inexact-ok overflow errno-erange
diff --git a/sysdeps/ieee754/dbl-64/e_j1.c b/sysdeps/ieee754/dbl-64/e_j1.c
index 653f33abe1..26ffdfe282 100644
--- a/sysdeps/ieee754/dbl-64/e_j1.c
+++ b/sysdeps/ieee754/dbl-64/e_j1.c
@@ -59,6 +59,7 @@
*/
#include <errno.h>
+#include <float.h>
#include <math.h>
#include <math_private.h>
@@ -124,8 +125,16 @@ __ieee754_j1 (double x)
}
if (__glibc_unlikely (ix < 0x3e400000)) /* |x|<2**-27 */
{
- if (huge + x > one)
- return 0.5 * x; /* inexact if x!=0 necessary */
+ if (huge + x > one) /* inexact if x!=0 necessary */
+ {
+ double ret = 0.5 * x;
+ if (fabs (ret) < DBL_MIN)
+ {
+ double force_underflow = ret * ret;
+ math_force_eval (force_underflow);
+ }
+ return ret;
+ }
}
z = x * x;
r1 = z * R[0]; z2 = z * z;
diff --git a/sysdeps/ieee754/dbl-64/e_jn.c b/sysdeps/ieee754/dbl-64/e_jn.c
index b0ddd5e841..ccef2dcd80 100644
--- a/sysdeps/ieee754/dbl-64/e_jn.c
+++ b/sysdeps/ieee754/dbl-64/e_jn.c
@@ -246,6 +246,11 @@ __ieee754_jn (int n, double x)
}
if (ret == 0)
ret = __copysign (DBL_MIN, ret) * DBL_MIN;
+ else if (fabs (ret) < DBL_MIN)
+ {
+ double force_underflow = ret * ret;
+ math_force_eval (force_underflow);
+ }
return ret;
}
strong_alias (__ieee754_jn, __jn_finite)
diff --git a/sysdeps/ieee754/flt-32/e_j1f.c b/sysdeps/ieee754/flt-32/e_j1f.c
index 7ffb57e806..63de21f609 100644
--- a/sysdeps/ieee754/flt-32/e_j1f.c
+++ b/sysdeps/ieee754/flt-32/e_j1f.c
@@ -14,6 +14,7 @@
*/
#include <errno.h>
+#include <float.h>
#include <math.h>
#include <math_private.h>
@@ -69,7 +70,14 @@ __ieee754_j1f(float x)
else return z;
}
if(__builtin_expect(ix<0x32000000, 0)) { /* |x|<2**-27 */
- if(huge+x>one) return (float)0.5*x;/* inexact if x!=0 necessary */
+ if(huge+x>one) { /* inexact if x!=0 necessary */
+ float ret = (float) 0.5 * x;
+ if (fabsf (ret) < FLT_MIN) {
+ float force_underflow = ret * ret;
+ math_force_eval (force_underflow);
+ }
+ return ret;
+ }
}
z = x*x;
r = z*(r00+z*(r01+z*(r02+z*r03)));
diff --git a/sysdeps/ieee754/flt-32/e_jnf.c b/sysdeps/ieee754/flt-32/e_jnf.c
index ec5a81b653..44a3761adb 100644
--- a/sysdeps/ieee754/flt-32/e_jnf.c
+++ b/sysdeps/ieee754/flt-32/e_jnf.c
@@ -170,6 +170,10 @@ __ieee754_jnf(int n, float x)
}
if (ret == 0)
ret = __copysignf (FLT_MIN, ret) * FLT_MIN;
+ else if (fabsf (ret) < FLT_MIN) {
+ float force_underflow = ret * ret;
+ math_force_eval (force_underflow);
+ }
return ret;
}
strong_alias (__ieee754_jnf, __jnf_finite)
diff --git a/sysdeps/ieee754/ldbl-128/e_jnl.c b/sysdeps/ieee754/ldbl-128/e_jnl.c
index 14d65ff081..a419994a86 100644
--- a/sysdeps/ieee754/ldbl-128/e_jnl.c
+++ b/sysdeps/ieee754/ldbl-128/e_jnl.c
@@ -297,6 +297,11 @@ __ieee754_jnl (int n, long double x)
}
if (ret == 0)
ret = __copysignl (LDBL_MIN, ret) * LDBL_MIN;
+ else if (fabsl (ret) < LDBL_MIN)
+ {
+ long double force_underflow = ret * ret;
+ math_force_eval (force_underflow);
+ }
return ret;
}
strong_alias (__ieee754_jnl, __jnl_finite)
diff --git a/sysdeps/ieee754/ldbl-128ibm/e_jnl.c b/sysdeps/ieee754/ldbl-128ibm/e_jnl.c
index 5d0a2b5b6a..7594196a1f 100644
--- a/sysdeps/ieee754/ldbl-128ibm/e_jnl.c
+++ b/sysdeps/ieee754/ldbl-128ibm/e_jnl.c
@@ -297,6 +297,11 @@ __ieee754_jnl (int n, long double x)
}
if (ret == 0)
ret = __copysignl (LDBL_MIN, ret) * LDBL_MIN;
+ else if (fabsl (ret) < LDBL_MIN)
+ {
+ long double force_underflow = ret * ret;
+ math_force_eval (force_underflow);
+ }
return ret;
}
strong_alias (__ieee754_jnl, __jnl_finite)
diff --git a/sysdeps/ieee754/ldbl-96/e_j1l.c b/sysdeps/ieee754/ldbl-96/e_j1l.c
index 1bd54995a8..46e28dfe11 100644
--- a/sysdeps/ieee754/ldbl-96/e_j1l.c
+++ b/sysdeps/ieee754/ldbl-96/e_j1l.c
@@ -72,6 +72,7 @@
*/
#include <errno.h>
+#include <float.h>
#include <math.h>
#include <math_private.h>
@@ -150,8 +151,16 @@ __ieee754_j1l (long double x)
}
if (__glibc_unlikely (ix < 0x3fde)) /* |x| < 2^-33 */
{
- if (huge + x > one)
- return 0.5 * x; /* inexact if x!=0 necessary */
+ if (huge + x > one) /* inexact if x!=0 necessary */
+ {
+ long double ret = 0.5 * x;
+ if (fabsl (ret) < LDBL_MIN)
+ {
+ long double force_underflow = ret * ret;
+ math_force_eval (force_underflow);
+ }
+ return ret;
+ }
}
z = x * x;
r = z * (R[0] + z * (R[1]+ z * (R[2] + z * (R[3] + z * R[4]))));
diff --git a/sysdeps/ieee754/ldbl-96/e_jnl.c b/sysdeps/ieee754/ldbl-96/e_jnl.c
index 49c9c421b0..2f3a452f55 100644
--- a/sysdeps/ieee754/ldbl-96/e_jnl.c
+++ b/sysdeps/ieee754/ldbl-96/e_jnl.c
@@ -290,6 +290,11 @@ __ieee754_jnl (int n, long double x)
}
if (ret == 0)
ret = __copysignl (LDBL_MIN, ret) * LDBL_MIN;
+ else if (fabsl (ret) < LDBL_MIN)
+ {
+ long double force_underflow = ret * ret;
+ math_force_eval (force_underflow);
+ }
return ret;
}
strong_alias (__ieee754_jnl, __jnl_finite)