about summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog7
-rw-r--r--math/auto-libm-test-in4
-rw-r--r--math/auto-libm-test-out304
-rw-r--r--sysdeps/i386/fpu/libm-test-ulps16
-rw-r--r--sysdeps/x86_64/fpu/libm-test-ulps16
5 files changed, 331 insertions, 16 deletions
diff --git a/ChangeLog b/ChangeLog
index d0e6aa7884..207591d623 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,10 @@
+2015-03-25  Joseph Myers  <joseph@codesourcery.com>
+
+	* math/auto-libm-test-in: Add more tests of expm1.
+	* math/auto-libm-test-out: Regenerated.
+	* sysdeps/i386/fpu/libm-test-ulps: Update.
+	* sysdeps/x86_64/fpu/libm-test-ulps: Likewise.
+
 2015-03-24  Joseph Myers  <joseph@codesourcery.com>
 
 	* math/auto-libm-test-in: Add more tests of cosh and sinh.
diff --git a/math/auto-libm-test-in b/math/auto-libm-test-in
index fbfa562b2d..1da8ec130f 100644
--- a/math/auto-libm-test-in
+++ b/math/auto-libm-test-in
@@ -1166,6 +1166,10 @@ expm1 0x1p-64
 expm1 -0x1p-64
 expm1 0x1p-100
 expm1 -0x1p-100
+expm1 0xe.4152ac57cd1ea7ap-60
+expm1 0x6.660247486aed8p-4
+expm1 0x6.289a78p-4
+expm1 0x6.1b4d318238d4a2a8p-4
 # Bug 16353: underflow exception may be missing
 expm1 0x4.0000000000000028p-16384 missing-underflow
 
diff --git a/math/auto-libm-test-out b/math/auto-libm-test-out
index 13f71f9258..4bfbdf47d4 100644
--- a/math/auto-libm-test-out
+++ b/math/auto-libm-test-out
@@ -99204,6 +99204,310 @@ expm1 -0x1p-100
 = expm1 tonearest ldbl-128ibm -0x1p-100L : -0xf.ffffffffffffffffffffffff8p-104L : inexact-ok
 = expm1 towardzero ldbl-128ibm -0x1p-100L : -0xf.ffffffffffffffffffffffff8p-104L : inexact-ok
 = expm1 upward ldbl-128ibm -0x1p-100L : -0xf.ffffffffffffffffffffffff8p-104L : inexact-ok
+expm1 0xe.4152ac57cd1ea7ap-60
+= expm1 downward flt-32 0xe.4152bp-60f : 0xe.4152bp-60f : inexact-ok
+= expm1 tonearest flt-32 0xe.4152bp-60f : 0xe.4152bp-60f : inexact-ok
+= expm1 towardzero flt-32 0xe.4152bp-60f : 0xe.4152bp-60f : inexact-ok
+= expm1 upward flt-32 0xe.4152bp-60f : 0xe.4152cp-60f : inexact-ok
+= expm1 downward dbl-64 0xe.4152bp-60 : 0xe.4152bp-60 : inexact-ok
+= expm1 tonearest dbl-64 0xe.4152bp-60 : 0xe.4152bp-60 : inexact-ok
+= expm1 towardzero dbl-64 0xe.4152bp-60 : 0xe.4152bp-60 : inexact-ok
+= expm1 upward dbl-64 0xe.4152bp-60 : 0xe.4152b00000008p-60 : inexact-ok
+= expm1 downward ldbl-96-intel 0xe.4152bp-60L : 0xe.4152b0000000065p-60L : inexact-ok
+= expm1 tonearest ldbl-96-intel 0xe.4152bp-60L : 0xe.4152b0000000066p-60L : inexact-ok
+= expm1 towardzero ldbl-96-intel 0xe.4152bp-60L : 0xe.4152b0000000065p-60L : inexact-ok
+= expm1 upward ldbl-96-intel 0xe.4152bp-60L : 0xe.4152b0000000066p-60L : inexact-ok
+= expm1 downward ldbl-96-m68k 0xe.4152bp-60L : 0xe.4152b0000000065p-60L : inexact-ok
+= expm1 tonearest ldbl-96-m68k 0xe.4152bp-60L : 0xe.4152b0000000066p-60L : inexact-ok
+= expm1 towardzero ldbl-96-m68k 0xe.4152bp-60L : 0xe.4152b0000000065p-60L : inexact-ok
+= expm1 upward ldbl-96-m68k 0xe.4152bp-60L : 0xe.4152b0000000066p-60L : inexact-ok
+= expm1 downward ldbl-128 0xe.4152bp-60L : 0xe.4152b00000000659adb2c0a9c8p-60L : inexact-ok
+= expm1 tonearest ldbl-128 0xe.4152bp-60L : 0xe.4152b00000000659adb2c0a9c8p-60L : inexact-ok
+= expm1 towardzero ldbl-128 0xe.4152bp-60L : 0xe.4152b00000000659adb2c0a9c8p-60L : inexact-ok
+= expm1 upward ldbl-128 0xe.4152bp-60L : 0xe.4152b00000000659adb2c0a9c808p-60L : inexact-ok
+= expm1 downward ldbl-128ibm 0xe.4152bp-60L : 0xe.4152b00000000659adb2c0a9c8p-60L : inexact-ok
+= expm1 tonearest ldbl-128ibm 0xe.4152bp-60L : 0xe.4152b00000000659adb2c0a9c8p-60L : inexact-ok
+= expm1 towardzero ldbl-128ibm 0xe.4152bp-60L : 0xe.4152b00000000659adb2c0a9c8p-60L : inexact-ok
+= expm1 upward ldbl-128ibm 0xe.4152bp-60L : 0xe.4152b00000000659adb2c0a9ccp-60L : inexact-ok
+= expm1 downward flt-32 0xe.4152ap-60f : 0xe.4152ap-60f : inexact-ok
+= expm1 tonearest flt-32 0xe.4152ap-60f : 0xe.4152ap-60f : inexact-ok
+= expm1 towardzero flt-32 0xe.4152ap-60f : 0xe.4152ap-60f : inexact-ok
+= expm1 upward flt-32 0xe.4152ap-60f : 0xe.4152bp-60f : inexact-ok
+= expm1 downward dbl-64 0xe.4152ap-60 : 0xe.4152ap-60 : inexact-ok
+= expm1 tonearest dbl-64 0xe.4152ap-60 : 0xe.4152ap-60 : inexact-ok
+= expm1 towardzero dbl-64 0xe.4152ap-60 : 0xe.4152ap-60 : inexact-ok
+= expm1 upward dbl-64 0xe.4152ap-60 : 0xe.4152a00000008p-60 : inexact-ok
+= expm1 downward ldbl-96-intel 0xe.4152ap-60L : 0xe.4152a0000000065p-60L : inexact-ok
+= expm1 tonearest ldbl-96-intel 0xe.4152ap-60L : 0xe.4152a0000000066p-60L : inexact-ok
+= expm1 towardzero ldbl-96-intel 0xe.4152ap-60L : 0xe.4152a0000000065p-60L : inexact-ok
+= expm1 upward ldbl-96-intel 0xe.4152ap-60L : 0xe.4152a0000000066p-60L : inexact-ok
+= expm1 downward ldbl-96-m68k 0xe.4152ap-60L : 0xe.4152a0000000065p-60L : inexact-ok
+= expm1 tonearest ldbl-96-m68k 0xe.4152ap-60L : 0xe.4152a0000000066p-60L : inexact-ok
+= expm1 towardzero ldbl-96-m68k 0xe.4152ap-60L : 0xe.4152a0000000065p-60L : inexact-ok
+= expm1 upward ldbl-96-m68k 0xe.4152ap-60L : 0xe.4152a0000000066p-60L : inexact-ok
+= expm1 downward ldbl-128 0xe.4152ap-60L : 0xe.4152a00000000659ada47f572p-60L : inexact-ok
+= expm1 tonearest ldbl-128 0xe.4152ap-60L : 0xe.4152a00000000659ada47f572p-60L : inexact-ok
+= expm1 towardzero ldbl-128 0xe.4152ap-60L : 0xe.4152a00000000659ada47f572p-60L : inexact-ok
+= expm1 upward ldbl-128 0xe.4152ap-60L : 0xe.4152a00000000659ada47f572008p-60L : inexact-ok
+= expm1 downward ldbl-128ibm 0xe.4152ap-60L : 0xe.4152a00000000659ada47f572p-60L : inexact-ok
+= expm1 tonearest ldbl-128ibm 0xe.4152ap-60L : 0xe.4152a00000000659ada47f572p-60L : inexact-ok
+= expm1 towardzero ldbl-128ibm 0xe.4152ap-60L : 0xe.4152a00000000659ada47f572p-60L : inexact-ok
+= expm1 upward ldbl-128ibm 0xe.4152ap-60L : 0xe.4152a00000000659ada47f5724p-60L : inexact-ok
+= expm1 downward dbl-64 0xe.4152ac57cd1fp-60 : 0xe.4152ac57cd1fp-60 : inexact-ok
+= expm1 tonearest dbl-64 0xe.4152ac57cd1fp-60 : 0xe.4152ac57cd1fp-60 : inexact-ok
+= expm1 towardzero dbl-64 0xe.4152ac57cd1fp-60 : 0xe.4152ac57cd1fp-60 : inexact-ok
+= expm1 upward dbl-64 0xe.4152ac57cd1fp-60 : 0xe.4152ac57cd1f8p-60 : inexact-ok
+= expm1 downward ldbl-96-intel 0xe.4152ac57cd1fp-60L : 0xe.4152ac57cd1f065p-60L : inexact-ok
+= expm1 tonearest ldbl-96-intel 0xe.4152ac57cd1fp-60L : 0xe.4152ac57cd1f066p-60L : inexact-ok
+= expm1 towardzero ldbl-96-intel 0xe.4152ac57cd1fp-60L : 0xe.4152ac57cd1f065p-60L : inexact-ok
+= expm1 upward ldbl-96-intel 0xe.4152ac57cd1fp-60L : 0xe.4152ac57cd1f066p-60L : inexact-ok
+= expm1 downward ldbl-96-m68k 0xe.4152ac57cd1fp-60L : 0xe.4152ac57cd1f065p-60L : inexact-ok
+= expm1 tonearest ldbl-96-m68k 0xe.4152ac57cd1fp-60L : 0xe.4152ac57cd1f066p-60L : inexact-ok
+= expm1 towardzero ldbl-96-m68k 0xe.4152ac57cd1fp-60L : 0xe.4152ac57cd1f065p-60L : inexact-ok
+= expm1 upward ldbl-96-m68k 0xe.4152ac57cd1fp-60L : 0xe.4152ac57cd1f066p-60L : inexact-ok
+= expm1 downward ldbl-128 0xe.4152ac57cd1fp-60L : 0xe.4152ac57cd1f0659adaf7e8f0e98p-60L : inexact-ok
+= expm1 tonearest ldbl-128 0xe.4152ac57cd1fp-60L : 0xe.4152ac57cd1f0659adaf7e8f0e98p-60L : inexact-ok
+= expm1 towardzero ldbl-128 0xe.4152ac57cd1fp-60L : 0xe.4152ac57cd1f0659adaf7e8f0e98p-60L : inexact-ok
+= expm1 upward ldbl-128 0xe.4152ac57cd1fp-60L : 0xe.4152ac57cd1f0659adaf7e8f0eap-60L : inexact-ok
+= expm1 downward ldbl-128ibm 0xe.4152ac57cd1fp-60L : 0xe.4152ac57cd1f0659adaf7e8f0cp-60L : inexact-ok
+= expm1 tonearest ldbl-128ibm 0xe.4152ac57cd1fp-60L : 0xe.4152ac57cd1f0659adaf7e8f1p-60L : inexact-ok
+= expm1 towardzero ldbl-128ibm 0xe.4152ac57cd1fp-60L : 0xe.4152ac57cd1f0659adaf7e8f0cp-60L : inexact-ok
+= expm1 upward ldbl-128ibm 0xe.4152ac57cd1fp-60L : 0xe.4152ac57cd1f0659adaf7e8f1p-60L : inexact-ok
+= expm1 downward dbl-64 0xe.4152ac57cd1e8p-60 : 0xe.4152ac57cd1e8p-60 : inexact-ok
+= expm1 tonearest dbl-64 0xe.4152ac57cd1e8p-60 : 0xe.4152ac57cd1e8p-60 : inexact-ok
+= expm1 towardzero dbl-64 0xe.4152ac57cd1e8p-60 : 0xe.4152ac57cd1e8p-60 : inexact-ok
+= expm1 upward dbl-64 0xe.4152ac57cd1e8p-60 : 0xe.4152ac57cd1fp-60 : inexact-ok
+= expm1 downward ldbl-96-intel 0xe.4152ac57cd1e8p-60L : 0xe.4152ac57cd1e865p-60L : inexact-ok
+= expm1 tonearest ldbl-96-intel 0xe.4152ac57cd1e8p-60L : 0xe.4152ac57cd1e866p-60L : inexact-ok
+= expm1 towardzero ldbl-96-intel 0xe.4152ac57cd1e8p-60L : 0xe.4152ac57cd1e865p-60L : inexact-ok
+= expm1 upward ldbl-96-intel 0xe.4152ac57cd1e8p-60L : 0xe.4152ac57cd1e866p-60L : inexact-ok
+= expm1 downward ldbl-96-m68k 0xe.4152ac57cd1e8p-60L : 0xe.4152ac57cd1e865p-60L : inexact-ok
+= expm1 tonearest ldbl-96-m68k 0xe.4152ac57cd1e8p-60L : 0xe.4152ac57cd1e866p-60L : inexact-ok
+= expm1 towardzero ldbl-96-m68k 0xe.4152ac57cd1e8p-60L : 0xe.4152ac57cd1e865p-60L : inexact-ok
+= expm1 upward ldbl-96-m68k 0xe.4152ac57cd1e8p-60L : 0xe.4152ac57cd1e866p-60L : inexact-ok
+= expm1 downward ldbl-128 0xe.4152ac57cd1e8p-60L : 0xe.4152ac57cd1e8659adaf7e8f0e28p-60L : inexact-ok
+= expm1 tonearest ldbl-128 0xe.4152ac57cd1e8p-60L : 0xe.4152ac57cd1e8659adaf7e8f0e28p-60L : inexact-ok
+= expm1 towardzero ldbl-128 0xe.4152ac57cd1e8p-60L : 0xe.4152ac57cd1e8659adaf7e8f0e28p-60L : inexact-ok
+= expm1 upward ldbl-128 0xe.4152ac57cd1e8p-60L : 0xe.4152ac57cd1e8659adaf7e8f0e3p-60L : inexact-ok
+= expm1 downward ldbl-128ibm 0xe.4152ac57cd1e8p-60L : 0xe.4152ac57cd1e8659adaf7e8f0cp-60L : inexact-ok
+= expm1 tonearest ldbl-128ibm 0xe.4152ac57cd1e8p-60L : 0xe.4152ac57cd1e8659adaf7e8f1p-60L : inexact-ok
+= expm1 towardzero ldbl-128ibm 0xe.4152ac57cd1e8p-60L : 0xe.4152ac57cd1e8659adaf7e8f0cp-60L : inexact-ok
+= expm1 upward ldbl-128ibm 0xe.4152ac57cd1e8p-60L : 0xe.4152ac57cd1e8659adaf7e8f1p-60L : inexact-ok
+= expm1 downward ldbl-96-intel 0xe.4152ac57cd1ea7ap-60L : 0xe.4152ac57cd1eadfp-60L : inexact-ok
+= expm1 tonearest ldbl-96-intel 0xe.4152ac57cd1ea7ap-60L : 0xe.4152ac57cd1eaep-60L : inexact-ok
+= expm1 towardzero ldbl-96-intel 0xe.4152ac57cd1ea7ap-60L : 0xe.4152ac57cd1eadfp-60L : inexact-ok
+= expm1 upward ldbl-96-intel 0xe.4152ac57cd1ea7ap-60L : 0xe.4152ac57cd1eaep-60L : inexact-ok
+= expm1 downward ldbl-96-m68k 0xe.4152ac57cd1ea7ap-60L : 0xe.4152ac57cd1eadfp-60L : inexact-ok
+= expm1 tonearest ldbl-96-m68k 0xe.4152ac57cd1ea7ap-60L : 0xe.4152ac57cd1eaep-60L : inexact-ok
+= expm1 towardzero ldbl-96-m68k 0xe.4152ac57cd1ea7ap-60L : 0xe.4152ac57cd1eadfp-60L : inexact-ok
+= expm1 upward ldbl-96-m68k 0xe.4152ac57cd1ea7ap-60L : 0xe.4152ac57cd1eaep-60L : inexact-ok
+= expm1 downward ldbl-128 0xe.4152ac57cd1ea7ap-60L : 0xe.4152ac57cd1eadf9adaf7e8f0e48p-60L : inexact-ok
+= expm1 tonearest ldbl-128 0xe.4152ac57cd1ea7ap-60L : 0xe.4152ac57cd1eadf9adaf7e8f0e5p-60L : inexact-ok
+= expm1 towardzero ldbl-128 0xe.4152ac57cd1ea7ap-60L : 0xe.4152ac57cd1eadf9adaf7e8f0e48p-60L : inexact-ok
+= expm1 upward ldbl-128 0xe.4152ac57cd1ea7ap-60L : 0xe.4152ac57cd1eadf9adaf7e8f0e5p-60L : inexact-ok
+= expm1 downward ldbl-128ibm 0xe.4152ac57cd1ea7ap-60L : 0xe.4152ac57cd1eadf9adaf7e8f0cp-60L : inexact-ok
+= expm1 tonearest ldbl-128ibm 0xe.4152ac57cd1ea7ap-60L : 0xe.4152ac57cd1eadf9adaf7e8f1p-60L : inexact-ok
+= expm1 towardzero ldbl-128ibm 0xe.4152ac57cd1ea7ap-60L : 0xe.4152ac57cd1eadf9adaf7e8f0cp-60L : inexact-ok
+= expm1 upward ldbl-128ibm 0xe.4152ac57cd1ea7ap-60L : 0xe.4152ac57cd1eadf9adaf7e8f1p-60L : inexact-ok
+expm1 0x6.660247486aed8p-4
+= expm1 downward flt-32 0x6.660248p-4f : 0x7.ddee38p-4f : inexact-ok
+= expm1 tonearest flt-32 0x6.660248p-4f : 0x7.ddee38p-4f : inexact-ok
+= expm1 towardzero flt-32 0x6.660248p-4f : 0x7.ddee38p-4f : inexact-ok
+= expm1 upward flt-32 0x6.660248p-4f : 0x7.ddee4p-4f : inexact-ok
+= expm1 downward dbl-64 0x6.660248p-4 : 0x7.ddee38beb9054p-4 : inexact-ok
+= expm1 tonearest dbl-64 0x6.660248p-4 : 0x7.ddee38beb9054p-4 : inexact-ok
+= expm1 towardzero dbl-64 0x6.660248p-4 : 0x7.ddee38beb9054p-4 : inexact-ok
+= expm1 upward dbl-64 0x6.660248p-4 : 0x7.ddee38beb9058p-4 : inexact-ok
+= expm1 downward ldbl-96-intel 0x6.660248p-4L : 0x7.ddee38beb90553dp-4L : inexact-ok
+= expm1 tonearest ldbl-96-intel 0x6.660248p-4L : 0x7.ddee38beb90553dp-4L : inexact-ok
+= expm1 towardzero ldbl-96-intel 0x6.660248p-4L : 0x7.ddee38beb90553dp-4L : inexact-ok
+= expm1 upward ldbl-96-intel 0x6.660248p-4L : 0x7.ddee38beb90553d8p-4L : inexact-ok
+= expm1 downward ldbl-96-m68k 0x6.660248p-4L : 0x7.ddee38beb90553dp-4L : inexact-ok
+= expm1 tonearest ldbl-96-m68k 0x6.660248p-4L : 0x7.ddee38beb90553dp-4L : inexact-ok
+= expm1 towardzero ldbl-96-m68k 0x6.660248p-4L : 0x7.ddee38beb90553dp-4L : inexact-ok
+= expm1 upward ldbl-96-m68k 0x6.660248p-4L : 0x7.ddee38beb90553d8p-4L : inexact-ok
+= expm1 downward ldbl-128 0x6.660248p-4L : 0x7.ddee38beb90553d11ec1beb27a08p-4L : inexact-ok
+= expm1 tonearest ldbl-128 0x6.660248p-4L : 0x7.ddee38beb90553d11ec1beb27a08p-4L : inexact-ok
+= expm1 towardzero ldbl-128 0x6.660248p-4L : 0x7.ddee38beb90553d11ec1beb27a08p-4L : inexact-ok
+= expm1 upward ldbl-128 0x6.660248p-4L : 0x7.ddee38beb90553d11ec1beb27a0cp-4L : inexact-ok
+= expm1 downward ldbl-128ibm 0x6.660248p-4L : 0x7.ddee38beb90553d11ec1beb27ap-4L : inexact-ok
+= expm1 tonearest ldbl-128ibm 0x6.660248p-4L : 0x7.ddee38beb90553d11ec1beb27ap-4L : inexact-ok
+= expm1 towardzero ldbl-128ibm 0x6.660248p-4L : 0x7.ddee38beb90553d11ec1beb27ap-4L : inexact-ok
+= expm1 upward ldbl-128ibm 0x6.660248p-4L : 0x7.ddee38beb90553d11ec1beb27cp-4L : inexact-ok
+= expm1 downward flt-32 0x6.66024p-4f : 0x7.ddee28p-4f : inexact-ok
+= expm1 tonearest flt-32 0x6.66024p-4f : 0x7.ddee3p-4f : inexact-ok
+= expm1 towardzero flt-32 0x6.66024p-4f : 0x7.ddee28p-4f : inexact-ok
+= expm1 upward flt-32 0x6.66024p-4f : 0x7.ddee3p-4f : inexact-ok
+= expm1 downward dbl-64 0x6.66024p-4 : 0x7.ddee2ccfc1ebcp-4 : inexact-ok
+= expm1 tonearest dbl-64 0x6.66024p-4 : 0x7.ddee2ccfc1ecp-4 : inexact-ok
+= expm1 towardzero dbl-64 0x6.66024p-4 : 0x7.ddee2ccfc1ebcp-4 : inexact-ok
+= expm1 upward dbl-64 0x6.66024p-4 : 0x7.ddee2ccfc1ecp-4 : inexact-ok
+= expm1 downward ldbl-96-intel 0x6.66024p-4L : 0x7.ddee2ccfc1ebf03p-4L : inexact-ok
+= expm1 tonearest ldbl-96-intel 0x6.66024p-4L : 0x7.ddee2ccfc1ebf03p-4L : inexact-ok
+= expm1 towardzero ldbl-96-intel 0x6.66024p-4L : 0x7.ddee2ccfc1ebf03p-4L : inexact-ok
+= expm1 upward ldbl-96-intel 0x6.66024p-4L : 0x7.ddee2ccfc1ebf038p-4L : inexact-ok
+= expm1 downward ldbl-96-m68k 0x6.66024p-4L : 0x7.ddee2ccfc1ebf03p-4L : inexact-ok
+= expm1 tonearest ldbl-96-m68k 0x6.66024p-4L : 0x7.ddee2ccfc1ebf03p-4L : inexact-ok
+= expm1 towardzero ldbl-96-m68k 0x6.66024p-4L : 0x7.ddee2ccfc1ebf03p-4L : inexact-ok
+= expm1 upward ldbl-96-m68k 0x6.66024p-4L : 0x7.ddee2ccfc1ebf038p-4L : inexact-ok
+= expm1 downward ldbl-128 0x6.66024p-4L : 0x7.ddee2ccfc1ebf03262b062f7fa3cp-4L : inexact-ok
+= expm1 tonearest ldbl-128 0x6.66024p-4L : 0x7.ddee2ccfc1ebf03262b062f7fa4p-4L : inexact-ok
+= expm1 towardzero ldbl-128 0x6.66024p-4L : 0x7.ddee2ccfc1ebf03262b062f7fa3cp-4L : inexact-ok
+= expm1 upward ldbl-128 0x6.66024p-4L : 0x7.ddee2ccfc1ebf03262b062f7fa4p-4L : inexact-ok
+= expm1 downward ldbl-128ibm 0x6.66024p-4L : 0x7.ddee2ccfc1ebf03262b062f7fap-4L : inexact-ok
+= expm1 tonearest ldbl-128ibm 0x6.66024p-4L : 0x7.ddee2ccfc1ebf03262b062f7fap-4L : inexact-ok
+= expm1 towardzero ldbl-128ibm 0x6.66024p-4L : 0x7.ddee2ccfc1ebf03262b062f7fap-4L : inexact-ok
+= expm1 upward ldbl-128ibm 0x6.66024p-4L : 0x7.ddee2ccfc1ebf03262b062f7fcp-4L : inexact-ok
+= expm1 downward dbl-64 0x6.660247486aed8p-4 : 0x7.ddee37ace0524p-4 : inexact-ok
+= expm1 tonearest dbl-64 0x6.660247486aed8p-4 : 0x7.ddee37ace0524p-4 : inexact-ok
+= expm1 towardzero dbl-64 0x6.660247486aed8p-4 : 0x7.ddee37ace0524p-4 : inexact-ok
+= expm1 upward dbl-64 0x6.660247486aed8p-4 : 0x7.ddee37ace0528p-4 : inexact-ok
+= expm1 downward ldbl-96-intel 0x6.660247486aed8p-4L : 0x7.ddee37ace0525dep-4L : inexact-ok
+= expm1 tonearest ldbl-96-intel 0x6.660247486aed8p-4L : 0x7.ddee37ace0525dep-4L : inexact-ok
+= expm1 towardzero ldbl-96-intel 0x6.660247486aed8p-4L : 0x7.ddee37ace0525dep-4L : inexact-ok
+= expm1 upward ldbl-96-intel 0x6.660247486aed8p-4L : 0x7.ddee37ace0525de8p-4L : inexact-ok
+= expm1 downward ldbl-96-m68k 0x6.660247486aed8p-4L : 0x7.ddee37ace0525dep-4L : inexact-ok
+= expm1 tonearest ldbl-96-m68k 0x6.660247486aed8p-4L : 0x7.ddee37ace0525dep-4L : inexact-ok
+= expm1 towardzero ldbl-96-m68k 0x6.660247486aed8p-4L : 0x7.ddee37ace0525dep-4L : inexact-ok
+= expm1 upward ldbl-96-m68k 0x6.660247486aed8p-4L : 0x7.ddee37ace0525de8p-4L : inexact-ok
+= expm1 downward ldbl-128 0x6.660247486aed8p-4L : 0x7.ddee37ace0525de2e3d415373edp-4L : inexact-ok
+= expm1 tonearest ldbl-128 0x6.660247486aed8p-4L : 0x7.ddee37ace0525de2e3d415373edp-4L : inexact-ok
+= expm1 towardzero ldbl-128 0x6.660247486aed8p-4L : 0x7.ddee37ace0525de2e3d415373edp-4L : inexact-ok
+= expm1 upward ldbl-128 0x6.660247486aed8p-4L : 0x7.ddee37ace0525de2e3d415373ed4p-4L : inexact-ok
+= expm1 downward ldbl-128ibm 0x6.660247486aed8p-4L : 0x7.ddee37ace0525de2e3d415373ep-4L : inexact-ok
+= expm1 tonearest ldbl-128ibm 0x6.660247486aed8p-4L : 0x7.ddee37ace0525de2e3d415373ep-4L : inexact-ok
+= expm1 towardzero ldbl-128ibm 0x6.660247486aed8p-4L : 0x7.ddee37ace0525de2e3d415373ep-4L : inexact-ok
+= expm1 upward ldbl-128ibm 0x6.660247486aed8p-4L : 0x7.ddee37ace0525de2e3d415374p-4L : inexact-ok
+expm1 0x6.289a78p-4
+= expm1 downward flt-32 0x6.289a78p-4f : 0x7.83042p-4f : inexact-ok
+= expm1 tonearest flt-32 0x6.289a78p-4f : 0x7.830428p-4f : inexact-ok
+= expm1 towardzero flt-32 0x6.289a78p-4f : 0x7.83042p-4f : inexact-ok
+= expm1 upward flt-32 0x6.289a78p-4f : 0x7.830428p-4f : inexact-ok
+= expm1 downward dbl-64 0x6.289a78p-4 : 0x7.8304264e39d2cp-4 : inexact-ok
+= expm1 tonearest dbl-64 0x6.289a78p-4 : 0x7.8304264e39d2cp-4 : inexact-ok
+= expm1 towardzero dbl-64 0x6.289a78p-4 : 0x7.8304264e39d2cp-4 : inexact-ok
+= expm1 upward dbl-64 0x6.289a78p-4 : 0x7.8304264e39d3p-4 : inexact-ok
+= expm1 downward ldbl-96-intel 0x6.289a78p-4L : 0x7.8304264e39d2cff8p-4L : inexact-ok
+= expm1 tonearest ldbl-96-intel 0x6.289a78p-4L : 0x7.8304264e39d2dp-4L : inexact-ok
+= expm1 towardzero ldbl-96-intel 0x6.289a78p-4L : 0x7.8304264e39d2cff8p-4L : inexact-ok
+= expm1 upward ldbl-96-intel 0x6.289a78p-4L : 0x7.8304264e39d2dp-4L : inexact-ok
+= expm1 downward ldbl-96-m68k 0x6.289a78p-4L : 0x7.8304264e39d2cff8p-4L : inexact-ok
+= expm1 tonearest ldbl-96-m68k 0x6.289a78p-4L : 0x7.8304264e39d2dp-4L : inexact-ok
+= expm1 towardzero ldbl-96-m68k 0x6.289a78p-4L : 0x7.8304264e39d2cff8p-4L : inexact-ok
+= expm1 upward ldbl-96-m68k 0x6.289a78p-4L : 0x7.8304264e39d2dp-4L : inexact-ok
+= expm1 downward ldbl-128 0x6.289a78p-4L : 0x7.8304264e39d2cffd272b76863fa8p-4L : inexact-ok
+= expm1 tonearest ldbl-128 0x6.289a78p-4L : 0x7.8304264e39d2cffd272b76863fa8p-4L : inexact-ok
+= expm1 towardzero ldbl-128 0x6.289a78p-4L : 0x7.8304264e39d2cffd272b76863fa8p-4L : inexact-ok
+= expm1 upward ldbl-128 0x6.289a78p-4L : 0x7.8304264e39d2cffd272b76863facp-4L : inexact-ok
+= expm1 downward ldbl-128ibm 0x6.289a78p-4L : 0x7.8304264e39d2cffd272b76863ep-4L : inexact-ok
+= expm1 tonearest ldbl-128ibm 0x6.289a78p-4L : 0x7.8304264e39d2cffd272b76864p-4L : inexact-ok
+= expm1 towardzero ldbl-128ibm 0x6.289a78p-4L : 0x7.8304264e39d2cffd272b76863ep-4L : inexact-ok
+= expm1 upward ldbl-128ibm 0x6.289a78p-4L : 0x7.8304264e39d2cffd272b76864p-4L : inexact-ok
+expm1 0x6.1b4d318238d4a2a8p-4
+= expm1 downward flt-32 0x6.1b4d38p-4f : 0x7.6f8048p-4f : inexact-ok
+= expm1 tonearest flt-32 0x6.1b4d38p-4f : 0x7.6f805p-4f : inexact-ok
+= expm1 towardzero flt-32 0x6.1b4d38p-4f : 0x7.6f8048p-4f : inexact-ok
+= expm1 upward flt-32 0x6.1b4d38p-4f : 0x7.6f805p-4f : inexact-ok
+= expm1 downward dbl-64 0x6.1b4d38p-4 : 0x7.6f804c2bba674p-4 : inexact-ok
+= expm1 tonearest dbl-64 0x6.1b4d38p-4 : 0x7.6f804c2bba678p-4 : inexact-ok
+= expm1 towardzero dbl-64 0x6.1b4d38p-4 : 0x7.6f804c2bba674p-4 : inexact-ok
+= expm1 upward dbl-64 0x6.1b4d38p-4 : 0x7.6f804c2bba678p-4 : inexact-ok
+= expm1 downward ldbl-96-intel 0x6.1b4d38p-4L : 0x7.6f804c2bba6774ap-4L : inexact-ok
+= expm1 tonearest ldbl-96-intel 0x6.1b4d38p-4L : 0x7.6f804c2bba6774a8p-4L : inexact-ok
+= expm1 towardzero ldbl-96-intel 0x6.1b4d38p-4L : 0x7.6f804c2bba6774ap-4L : inexact-ok
+= expm1 upward ldbl-96-intel 0x6.1b4d38p-4L : 0x7.6f804c2bba6774a8p-4L : inexact-ok
+= expm1 downward ldbl-96-m68k 0x6.1b4d38p-4L : 0x7.6f804c2bba6774ap-4L : inexact-ok
+= expm1 tonearest ldbl-96-m68k 0x6.1b4d38p-4L : 0x7.6f804c2bba6774a8p-4L : inexact-ok
+= expm1 towardzero ldbl-96-m68k 0x6.1b4d38p-4L : 0x7.6f804c2bba6774ap-4L : inexact-ok
+= expm1 upward ldbl-96-m68k 0x6.1b4d38p-4L : 0x7.6f804c2bba6774a8p-4L : inexact-ok
+= expm1 downward ldbl-128 0x6.1b4d38p-4L : 0x7.6f804c2bba6774a43c5c34a96fcp-4L : inexact-ok
+= expm1 tonearest ldbl-128 0x6.1b4d38p-4L : 0x7.6f804c2bba6774a43c5c34a96fcp-4L : inexact-ok
+= expm1 towardzero ldbl-128 0x6.1b4d38p-4L : 0x7.6f804c2bba6774a43c5c34a96fcp-4L : inexact-ok
+= expm1 upward ldbl-128 0x6.1b4d38p-4L : 0x7.6f804c2bba6774a43c5c34a96fc4p-4L : inexact-ok
+= expm1 downward ldbl-128ibm 0x6.1b4d38p-4L : 0x7.6f804c2bba6774a43c5c34a96ep-4L : inexact-ok
+= expm1 tonearest ldbl-128ibm 0x6.1b4d38p-4L : 0x7.6f804c2bba6774a43c5c34a97p-4L : inexact-ok
+= expm1 towardzero ldbl-128ibm 0x6.1b4d38p-4L : 0x7.6f804c2bba6774a43c5c34a96ep-4L : inexact-ok
+= expm1 upward ldbl-128ibm 0x6.1b4d38p-4L : 0x7.6f804c2bba6774a43c5c34a97p-4L : inexact-ok
+= expm1 downward flt-32 0x6.1b4d3p-4f : 0x7.6f804p-4f : inexact-ok
+= expm1 tonearest flt-32 0x6.1b4d3p-4f : 0x7.6f804p-4f : inexact-ok
+= expm1 towardzero flt-32 0x6.1b4d3p-4f : 0x7.6f804p-4f : inexact-ok
+= expm1 upward flt-32 0x6.1b4d3p-4f : 0x7.6f8048p-4f : inexact-ok
+= expm1 downward dbl-64 0x6.1b4d3p-4 : 0x7.6f804073fa444p-4 : inexact-ok
+= expm1 tonearest dbl-64 0x6.1b4d3p-4 : 0x7.6f804073fa444p-4 : inexact-ok
+= expm1 towardzero dbl-64 0x6.1b4d3p-4 : 0x7.6f804073fa444p-4 : inexact-ok
+= expm1 upward dbl-64 0x6.1b4d3p-4 : 0x7.6f804073fa448p-4 : inexact-ok
+= expm1 downward ldbl-96-intel 0x6.1b4d3p-4L : 0x7.6f804073fa444cbp-4L : inexact-ok
+= expm1 tonearest ldbl-96-intel 0x6.1b4d3p-4L : 0x7.6f804073fa444cb8p-4L : inexact-ok
+= expm1 towardzero ldbl-96-intel 0x6.1b4d3p-4L : 0x7.6f804073fa444cbp-4L : inexact-ok
+= expm1 upward ldbl-96-intel 0x6.1b4d3p-4L : 0x7.6f804073fa444cb8p-4L : inexact-ok
+= expm1 downward ldbl-96-m68k 0x6.1b4d3p-4L : 0x7.6f804073fa444cbp-4L : inexact-ok
+= expm1 tonearest ldbl-96-m68k 0x6.1b4d3p-4L : 0x7.6f804073fa444cb8p-4L : inexact-ok
+= expm1 towardzero ldbl-96-m68k 0x6.1b4d3p-4L : 0x7.6f804073fa444cbp-4L : inexact-ok
+= expm1 upward ldbl-96-m68k 0x6.1b4d3p-4L : 0x7.6f804073fa444cb8p-4L : inexact-ok
+= expm1 downward ldbl-128 0x6.1b4d3p-4L : 0x7.6f804073fa444cb711aa5c815444p-4L : inexact-ok
+= expm1 tonearest ldbl-128 0x6.1b4d3p-4L : 0x7.6f804073fa444cb711aa5c815448p-4L : inexact-ok
+= expm1 towardzero ldbl-128 0x6.1b4d3p-4L : 0x7.6f804073fa444cb711aa5c815444p-4L : inexact-ok
+= expm1 upward ldbl-128 0x6.1b4d3p-4L : 0x7.6f804073fa444cb711aa5c815448p-4L : inexact-ok
+= expm1 downward ldbl-128ibm 0x6.1b4d3p-4L : 0x7.6f804073fa444cb711aa5c8154p-4L : inexact-ok
+= expm1 tonearest ldbl-128ibm 0x6.1b4d3p-4L : 0x7.6f804073fa444cb711aa5c8154p-4L : inexact-ok
+= expm1 towardzero ldbl-128ibm 0x6.1b4d3p-4L : 0x7.6f804073fa444cb711aa5c8154p-4L : inexact-ok
+= expm1 upward ldbl-128ibm 0x6.1b4d3p-4L : 0x7.6f804073fa444cb711aa5c8156p-4L : inexact-ok
+= expm1 downward dbl-64 0x6.1b4d318238d4cp-4 : 0x7.6f8042a9af784p-4 : inexact-ok
+= expm1 tonearest dbl-64 0x6.1b4d318238d4cp-4 : 0x7.6f8042a9af784p-4 : inexact-ok
+= expm1 towardzero dbl-64 0x6.1b4d318238d4cp-4 : 0x7.6f8042a9af784p-4 : inexact-ok
+= expm1 upward dbl-64 0x6.1b4d318238d4cp-4 : 0x7.6f8042a9af788p-4 : inexact-ok
+= expm1 downward ldbl-96-intel 0x6.1b4d318238d4cp-4L : 0x7.6f8042a9af7859c8p-4L : inexact-ok
+= expm1 tonearest ldbl-96-intel 0x6.1b4d318238d4cp-4L : 0x7.6f8042a9af7859dp-4L : inexact-ok
+= expm1 towardzero ldbl-96-intel 0x6.1b4d318238d4cp-4L : 0x7.6f8042a9af7859c8p-4L : inexact-ok
+= expm1 upward ldbl-96-intel 0x6.1b4d318238d4cp-4L : 0x7.6f8042a9af7859dp-4L : inexact-ok
+= expm1 downward ldbl-96-m68k 0x6.1b4d318238d4cp-4L : 0x7.6f8042a9af7859c8p-4L : inexact-ok
+= expm1 tonearest ldbl-96-m68k 0x6.1b4d318238d4cp-4L : 0x7.6f8042a9af7859dp-4L : inexact-ok
+= expm1 towardzero ldbl-96-m68k 0x6.1b4d318238d4cp-4L : 0x7.6f8042a9af7859c8p-4L : inexact-ok
+= expm1 upward ldbl-96-m68k 0x6.1b4d318238d4cp-4L : 0x7.6f8042a9af7859dp-4L : inexact-ok
+= expm1 downward ldbl-128 0x6.1b4d318238d4cp-4L : 0x7.6f8042a9af7859cfbcbdca8df28cp-4L : inexact-ok
+= expm1 tonearest ldbl-128 0x6.1b4d318238d4cp-4L : 0x7.6f8042a9af7859cfbcbdca8df28cp-4L : inexact-ok
+= expm1 towardzero ldbl-128 0x6.1b4d318238d4cp-4L : 0x7.6f8042a9af7859cfbcbdca8df28cp-4L : inexact-ok
+= expm1 upward ldbl-128 0x6.1b4d318238d4cp-4L : 0x7.6f8042a9af7859cfbcbdca8df29p-4L : inexact-ok
+= expm1 downward ldbl-128ibm 0x6.1b4d318238d4cp-4L : 0x7.6f8042a9af7859cfbcbdca8df2p-4L : inexact-ok
+= expm1 tonearest ldbl-128ibm 0x6.1b4d318238d4cp-4L : 0x7.6f8042a9af7859cfbcbdca8df2p-4L : inexact-ok
+= expm1 towardzero ldbl-128ibm 0x6.1b4d318238d4cp-4L : 0x7.6f8042a9af7859cfbcbdca8df2p-4L : inexact-ok
+= expm1 upward ldbl-128ibm 0x6.1b4d318238d4cp-4L : 0x7.6f8042a9af7859cfbcbdca8df4p-4L : inexact-ok
+= expm1 downward dbl-64 0x6.1b4d318238d48p-4 : 0x7.6f8042a9af77cp-4 : inexact-ok
+= expm1 tonearest dbl-64 0x6.1b4d318238d48p-4 : 0x7.6f8042a9af78p-4 : inexact-ok
+= expm1 towardzero dbl-64 0x6.1b4d318238d48p-4 : 0x7.6f8042a9af77cp-4 : inexact-ok
+= expm1 upward dbl-64 0x6.1b4d318238d48p-4 : 0x7.6f8042a9af78p-4 : inexact-ok
+= expm1 downward ldbl-96-intel 0x6.1b4d318238d48p-4L : 0x7.6f8042a9af77fc1p-4L : inexact-ok
+= expm1 tonearest ldbl-96-intel 0x6.1b4d318238d48p-4L : 0x7.6f8042a9af77fc1p-4L : inexact-ok
+= expm1 towardzero ldbl-96-intel 0x6.1b4d318238d48p-4L : 0x7.6f8042a9af77fc1p-4L : inexact-ok
+= expm1 upward ldbl-96-intel 0x6.1b4d318238d48p-4L : 0x7.6f8042a9af77fc18p-4L : inexact-ok
+= expm1 downward ldbl-96-m68k 0x6.1b4d318238d48p-4L : 0x7.6f8042a9af77fc1p-4L : inexact-ok
+= expm1 tonearest ldbl-96-m68k 0x6.1b4d318238d48p-4L : 0x7.6f8042a9af77fc1p-4L : inexact-ok
+= expm1 towardzero ldbl-96-m68k 0x6.1b4d318238d48p-4L : 0x7.6f8042a9af77fc1p-4L : inexact-ok
+= expm1 upward ldbl-96-m68k 0x6.1b4d318238d48p-4L : 0x7.6f8042a9af77fc18p-4L : inexact-ok
+= expm1 downward ldbl-128 0x6.1b4d318238d48p-4L : 0x7.6f8042a9af77fc11bbb323d011ep-4L : inexact-ok
+= expm1 tonearest ldbl-128 0x6.1b4d318238d48p-4L : 0x7.6f8042a9af77fc11bbb323d011ep-4L : inexact-ok
+= expm1 towardzero ldbl-128 0x6.1b4d318238d48p-4L : 0x7.6f8042a9af77fc11bbb323d011ep-4L : inexact-ok
+= expm1 upward ldbl-128 0x6.1b4d318238d48p-4L : 0x7.6f8042a9af77fc11bbb323d011e4p-4L : inexact-ok
+= expm1 downward ldbl-128ibm 0x6.1b4d318238d48p-4L : 0x7.6f8042a9af77fc11bbb323d01p-4L : inexact-ok
+= expm1 tonearest ldbl-128ibm 0x6.1b4d318238d48p-4L : 0x7.6f8042a9af77fc11bbb323d012p-4L : inexact-ok
+= expm1 towardzero ldbl-128ibm 0x6.1b4d318238d48p-4L : 0x7.6f8042a9af77fc11bbb323d01p-4L : inexact-ok
+= expm1 upward ldbl-128ibm 0x6.1b4d318238d48p-4L : 0x7.6f8042a9af77fc11bbb323d012p-4L : inexact-ok
+= expm1 downward ldbl-96-intel 0x6.1b4d318238d4a2a8p-4L : 0x7.6f8042a9af782edp-4L : inexact-ok
+= expm1 tonearest ldbl-96-intel 0x6.1b4d318238d4a2a8p-4L : 0x7.6f8042a9af782ed8p-4L : inexact-ok
+= expm1 towardzero ldbl-96-intel 0x6.1b4d318238d4a2a8p-4L : 0x7.6f8042a9af782edp-4L : inexact-ok
+= expm1 upward ldbl-96-intel 0x6.1b4d318238d4a2a8p-4L : 0x7.6f8042a9af782ed8p-4L : inexact-ok
+= expm1 downward ldbl-96-m68k 0x6.1b4d318238d4a2a8p-4L : 0x7.6f8042a9af782edp-4L : inexact-ok
+= expm1 tonearest ldbl-96-m68k 0x6.1b4d318238d4a2a8p-4L : 0x7.6f8042a9af782ed8p-4L : inexact-ok
+= expm1 towardzero ldbl-96-m68k 0x6.1b4d318238d4a2a8p-4L : 0x7.6f8042a9af782edp-4L : inexact-ok
+= expm1 upward ldbl-96-m68k 0x6.1b4d318238d4a2a8p-4L : 0x7.6f8042a9af782ed8p-4L : inexact-ok
+= expm1 downward ldbl-128 0x6.1b4d318238d4a2a8p-4L : 0x7.6f8042a9af782ed4bf03885aa378p-4L : inexact-ok
+= expm1 tonearest ldbl-128 0x6.1b4d318238d4a2a8p-4L : 0x7.6f8042a9af782ed4bf03885aa37cp-4L : inexact-ok
+= expm1 towardzero ldbl-128 0x6.1b4d318238d4a2a8p-4L : 0x7.6f8042a9af782ed4bf03885aa378p-4L : inexact-ok
+= expm1 upward ldbl-128 0x6.1b4d318238d4a2a8p-4L : 0x7.6f8042a9af782ed4bf03885aa37cp-4L : inexact-ok
+= expm1 downward ldbl-128ibm 0x6.1b4d318238d4a2a8p-4L : 0x7.6f8042a9af782ed4bf03885aa2p-4L : inexact-ok
+= expm1 tonearest ldbl-128ibm 0x6.1b4d318238d4a2a8p-4L : 0x7.6f8042a9af782ed4bf03885aa4p-4L : inexact-ok
+= expm1 towardzero ldbl-128ibm 0x6.1b4d318238d4a2a8p-4L : 0x7.6f8042a9af782ed4bf03885aa2p-4L : inexact-ok
+= expm1 upward ldbl-128ibm 0x6.1b4d318238d4a2a8p-4L : 0x7.6f8042a9af782ed4bf03885aa4p-4L : inexact-ok
 expm1 0x4.0000000000000028p-16384 missing-underflow
 = expm1 downward flt-32 0x8p-152f : 0x8p-152f : inexact-ok underflow underflow-ok errno-erange-ok
 = expm1 tonearest flt-32 0x8p-152f : 0x8p-152f : inexact-ok underflow underflow-ok errno-erange-ok
diff --git a/sysdeps/i386/fpu/libm-test-ulps b/sysdeps/i386/fpu/libm-test-ulps
index a418998625..76eaea4e7c 100644
--- a/sysdeps/i386/fpu/libm-test-ulps
+++ b/sysdeps/i386/fpu/libm-test-ulps
@@ -1332,32 +1332,32 @@ ildouble: 1
 ldouble: 1
 
 Function: "expm1":
-ildouble: 1
-ldouble: 1
+ildouble: 2
+ldouble: 2
 
 Function: "expm1_downward":
 double: 1
 float: 1
 idouble: 1
 ifloat: 1
-ildouble: 1
-ldouble: 1
+ildouble: 4
+ldouble: 4
 
 Function: "expm1_towardzero":
 double: 1
 float: 1
 idouble: 1
 ifloat: 1
-ildouble: 2
-ldouble: 2
+ildouble: 3
+ldouble: 3
 
 Function: "expm1_upward":
 double: 1
 float: 1
 idouble: 1
 ifloat: 1
-ildouble: 2
-ldouble: 2
+ildouble: 3
+ldouble: 3
 
 Function: "gamma":
 double: 1
diff --git a/sysdeps/x86_64/fpu/libm-test-ulps b/sysdeps/x86_64/fpu/libm-test-ulps
index 56752ca49c..488ff36b6a 100644
--- a/sysdeps/x86_64/fpu/libm-test-ulps
+++ b/sysdeps/x86_64/fpu/libm-test-ulps
@@ -1414,32 +1414,32 @@ double: 1
 float: 1
 idouble: 1
 ifloat: 1
-ildouble: 1
-ldouble: 1
+ildouble: 2
+ldouble: 2
 
 Function: "expm1_downward":
 double: 1
 float: 1
 idouble: 1
 ifloat: 1
-ildouble: 1
-ldouble: 1
+ildouble: 4
+ldouble: 4
 
 Function: "expm1_towardzero":
 double: 1
 float: 1
 idouble: 1
 ifloat: 1
-ildouble: 2
-ldouble: 2
+ildouble: 3
+ldouble: 3
 
 Function: "expm1_upward":
 double: 1
 float: 1
 idouble: 1
 ifloat: 1
-ildouble: 2
-ldouble: 2
+ildouble: 3
+ldouble: 3
 
 Function: "gamma":
 double: 1