]> git.ipfire.org Git - thirdparty/glibc.git/commitdiff
Add more tests of log2.
authorJoseph Myers <joseph@codesourcery.com>
Tue, 24 Mar 2015 23:06:28 +0000 (23:06 +0000)
committerJoseph Myers <joseph@codesourcery.com>
Tue, 24 Mar 2015 23:06:28 +0000 (23:06 +0000)
In testing for x86_64 on an AMD processor, I observed libm test
failures of the form:

testing long double (without inline functions)
Failure: Test: log2_downward (0x2.b7e151628aed4p+0)
Result:
 is:          1.44269504088896356633e+00   0xb.8aa3b295c17f67600000p-3
 should be:   1.44269504088896356622e+00   0xb.8aa3b295c17f67500000p-3
 difference:  1.08420217248550443400e-19   0x8.00000000000000000000p-66
 ulp       :  1.0000
 max.ulp   :  0.0000
Maximal error of `log2_downward'
 is      : 1 ulp
 accepted: 0 ulp

These issues arise because the maximum ulps when regenerating on one
processor are not the same as on another processor, so regeneration on
several processors may be needed when updating libm-test-ulps to avoid
failures for some users testing glibc - but such regeneration on
multiple processors is inconvenient.  Causes can be: on x86 and, for
x86_64, for long double, variation in results of x87 instructions for
transcendental operations between processors; on x86, variation in
compiler excess precision between compiler versions and
configurations; on any processor where the compiler may contract
expressions using fused multiply-add, variation in what contraction
occurs.

Although it's hard to be sure libm-test-ulps covers all ulps that may
be seen in any configuration for the given architecture, in practice
it helps simply to add wider test coverage to make it more likely
that, when testing on one processor, the ulps seen are the biggest
that can be seen for that function on that processor, and hopefully
they are also the biggest that can be seen for that function in other
configurations for that architecture.  Thus, this patch adds some
tests of log2 that increase the ulps I see on x86_64 on an Intel
processor, so that hopefully future from-scratch regenerations on that
processor will produce ulps big enough not to have errors from testing
on AMD processors.  These tests were found by randomly generating
inputs and seeing what produced ulps larger than those currently in
libm-test-ulps.  Of course such increases also improve the accuracy of
the empirical table of known ulps generated from libm-test-ulps files
that goes in the manual.

Tested for x86_64 and x86 and ulps updated accordingly.

* math/auto-libm-test-in: Add more tests of log2.
* math/auto-libm-test-out: Regenerated.
* sysdeps/i386/fpu/libm-test-ulps: Update.
* sysdeps/x86_64/fpu/libm-test-ulps: Likewise.

ChangeLog
math/auto-libm-test-in
math/auto-libm-test-out
sysdeps/i386/fpu/libm-test-ulps
sysdeps/x86_64/fpu/libm-test-ulps

index b0a17b0634d5b29b0ad64afb47469f905acf4178..fa79590929ce3825c01af66a5af1f5bf87061bd9 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,10 @@
+2015-03-24  Joseph Myers  <joseph@codesourcery.com>
+
+       * math/auto-libm-test-in: Add more tests of log2.
+       * math/auto-libm-test-out: Regenerated.
+       * sysdeps/i386/fpu/libm-test-ulps: Update.
+       * sysdeps/x86_64/fpu/libm-test-ulps: Likewise.
+
 2015-03-23  Roland McGrath  <roland@hack.frob.com>
 
        * libio/iofdopen.c: Move FD_FLAGS declaration into its first use,
index 4a9f9357648cb74cea295084c6166892eff4a0c4..91d2ae6f4192509abb4ea5d59c894ca4688e2d88 100644 (file)
@@ -1656,6 +1656,12 @@ log2 2.0
 log2 16.0
 log2 256.0
 log2 0.75
+log2 0x1.28d3b4p+0
+log2 0xe.d99dap-4
+log2 0x1.63d202d04392cp+0
+log2 0xf.d9ce0b1a50e08p-4
+log2 0x1.07465bdc7e41b52ep+0
+log2 0xf.4dfb4p-48
 log2 min
 log2 min_subnorm
 
index 223caf2c30b5ba947206bdf43631573633d030f7..8d3122907e531a195352246b0da1f7eb542501dd 100644 (file)
@@ -133788,6 +133788,324 @@ log2 0.75
 = log2 tonearest ldbl-128ibm 0xcp-4L : -0x6.a3fe5c6042978605ff4edf5f98p-4L : inexact-ok
 = log2 towardzero ldbl-128ibm 0xcp-4L : -0x6.a3fe5c6042978605ff4edf5f96p-4L : inexact-ok
 = log2 upward ldbl-128ibm 0xcp-4L : -0x6.a3fe5c6042978605ff4edf5f96p-4L : inexact-ok
+log2 0x1.28d3b4p+0
+= log2 downward flt-32 0x1.28d3b4p+0f : 0x3.6a6844p-4f : inexact-ok
+= log2 tonearest flt-32 0x1.28d3b4p+0f : 0x3.6a6848p-4f : inexact-ok
+= log2 towardzero flt-32 0x1.28d3b4p+0f : 0x3.6a6844p-4f : inexact-ok
+= log2 upward flt-32 0x1.28d3b4p+0f : 0x3.6a6848p-4f : inexact-ok
+= log2 downward dbl-64 0x1.28d3b4p+0 : 0x3.6a6846287159cp-4 : inexact-ok
+= log2 tonearest dbl-64 0x1.28d3b4p+0 : 0x3.6a6846287159cp-4 : inexact-ok
+= log2 towardzero dbl-64 0x1.28d3b4p+0 : 0x3.6a6846287159cp-4 : inexact-ok
+= log2 upward dbl-64 0x1.28d3b4p+0 : 0x3.6a6846287159ep-4 : inexact-ok
+= log2 downward ldbl-96-intel 0x1.28d3b4p+0L : 0x3.6a6846287159cebp-4L : inexact-ok
+= log2 tonearest ldbl-96-intel 0x1.28d3b4p+0L : 0x3.6a6846287159cebp-4L : inexact-ok
+= log2 towardzero ldbl-96-intel 0x1.28d3b4p+0L : 0x3.6a6846287159cebp-4L : inexact-ok
+= log2 upward ldbl-96-intel 0x1.28d3b4p+0L : 0x3.6a6846287159ceb4p-4L : inexact-ok
+= log2 downward ldbl-96-m68k 0x1.28d3b4p+0L : 0x3.6a6846287159cebp-4L : inexact-ok
+= log2 tonearest ldbl-96-m68k 0x1.28d3b4p+0L : 0x3.6a6846287159cebp-4L : inexact-ok
+= log2 towardzero ldbl-96-m68k 0x1.28d3b4p+0L : 0x3.6a6846287159cebp-4L : inexact-ok
+= log2 upward ldbl-96-m68k 0x1.28d3b4p+0L : 0x3.6a6846287159ceb4p-4L : inexact-ok
+= log2 downward ldbl-128 0x1.28d3b4p+0L : 0x3.6a6846287159ceb1f8d965deea72p-4L : inexact-ok
+= log2 tonearest ldbl-128 0x1.28d3b4p+0L : 0x3.6a6846287159ceb1f8d965deea72p-4L : inexact-ok
+= log2 towardzero ldbl-128 0x1.28d3b4p+0L : 0x3.6a6846287159ceb1f8d965deea72p-4L : inexact-ok
+= log2 upward ldbl-128 0x1.28d3b4p+0L : 0x3.6a6846287159ceb1f8d965deea74p-4L : inexact-ok
+= log2 downward ldbl-128ibm 0x1.28d3b4p+0L : 0x3.6a6846287159ceb1f8d965deeap-4L : inexact-ok
+= log2 tonearest ldbl-128ibm 0x1.28d3b4p+0L : 0x3.6a6846287159ceb1f8d965deeap-4L : inexact-ok
+= log2 towardzero ldbl-128ibm 0x1.28d3b4p+0L : 0x3.6a6846287159ceb1f8d965deeap-4L : inexact-ok
+= log2 upward ldbl-128ibm 0x1.28d3b4p+0L : 0x3.6a6846287159ceb1f8d965deebp-4L : inexact-ok
+log2 0xe.d99dap-4
+= log2 downward flt-32 0xe.d99dap-4f : -0x1.b8bdfp-4f : inexact-ok
+= log2 tonearest flt-32 0xe.d99dap-4f : -0x1.b8bdeep-4f : inexact-ok
+= log2 towardzero flt-32 0xe.d99dap-4f : -0x1.b8bdeep-4f : inexact-ok
+= log2 upward flt-32 0xe.d99dap-4f : -0x1.b8bdeep-4f : inexact-ok
+= log2 downward dbl-64 0xe.d99dap-4 : -0x1.b8bdee5bd4283p-4 : inexact-ok
+= log2 tonearest dbl-64 0xe.d99dap-4 : -0x1.b8bdee5bd4282p-4 : inexact-ok
+= log2 towardzero dbl-64 0xe.d99dap-4 : -0x1.b8bdee5bd4282p-4 : inexact-ok
+= log2 upward dbl-64 0xe.d99dap-4 : -0x1.b8bdee5bd4282p-4 : inexact-ok
+= log2 downward ldbl-96-intel 0xe.d99dap-4L : -0x1.b8bdee5bd428255p-4L : inexact-ok
+= log2 tonearest ldbl-96-intel 0xe.d99dap-4L : -0x1.b8bdee5bd428254ep-4L : inexact-ok
+= log2 towardzero ldbl-96-intel 0xe.d99dap-4L : -0x1.b8bdee5bd428254ep-4L : inexact-ok
+= log2 upward ldbl-96-intel 0xe.d99dap-4L : -0x1.b8bdee5bd428254ep-4L : inexact-ok
+= log2 downward ldbl-96-m68k 0xe.d99dap-4L : -0x1.b8bdee5bd428255p-4L : inexact-ok
+= log2 tonearest ldbl-96-m68k 0xe.d99dap-4L : -0x1.b8bdee5bd428254ep-4L : inexact-ok
+= log2 towardzero ldbl-96-m68k 0xe.d99dap-4L : -0x1.b8bdee5bd428254ep-4L : inexact-ok
+= log2 upward ldbl-96-m68k 0xe.d99dap-4L : -0x1.b8bdee5bd428254ep-4L : inexact-ok
+= log2 downward ldbl-128 0xe.d99dap-4L : -0x1.b8bdee5bd428254ebf7ead086211p-4L : inexact-ok
+= log2 tonearest ldbl-128 0xe.d99dap-4L : -0x1.b8bdee5bd428254ebf7ead086211p-4L : inexact-ok
+= log2 towardzero ldbl-128 0xe.d99dap-4L : -0x1.b8bdee5bd428254ebf7ead08621p-4L : inexact-ok
+= log2 upward ldbl-128 0xe.d99dap-4L : -0x1.b8bdee5bd428254ebf7ead08621p-4L : inexact-ok
+= log2 downward ldbl-128ibm 0xe.d99dap-4L : -0x1.b8bdee5bd428254ebf7ead08628p-4L : inexact-ok
+= log2 tonearest ldbl-128ibm 0xe.d99dap-4L : -0x1.b8bdee5bd428254ebf7ead0862p-4L : inexact-ok
+= log2 towardzero ldbl-128ibm 0xe.d99dap-4L : -0x1.b8bdee5bd428254ebf7ead0862p-4L : inexact-ok
+= log2 upward ldbl-128ibm 0xe.d99dap-4L : -0x1.b8bdee5bd428254ebf7ead0862p-4L : inexact-ok
+log2 0x1.63d202d04392cp+0
+= log2 downward flt-32 0x1.63d204p+0f : 0x7.999f28p-4f : inexact-ok
+= log2 tonearest flt-32 0x1.63d204p+0f : 0x7.999f28p-4f : inexact-ok
+= log2 towardzero flt-32 0x1.63d204p+0f : 0x7.999f28p-4f : inexact-ok
+= log2 upward flt-32 0x1.63d204p+0f : 0x7.999f3p-4f : inexact-ok
+= log2 downward dbl-64 0x1.63d204p+0 : 0x7.999f2a94857bp-4 : inexact-ok
+= log2 tonearest dbl-64 0x1.63d204p+0 : 0x7.999f2a94857b4p-4 : inexact-ok
+= log2 towardzero dbl-64 0x1.63d204p+0 : 0x7.999f2a94857bp-4 : inexact-ok
+= log2 upward dbl-64 0x1.63d204p+0 : 0x7.999f2a94857b4p-4 : inexact-ok
+= log2 downward ldbl-96-intel 0x1.63d204p+0L : 0x7.999f2a94857b22ep-4L : inexact-ok
+= log2 tonearest ldbl-96-intel 0x1.63d204p+0L : 0x7.999f2a94857b22ep-4L : inexact-ok
+= log2 towardzero ldbl-96-intel 0x1.63d204p+0L : 0x7.999f2a94857b22ep-4L : inexact-ok
+= log2 upward ldbl-96-intel 0x1.63d204p+0L : 0x7.999f2a94857b22e8p-4L : inexact-ok
+= log2 downward ldbl-96-m68k 0x1.63d204p+0L : 0x7.999f2a94857b22ep-4L : inexact-ok
+= log2 tonearest ldbl-96-m68k 0x1.63d204p+0L : 0x7.999f2a94857b22ep-4L : inexact-ok
+= log2 towardzero ldbl-96-m68k 0x1.63d204p+0L : 0x7.999f2a94857b22ep-4L : inexact-ok
+= log2 upward ldbl-96-m68k 0x1.63d204p+0L : 0x7.999f2a94857b22e8p-4L : inexact-ok
+= log2 downward ldbl-128 0x1.63d204p+0L : 0x7.999f2a94857b22e23de191021e94p-4L : inexact-ok
+= log2 tonearest ldbl-128 0x1.63d204p+0L : 0x7.999f2a94857b22e23de191021e94p-4L : inexact-ok
+= log2 towardzero ldbl-128 0x1.63d204p+0L : 0x7.999f2a94857b22e23de191021e94p-4L : inexact-ok
+= log2 upward ldbl-128 0x1.63d204p+0L : 0x7.999f2a94857b22e23de191021e98p-4L : inexact-ok
+= log2 downward ldbl-128ibm 0x1.63d204p+0L : 0x7.999f2a94857b22e23de191021ep-4L : inexact-ok
+= log2 tonearest ldbl-128ibm 0x1.63d204p+0L : 0x7.999f2a94857b22e23de191021ep-4L : inexact-ok
+= log2 towardzero ldbl-128ibm 0x1.63d204p+0L : 0x7.999f2a94857b22e23de191021ep-4L : inexact-ok
+= log2 upward ldbl-128ibm 0x1.63d204p+0L : 0x7.999f2a94857b22e23de191022p-4L : inexact-ok
+= log2 downward flt-32 0x1.63d202p+0f : 0x7.999f08p-4f : inexact-ok
+= log2 tonearest flt-32 0x1.63d202p+0f : 0x7.999f08p-4f : inexact-ok
+= log2 towardzero flt-32 0x1.63d202p+0f : 0x7.999f08p-4f : inexact-ok
+= log2 upward flt-32 0x1.63d202p+0f : 0x7.999f1p-4f : inexact-ok
+= log2 downward dbl-64 0x1.63d202p+0 : 0x7.999f095d7e15p-4 : inexact-ok
+= log2 tonearest dbl-64 0x1.63d202p+0 : 0x7.999f095d7e15p-4 : inexact-ok
+= log2 towardzero dbl-64 0x1.63d202p+0 : 0x7.999f095d7e15p-4 : inexact-ok
+= log2 upward dbl-64 0x1.63d202p+0 : 0x7.999f095d7e154p-4 : inexact-ok
+= log2 downward ldbl-96-intel 0x1.63d202p+0L : 0x7.999f095d7e150198p-4L : inexact-ok
+= log2 tonearest ldbl-96-intel 0x1.63d202p+0L : 0x7.999f095d7e150198p-4L : inexact-ok
+= log2 towardzero ldbl-96-intel 0x1.63d202p+0L : 0x7.999f095d7e150198p-4L : inexact-ok
+= log2 upward ldbl-96-intel 0x1.63d202p+0L : 0x7.999f095d7e1501ap-4L : inexact-ok
+= log2 downward ldbl-96-m68k 0x1.63d202p+0L : 0x7.999f095d7e150198p-4L : inexact-ok
+= log2 tonearest ldbl-96-m68k 0x1.63d202p+0L : 0x7.999f095d7e150198p-4L : inexact-ok
+= log2 towardzero ldbl-96-m68k 0x1.63d202p+0L : 0x7.999f095d7e150198p-4L : inexact-ok
+= log2 upward ldbl-96-m68k 0x1.63d202p+0L : 0x7.999f095d7e1501ap-4L : inexact-ok
+= log2 downward ldbl-128 0x1.63d202p+0L : 0x7.999f095d7e150199097308f7442p-4L : inexact-ok
+= log2 tonearest ldbl-128 0x1.63d202p+0L : 0x7.999f095d7e150199097308f7442p-4L : inexact-ok
+= log2 towardzero ldbl-128 0x1.63d202p+0L : 0x7.999f095d7e150199097308f7442p-4L : inexact-ok
+= log2 upward ldbl-128 0x1.63d202p+0L : 0x7.999f095d7e150199097308f74424p-4L : inexact-ok
+= log2 downward ldbl-128ibm 0x1.63d202p+0L : 0x7.999f095d7e150199097308f744p-4L : inexact-ok
+= log2 tonearest ldbl-128ibm 0x1.63d202p+0L : 0x7.999f095d7e150199097308f744p-4L : inexact-ok
+= log2 towardzero ldbl-128ibm 0x1.63d202p+0L : 0x7.999f095d7e150199097308f744p-4L : inexact-ok
+= log2 upward ldbl-128ibm 0x1.63d202p+0L : 0x7.999f095d7e150199097308f746p-4L : inexact-ok
+= log2 downward dbl-64 0x1.63d202d04392cp+0 : 0x7.999f16e03b54cp-4 : inexact-ok
+= log2 tonearest dbl-64 0x1.63d202d04392cp+0 : 0x7.999f16e03b55p-4 : inexact-ok
+= log2 towardzero dbl-64 0x1.63d202d04392cp+0 : 0x7.999f16e03b54cp-4 : inexact-ok
+= log2 upward dbl-64 0x1.63d202d04392cp+0 : 0x7.999f16e03b55p-4 : inexact-ok
+= log2 downward ldbl-96-intel 0x1.63d202d04392cp+0L : 0x7.999f16e03b54e0fp-4L : inexact-ok
+= log2 tonearest ldbl-96-intel 0x1.63d202d04392cp+0L : 0x7.999f16e03b54e0f8p-4L : inexact-ok
+= log2 towardzero ldbl-96-intel 0x1.63d202d04392cp+0L : 0x7.999f16e03b54e0fp-4L : inexact-ok
+= log2 upward ldbl-96-intel 0x1.63d202d04392cp+0L : 0x7.999f16e03b54e0f8p-4L : inexact-ok
+= log2 downward ldbl-96-m68k 0x1.63d202d04392cp+0L : 0x7.999f16e03b54e0fp-4L : inexact-ok
+= log2 tonearest ldbl-96-m68k 0x1.63d202d04392cp+0L : 0x7.999f16e03b54e0f8p-4L : inexact-ok
+= log2 towardzero ldbl-96-m68k 0x1.63d202d04392cp+0L : 0x7.999f16e03b54e0fp-4L : inexact-ok
+= log2 upward ldbl-96-m68k 0x1.63d202d04392cp+0L : 0x7.999f16e03b54e0f8p-4L : inexact-ok
+= log2 downward ldbl-128 0x1.63d202d04392cp+0L : 0x7.999f16e03b54e0f55354326ba2c4p-4L : inexact-ok
+= log2 tonearest ldbl-128 0x1.63d202d04392cp+0L : 0x7.999f16e03b54e0f55354326ba2c8p-4L : inexact-ok
+= log2 towardzero ldbl-128 0x1.63d202d04392cp+0L : 0x7.999f16e03b54e0f55354326ba2c4p-4L : inexact-ok
+= log2 upward ldbl-128 0x1.63d202d04392cp+0L : 0x7.999f16e03b54e0f55354326ba2c8p-4L : inexact-ok
+= log2 downward ldbl-128ibm 0x1.63d202d04392cp+0L : 0x7.999f16e03b54e0f55354326ba2p-4L : inexact-ok
+= log2 tonearest ldbl-128ibm 0x1.63d202d04392cp+0L : 0x7.999f16e03b54e0f55354326ba2p-4L : inexact-ok
+= log2 towardzero ldbl-128ibm 0x1.63d202d04392cp+0L : 0x7.999f16e03b54e0f55354326ba2p-4L : inexact-ok
+= log2 upward ldbl-128ibm 0x1.63d202d04392cp+0L : 0x7.999f16e03b54e0f55354326ba4p-4L : inexact-ok
+log2 0xf.d9ce0b1a50e08p-4
+= log2 downward flt-32 0xf.d9ce1p-4f : -0x3.75cc4p-8f : inexact-ok
+= log2 tonearest flt-32 0xf.d9ce1p-4f : -0x3.75cc4p-8f : inexact-ok
+= log2 towardzero flt-32 0xf.d9ce1p-4f : -0x3.75cc3cp-8f : inexact-ok
+= log2 upward flt-32 0xf.d9ce1p-4f : -0x3.75cc3cp-8f : inexact-ok
+= log2 downward dbl-64 0xf.d9ce1p-4 : -0x3.75cc3f2233d66p-8 : inexact-ok
+= log2 tonearest dbl-64 0xf.d9ce1p-4 : -0x3.75cc3f2233d66p-8 : inexact-ok
+= log2 towardzero dbl-64 0xf.d9ce1p-4 : -0x3.75cc3f2233d64p-8 : inexact-ok
+= log2 upward dbl-64 0xf.d9ce1p-4 : -0x3.75cc3f2233d64p-8 : inexact-ok
+= log2 downward ldbl-96-intel 0xf.d9ce1p-4L : -0x3.75cc3f2233d65c74p-8L : inexact-ok
+= log2 tonearest ldbl-96-intel 0xf.d9ce1p-4L : -0x3.75cc3f2233d65c7p-8L : inexact-ok
+= log2 towardzero ldbl-96-intel 0xf.d9ce1p-4L : -0x3.75cc3f2233d65c7p-8L : inexact-ok
+= log2 upward ldbl-96-intel 0xf.d9ce1p-4L : -0x3.75cc3f2233d65c7p-8L : inexact-ok
+= log2 downward ldbl-96-m68k 0xf.d9ce1p-4L : -0x3.75cc3f2233d65c74p-8L : inexact-ok
+= log2 tonearest ldbl-96-m68k 0xf.d9ce1p-4L : -0x3.75cc3f2233d65c7p-8L : inexact-ok
+= log2 towardzero ldbl-96-m68k 0xf.d9ce1p-4L : -0x3.75cc3f2233d65c7p-8L : inexact-ok
+= log2 upward ldbl-96-m68k 0xf.d9ce1p-4L : -0x3.75cc3f2233d65c7p-8L : inexact-ok
+= log2 downward ldbl-128 0xf.d9ce1p-4L : -0x3.75cc3f2233d65c71f491713f54cap-8L : inexact-ok
+= log2 tonearest ldbl-128 0xf.d9ce1p-4L : -0x3.75cc3f2233d65c71f491713f54c8p-8L : inexact-ok
+= log2 towardzero ldbl-128 0xf.d9ce1p-4L : -0x3.75cc3f2233d65c71f491713f54c8p-8L : inexact-ok
+= log2 upward ldbl-128 0xf.d9ce1p-4L : -0x3.75cc3f2233d65c71f491713f54c8p-8L : inexact-ok
+= log2 downward ldbl-128ibm 0xf.d9ce1p-4L : -0x3.75cc3f2233d65c71f491713f55p-8L : inexact-ok
+= log2 tonearest ldbl-128ibm 0xf.d9ce1p-4L : -0x3.75cc3f2233d65c71f491713f55p-8L : inexact-ok
+= log2 towardzero ldbl-128ibm 0xf.d9ce1p-4L : -0x3.75cc3f2233d65c71f491713f54p-8L : inexact-ok
+= log2 upward ldbl-128ibm 0xf.d9ce1p-4L : -0x3.75cc3f2233d65c71f491713f54p-8L : inexact-ok
+= log2 downward flt-32 0xf.d9cep-4f : -0x3.75cdb4p-8f : inexact-ok
+= log2 tonearest flt-32 0xf.d9cep-4f : -0x3.75cdb4p-8f : inexact-ok
+= log2 towardzero flt-32 0xf.d9cep-4f : -0x3.75cdbp-8f : inexact-ok
+= log2 upward flt-32 0xf.d9cep-4f : -0x3.75cdbp-8f : inexact-ok
+= log2 downward dbl-64 0xf.d9cep-4 : -0x3.75cdb3f0a0b66p-8 : inexact-ok
+= log2 tonearest dbl-64 0xf.d9cep-4 : -0x3.75cdb3f0a0b66p-8 : inexact-ok
+= log2 towardzero dbl-64 0xf.d9cep-4 : -0x3.75cdb3f0a0b64p-8 : inexact-ok
+= log2 upward dbl-64 0xf.d9cep-4 : -0x3.75cdb3f0a0b64p-8 : inexact-ok
+= log2 downward ldbl-96-intel 0xf.d9cep-4L : -0x3.75cdb3f0a0b65598p-8L : inexact-ok
+= log2 tonearest ldbl-96-intel 0xf.d9cep-4L : -0x3.75cdb3f0a0b65598p-8L : inexact-ok
+= log2 towardzero ldbl-96-intel 0xf.d9cep-4L : -0x3.75cdb3f0a0b65594p-8L : inexact-ok
+= log2 upward ldbl-96-intel 0xf.d9cep-4L : -0x3.75cdb3f0a0b65594p-8L : inexact-ok
+= log2 downward ldbl-96-m68k 0xf.d9cep-4L : -0x3.75cdb3f0a0b65598p-8L : inexact-ok
+= log2 tonearest ldbl-96-m68k 0xf.d9cep-4L : -0x3.75cdb3f0a0b65598p-8L : inexact-ok
+= log2 towardzero ldbl-96-m68k 0xf.d9cep-4L : -0x3.75cdb3f0a0b65594p-8L : inexact-ok
+= log2 upward ldbl-96-m68k 0xf.d9cep-4L : -0x3.75cdb3f0a0b65594p-8L : inexact-ok
+= log2 downward ldbl-128 0xf.d9cep-4L : -0x3.75cdb3f0a0b655972857a48ecdfap-8L : inexact-ok
+= log2 tonearest ldbl-128 0xf.d9cep-4L : -0x3.75cdb3f0a0b655972857a48ecdfap-8L : inexact-ok
+= log2 towardzero ldbl-128 0xf.d9cep-4L : -0x3.75cdb3f0a0b655972857a48ecdf8p-8L : inexact-ok
+= log2 upward ldbl-128 0xf.d9cep-4L : -0x3.75cdb3f0a0b655972857a48ecdf8p-8L : inexact-ok
+= log2 downward ldbl-128ibm 0xf.d9cep-4L : -0x3.75cdb3f0a0b655972857a48ecep-8L : inexact-ok
+= log2 tonearest ldbl-128ibm 0xf.d9cep-4L : -0x3.75cdb3f0a0b655972857a48ecep-8L : inexact-ok
+= log2 towardzero ldbl-128ibm 0xf.d9cep-4L : -0x3.75cdb3f0a0b655972857a48ecdp-8L : inexact-ok
+= log2 upward ldbl-128ibm 0xf.d9cep-4L : -0x3.75cdb3f0a0b655972857a48ecdp-8L : inexact-ok
+= log2 downward dbl-64 0xf.d9ce0b1a50e08p-4 : -0x3.75ccb13d89cc8p-8 : inexact-ok
+= log2 tonearest dbl-64 0xf.d9ce0b1a50e08p-4 : -0x3.75ccb13d89cc6p-8 : inexact-ok
+= log2 towardzero dbl-64 0xf.d9ce0b1a50e08p-4 : -0x3.75ccb13d89cc6p-8 : inexact-ok
+= log2 upward dbl-64 0xf.d9ce0b1a50e08p-4 : -0x3.75ccb13d89cc6p-8 : inexact-ok
+= log2 downward ldbl-96-intel 0xf.d9ce0b1a50e08p-4L : -0x3.75ccb13d89cc66fp-8L : inexact-ok
+= log2 tonearest ldbl-96-intel 0xf.d9ce0b1a50e08p-4L : -0x3.75ccb13d89cc66fp-8L : inexact-ok
+= log2 towardzero ldbl-96-intel 0xf.d9ce0b1a50e08p-4L : -0x3.75ccb13d89cc66ecp-8L : inexact-ok
+= log2 upward ldbl-96-intel 0xf.d9ce0b1a50e08p-4L : -0x3.75ccb13d89cc66ecp-8L : inexact-ok
+= log2 downward ldbl-96-m68k 0xf.d9ce0b1a50e08p-4L : -0x3.75ccb13d89cc66fp-8L : inexact-ok
+= log2 tonearest ldbl-96-m68k 0xf.d9ce0b1a50e08p-4L : -0x3.75ccb13d89cc66fp-8L : inexact-ok
+= log2 towardzero ldbl-96-m68k 0xf.d9ce0b1a50e08p-4L : -0x3.75ccb13d89cc66ecp-8L : inexact-ok
+= log2 upward ldbl-96-m68k 0xf.d9ce0b1a50e08p-4L : -0x3.75ccb13d89cc66ecp-8L : inexact-ok
+= log2 downward ldbl-128 0xf.d9ce0b1a50e08p-4L : -0x3.75ccb13d89cc66ee72a7e068c0eap-8L : inexact-ok
+= log2 tonearest ldbl-128 0xf.d9ce0b1a50e08p-4L : -0x3.75ccb13d89cc66ee72a7e068c0eap-8L : inexact-ok
+= log2 towardzero ldbl-128 0xf.d9ce0b1a50e08p-4L : -0x3.75ccb13d89cc66ee72a7e068c0e8p-8L : inexact-ok
+= log2 upward ldbl-128 0xf.d9ce0b1a50e08p-4L : -0x3.75ccb13d89cc66ee72a7e068c0e8p-8L : inexact-ok
+= log2 downward ldbl-128ibm 0xf.d9ce0b1a50e08p-4L : -0x3.75ccb13d89cc66ee72a7e068c1p-8L : inexact-ok
+= log2 tonearest ldbl-128ibm 0xf.d9ce0b1a50e08p-4L : -0x3.75ccb13d89cc66ee72a7e068c1p-8L : inexact-ok
+= log2 towardzero ldbl-128ibm 0xf.d9ce0b1a50e08p-4L : -0x3.75ccb13d89cc66ee72a7e068cp-8L : inexact-ok
+= log2 upward ldbl-128ibm 0xf.d9ce0b1a50e08p-4L : -0x3.75ccb13d89cc66ee72a7e068cp-8L : inexact-ok
+log2 0x1.07465bdc7e41b52ep+0
+= log2 downward flt-32 0x1.07465cp+0f : 0xa.59594p-8f : inexact-ok
+= log2 tonearest flt-32 0x1.07465cp+0f : 0xa.59594p-8f : inexact-ok
+= log2 towardzero flt-32 0x1.07465cp+0f : 0xa.59594p-8f : inexact-ok
+= log2 upward flt-32 0x1.07465cp+0f : 0xa.59595p-8f : inexact-ok
+= log2 downward dbl-64 0x1.07465cp+0 : 0xa.5959448ade0b8p-8 : inexact-ok
+= log2 tonearest dbl-64 0x1.07465cp+0 : 0xa.5959448ade0cp-8 : inexact-ok
+= log2 towardzero dbl-64 0x1.07465cp+0 : 0xa.5959448ade0b8p-8 : inexact-ok
+= log2 upward dbl-64 0x1.07465cp+0 : 0xa.5959448ade0cp-8 : inexact-ok
+= log2 downward ldbl-96-intel 0x1.07465cp+0L : 0xa.5959448ade0bdcbp-8L : inexact-ok
+= log2 tonearest ldbl-96-intel 0x1.07465cp+0L : 0xa.5959448ade0bdcbp-8L : inexact-ok
+= log2 towardzero ldbl-96-intel 0x1.07465cp+0L : 0xa.5959448ade0bdcbp-8L : inexact-ok
+= log2 upward ldbl-96-intel 0x1.07465cp+0L : 0xa.5959448ade0bdccp-8L : inexact-ok
+= log2 downward ldbl-96-m68k 0x1.07465cp+0L : 0xa.5959448ade0bdcbp-8L : inexact-ok
+= log2 tonearest ldbl-96-m68k 0x1.07465cp+0L : 0xa.5959448ade0bdcbp-8L : inexact-ok
+= log2 towardzero ldbl-96-m68k 0x1.07465cp+0L : 0xa.5959448ade0bdcbp-8L : inexact-ok
+= log2 upward ldbl-96-m68k 0x1.07465cp+0L : 0xa.5959448ade0bdccp-8L : inexact-ok
+= log2 downward ldbl-128 0x1.07465cp+0L : 0xa.5959448ade0bdcb61198f8dd2668p-8L : inexact-ok
+= log2 tonearest ldbl-128 0x1.07465cp+0L : 0xa.5959448ade0bdcb61198f8dd2668p-8L : inexact-ok
+= log2 towardzero ldbl-128 0x1.07465cp+0L : 0xa.5959448ade0bdcb61198f8dd2668p-8L : inexact-ok
+= log2 upward ldbl-128 0x1.07465cp+0L : 0xa.5959448ade0bdcb61198f8dd267p-8L : inexact-ok
+= log2 downward ldbl-128ibm 0x1.07465cp+0L : 0xa.5959448ade0bdcb61198f8dd24p-8L : inexact-ok
+= log2 tonearest ldbl-128ibm 0x1.07465cp+0L : 0xa.5959448ade0bdcb61198f8dd28p-8L : inexact-ok
+= log2 towardzero ldbl-128ibm 0x1.07465cp+0L : 0xa.5959448ade0bdcb61198f8dd24p-8L : inexact-ok
+= log2 upward ldbl-128ibm 0x1.07465cp+0L : 0xa.5959448ade0bdcb61198f8dd28p-8L : inexact-ok
+= log2 downward flt-32 0x1.07465ap+0f : 0xa.59567p-8f : inexact-ok
+= log2 tonearest flt-32 0x1.07465ap+0f : 0xa.59567p-8f : inexact-ok
+= log2 towardzero flt-32 0x1.07465ap+0f : 0xa.59567p-8f : inexact-ok
+= log2 upward flt-32 0x1.07465ap+0f : 0xa.59568p-8f : inexact-ok
+= log2 downward dbl-64 0x1.07465ap+0 : 0xa.5956764b14a98p-8 : inexact-ok
+= log2 tonearest dbl-64 0x1.07465ap+0 : 0xa.5956764b14aap-8 : inexact-ok
+= log2 towardzero dbl-64 0x1.07465ap+0 : 0xa.5956764b14a98p-8 : inexact-ok
+= log2 upward dbl-64 0x1.07465ap+0 : 0xa.5956764b14aap-8 : inexact-ok
+= log2 downward ldbl-96-intel 0x1.07465ap+0L : 0xa.5956764b14a9d7dp-8L : inexact-ok
+= log2 tonearest ldbl-96-intel 0x1.07465ap+0L : 0xa.5956764b14a9d7ep-8L : inexact-ok
+= log2 towardzero ldbl-96-intel 0x1.07465ap+0L : 0xa.5956764b14a9d7dp-8L : inexact-ok
+= log2 upward ldbl-96-intel 0x1.07465ap+0L : 0xa.5956764b14a9d7ep-8L : inexact-ok
+= log2 downward ldbl-96-m68k 0x1.07465ap+0L : 0xa.5956764b14a9d7dp-8L : inexact-ok
+= log2 tonearest ldbl-96-m68k 0x1.07465ap+0L : 0xa.5956764b14a9d7ep-8L : inexact-ok
+= log2 towardzero ldbl-96-m68k 0x1.07465ap+0L : 0xa.5956764b14a9d7dp-8L : inexact-ok
+= log2 upward ldbl-96-m68k 0x1.07465ap+0L : 0xa.5956764b14a9d7ep-8L : inexact-ok
+= log2 downward ldbl-128 0x1.07465ap+0L : 0xa.5956764b14a9d7da921863b84ba8p-8L : inexact-ok
+= log2 tonearest ldbl-128 0x1.07465ap+0L : 0xa.5956764b14a9d7da921863b84bbp-8L : inexact-ok
+= log2 towardzero ldbl-128 0x1.07465ap+0L : 0xa.5956764b14a9d7da921863b84ba8p-8L : inexact-ok
+= log2 upward ldbl-128 0x1.07465ap+0L : 0xa.5956764b14a9d7da921863b84bbp-8L : inexact-ok
+= log2 downward ldbl-128ibm 0x1.07465ap+0L : 0xa.5956764b14a9d7da921863b848p-8L : inexact-ok
+= log2 tonearest ldbl-128ibm 0x1.07465ap+0L : 0xa.5956764b14a9d7da921863b84cp-8L : inexact-ok
+= log2 towardzero ldbl-128ibm 0x1.07465ap+0L : 0xa.5956764b14a9d7da921863b848p-8L : inexact-ok
+= log2 upward ldbl-128ibm 0x1.07465ap+0L : 0xa.5956764b14a9d7da921863b84cp-8L : inexact-ok
+= log2 downward dbl-64 0x1.07465bdc7e41cp+0 : 0xa.595912bb7fffp-8 : inexact-ok
+= log2 tonearest dbl-64 0x1.07465bdc7e41cp+0 : 0xa.595912bb7fffp-8 : inexact-ok
+= log2 towardzero dbl-64 0x1.07465bdc7e41cp+0 : 0xa.595912bb7fffp-8 : inexact-ok
+= log2 upward dbl-64 0x1.07465bdc7e41cp+0 : 0xa.595912bb7fff8p-8 : inexact-ok
+= log2 downward ldbl-96-intel 0x1.07465bdc7e41cp+0L : 0xa.595912bb7fff0bap-8L : inexact-ok
+= log2 tonearest ldbl-96-intel 0x1.07465bdc7e41cp+0L : 0xa.595912bb7fff0bap-8L : inexact-ok
+= log2 towardzero ldbl-96-intel 0x1.07465bdc7e41cp+0L : 0xa.595912bb7fff0bap-8L : inexact-ok
+= log2 upward ldbl-96-intel 0x1.07465bdc7e41cp+0L : 0xa.595912bb7fff0bbp-8L : inexact-ok
+= log2 downward ldbl-96-m68k 0x1.07465bdc7e41cp+0L : 0xa.595912bb7fff0bap-8L : inexact-ok
+= log2 tonearest ldbl-96-m68k 0x1.07465bdc7e41cp+0L : 0xa.595912bb7fff0bap-8L : inexact-ok
+= log2 towardzero ldbl-96-m68k 0x1.07465bdc7e41cp+0L : 0xa.595912bb7fff0bap-8L : inexact-ok
+= log2 upward ldbl-96-m68k 0x1.07465bdc7e41cp+0L : 0xa.595912bb7fff0bbp-8L : inexact-ok
+= log2 downward ldbl-128 0x1.07465bdc7e41cp+0L : 0xa.595912bb7fff0ba2d9d999b5e91p-8L : inexact-ok
+= log2 tonearest ldbl-128 0x1.07465bdc7e41cp+0L : 0xa.595912bb7fff0ba2d9d999b5e918p-8L : inexact-ok
+= log2 towardzero ldbl-128 0x1.07465bdc7e41cp+0L : 0xa.595912bb7fff0ba2d9d999b5e91p-8L : inexact-ok
+= log2 upward ldbl-128 0x1.07465bdc7e41cp+0L : 0xa.595912bb7fff0ba2d9d999b5e918p-8L : inexact-ok
+= log2 downward ldbl-128ibm 0x1.07465bdc7e41cp+0L : 0xa.595912bb7fff0ba2d9d999b5e8p-8L : inexact-ok
+= log2 tonearest ldbl-128ibm 0x1.07465bdc7e41cp+0L : 0xa.595912bb7fff0ba2d9d999b5e8p-8L : inexact-ok
+= log2 towardzero ldbl-128ibm 0x1.07465bdc7e41cp+0L : 0xa.595912bb7fff0ba2d9d999b5e8p-8L : inexact-ok
+= log2 upward ldbl-128ibm 0x1.07465bdc7e41cp+0L : 0xa.595912bb7fff0ba2d9d999b5ecp-8L : inexact-ok
+= log2 downward dbl-64 0x1.07465bdc7e41bp+0 : 0xa.595912bb7fe88p-8 : inexact-ok
+= log2 tonearest dbl-64 0x1.07465bdc7e41bp+0 : 0xa.595912bb7fe88p-8 : inexact-ok
+= log2 towardzero dbl-64 0x1.07465bdc7e41bp+0 : 0xa.595912bb7fe88p-8 : inexact-ok
+= log2 upward dbl-64 0x1.07465bdc7e41bp+0 : 0xa.595912bb7fe9p-8 : inexact-ok
+= log2 downward ldbl-96-intel 0x1.07465bdc7e41bp+0L : 0xa.595912bb7fe899ap-8L : inexact-ok
+= log2 tonearest ldbl-96-intel 0x1.07465bdc7e41bp+0L : 0xa.595912bb7fe899ap-8L : inexact-ok
+= log2 towardzero ldbl-96-intel 0x1.07465bdc7e41bp+0L : 0xa.595912bb7fe899ap-8L : inexact-ok
+= log2 upward ldbl-96-intel 0x1.07465bdc7e41bp+0L : 0xa.595912bb7fe899bp-8L : inexact-ok
+= log2 downward ldbl-96-m68k 0x1.07465bdc7e41bp+0L : 0xa.595912bb7fe899ap-8L : inexact-ok
+= log2 tonearest ldbl-96-m68k 0x1.07465bdc7e41bp+0L : 0xa.595912bb7fe899ap-8L : inexact-ok
+= log2 towardzero ldbl-96-m68k 0x1.07465bdc7e41bp+0L : 0xa.595912bb7fe899ap-8L : inexact-ok
+= log2 upward ldbl-96-m68k 0x1.07465bdc7e41bp+0L : 0xa.595912bb7fe899bp-8L : inexact-ok
+= log2 downward ldbl-128 0x1.07465bdc7e41bp+0L : 0xa.595912bb7fe899a4a195bab6756p-8L : inexact-ok
+= log2 tonearest ldbl-128 0x1.07465bdc7e41bp+0L : 0xa.595912bb7fe899a4a195bab67568p-8L : inexact-ok
+= log2 towardzero ldbl-128 0x1.07465bdc7e41bp+0L : 0xa.595912bb7fe899a4a195bab6756p-8L : inexact-ok
+= log2 upward ldbl-128 0x1.07465bdc7e41bp+0L : 0xa.595912bb7fe899a4a195bab67568p-8L : inexact-ok
+= log2 downward ldbl-128ibm 0x1.07465bdc7e41bp+0L : 0xa.595912bb7fe899a4a195bab674p-8L : inexact-ok
+= log2 tonearest ldbl-128ibm 0x1.07465bdc7e41bp+0L : 0xa.595912bb7fe899a4a195bab674p-8L : inexact-ok
+= log2 towardzero ldbl-128ibm 0x1.07465bdc7e41bp+0L : 0xa.595912bb7fe899a4a195bab674p-8L : inexact-ok
+= log2 upward ldbl-128ibm 0x1.07465bdc7e41bp+0L : 0xa.595912bb7fe899a4a195bab678p-8L : inexact-ok
+= log2 downward ldbl-96-intel 0x1.07465bdc7e41b52ep+0L : 0xa.595912bb7fefddcp-8L : inexact-ok
+= log2 tonearest ldbl-96-intel 0x1.07465bdc7e41b52ep+0L : 0xa.595912bb7fefdddp-8L : inexact-ok
+= log2 towardzero ldbl-96-intel 0x1.07465bdc7e41b52ep+0L : 0xa.595912bb7fefddcp-8L : inexact-ok
+= log2 upward ldbl-96-intel 0x1.07465bdc7e41b52ep+0L : 0xa.595912bb7fefdddp-8L : inexact-ok
+= log2 downward ldbl-96-m68k 0x1.07465bdc7e41b52ep+0L : 0xa.595912bb7fefddcp-8L : inexact-ok
+= log2 tonearest ldbl-96-m68k 0x1.07465bdc7e41b52ep+0L : 0xa.595912bb7fefdddp-8L : inexact-ok
+= log2 towardzero ldbl-96-m68k 0x1.07465bdc7e41b52ep+0L : 0xa.595912bb7fefddcp-8L : inexact-ok
+= log2 upward ldbl-96-m68k 0x1.07465bdc7e41b52ep+0L : 0xa.595912bb7fefdddp-8L : inexact-ok
+= log2 downward ldbl-128 0x1.07465bdc7e41b52ep+0L : 0xa.595912bb7fefddcbce0cb3878e3p-8L : inexact-ok
+= log2 tonearest ldbl-128 0x1.07465bdc7e41b52ep+0L : 0xa.595912bb7fefddcbce0cb3878e3p-8L : inexact-ok
+= log2 towardzero ldbl-128 0x1.07465bdc7e41b52ep+0L : 0xa.595912bb7fefddcbce0cb3878e3p-8L : inexact-ok
+= log2 upward ldbl-128 0x1.07465bdc7e41b52ep+0L : 0xa.595912bb7fefddcbce0cb3878e38p-8L : inexact-ok
+= log2 downward ldbl-128ibm 0x1.07465bdc7e41b52ep+0L : 0xa.595912bb7fefddcbce0cb3878cp-8L : inexact-ok
+= log2 tonearest ldbl-128ibm 0x1.07465bdc7e41b52ep+0L : 0xa.595912bb7fefddcbce0cb3879p-8L : inexact-ok
+= log2 towardzero ldbl-128ibm 0x1.07465bdc7e41b52ep+0L : 0xa.595912bb7fefddcbce0cb3878cp-8L : inexact-ok
+= log2 upward ldbl-128ibm 0x1.07465bdc7e41b52ep+0L : 0xa.595912bb7fefddcbce0cb3879p-8L : inexact-ok
+log2 0xf.4dfb4p-48
+= log2 downward flt-32 0xf.4dfb4p-48f : -0x2.c10694p+4f : inexact-ok
+= log2 tonearest flt-32 0xf.4dfb4p-48f : -0x2.c10694p+4f : inexact-ok
+= log2 towardzero flt-32 0xf.4dfb4p-48f : -0x2.c1069p+4f : inexact-ok
+= log2 upward flt-32 0xf.4dfb4p-48f : -0x2.c1069p+4f : inexact-ok
+= log2 downward dbl-64 0xf.4dfb4p-48 : -0x2.c106931f2bfd2p+4 : inexact-ok
+= log2 tonearest dbl-64 0xf.4dfb4p-48 : -0x2.c106931f2bfdp+4 : inexact-ok
+= log2 towardzero dbl-64 0xf.4dfb4p-48 : -0x2.c106931f2bfdp+4 : inexact-ok
+= log2 upward dbl-64 0xf.4dfb4p-48 : -0x2.c106931f2bfdp+4 : inexact-ok
+= log2 downward ldbl-96-intel 0xf.4dfb4p-48L : -0x2.c106931f2bfd0af8p+4L : inexact-ok
+= log2 tonearest ldbl-96-intel 0xf.4dfb4p-48L : -0x2.c106931f2bfd0af4p+4L : inexact-ok
+= log2 towardzero ldbl-96-intel 0xf.4dfb4p-48L : -0x2.c106931f2bfd0af4p+4L : inexact-ok
+= log2 upward ldbl-96-intel 0xf.4dfb4p-48L : -0x2.c106931f2bfd0af4p+4L : inexact-ok
+= log2 downward ldbl-96-m68k 0xf.4dfb4p-48L : -0x2.c106931f2bfd0af8p+4L : inexact-ok
+= log2 tonearest ldbl-96-m68k 0xf.4dfb4p-48L : -0x2.c106931f2bfd0af4p+4L : inexact-ok
+= log2 towardzero ldbl-96-m68k 0xf.4dfb4p-48L : -0x2.c106931f2bfd0af4p+4L : inexact-ok
+= log2 upward ldbl-96-m68k 0xf.4dfb4p-48L : -0x2.c106931f2bfd0af4p+4L : inexact-ok
+= log2 downward ldbl-128 0xf.4dfb4p-48L : -0x2.c106931f2bfd0af427fc474396b2p+4L : inexact-ok
+= log2 tonearest ldbl-128 0xf.4dfb4p-48L : -0x2.c106931f2bfd0af427fc474396bp+4L : inexact-ok
+= log2 towardzero ldbl-128 0xf.4dfb4p-48L : -0x2.c106931f2bfd0af427fc474396bp+4L : inexact-ok
+= log2 upward ldbl-128 0xf.4dfb4p-48L : -0x2.c106931f2bfd0af427fc474396bp+4L : inexact-ok
+= log2 downward ldbl-128ibm 0xf.4dfb4p-48L : -0x2.c106931f2bfd0af427fc474397p+4L : inexact-ok
+= log2 tonearest ldbl-128ibm 0xf.4dfb4p-48L : -0x2.c106931f2bfd0af427fc474397p+4L : inexact-ok
+= log2 towardzero ldbl-128ibm 0xf.4dfb4p-48L : -0x2.c106931f2bfd0af427fc474396p+4L : inexact-ok
+= log2 upward ldbl-128ibm 0xf.4dfb4p-48L : -0x2.c106931f2bfd0af427fc474396p+4L : inexact-ok
 log2 min
 = log2 downward flt-32 0x4p-128f : -0x7.ep+4f : inexact-ok
 = log2 tonearest flt-32 0x4p-128f : -0x7.ep+4f : inexact-ok
index 302ea4c2b90dacc0adc7b815c2d716f8206c78c9..e03dbaeeaed4aa1499da0363ad3d3d0148ff85dd 100644 (file)
@@ -1651,6 +1651,14 @@ ifloat: 1
 ildouble: 1
 ldouble: 1
 
+Function: "log2":
+ildouble: 1
+ldouble: 1
+
+Function: "log2_downward":
+ildouble: 1
+ldouble: 1
+
 Function: "log2_towardzero":
 double: 1
 float: 1
index 5cfb73f9002f194eec0fb8ba4951d16eaa82e5cf..39dfff8e1ea1a79f9d84e58cdf5650c8a0f93b41 100644 (file)
@@ -1735,24 +1735,34 @@ ifloat: 1
 ildouble: 1
 ldouble: 1
 
+Function: "log2":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
+
 Function: "log2_downward":
-double: 2
-float: 2
-idouble: 2
-ifloat: 2
+double: 3
+float: 3
+idouble: 3
+ifloat: 3
+ildouble: 1
+ldouble: 1
 
 Function: "log2_towardzero":
 double: 1
-float: 1
+float: 2
 idouble: 1
-ifloat: 1
+ifloat: 2
 ildouble: 1
 ldouble: 1
 
 Function: "log2_upward":
-double: 2
+double: 3
 float: 2
-idouble: 2
+idouble: 3
 ifloat: 2
 ildouble: 1
 ldouble: 1