mirror of
https://sourceware.org/git/glibc.git
synced 2024-11-23 17:53:37 +08:00
Fix fma spurious underflows (bug 18824).
Various fma implementations have logic that, when computing fma (x, y, z) where z is large (so care needs taking to avoid internal overflow) but x * y is small, scale x * y up instead of down to avoid internal underflows resulting from scaling down. (In these cases, x * y is small enough that only its sign actually matters rather than the exact value.) The threshold for scaling up instead of down was correct for "if the unscaled values were multiplied, the low part of the multiplication could underflow", and the scaling was sufficient to ensure that the low part of the multiplication did not underflow (given that cases of very small x * y - less than half the least subnormal - were previously dealt with). However, the choice in the functions wasn't between scaling up or no scaling, but between scaling up and scaling down (scaling down actually being needed when x * y isn't so small compared to z and so the exact value does matter). Thus a larger threshold is needed to ensure that scaling down doesn't produce values the multiplication of whose low parts underflows. This patch increases the thresholds accordingly. Tested for x86_64, x86 and mips64 (with the MIPS version of s_fmal.c removed so that the ldbl-128 version gets tested instead of the soft-fp one). [BZ #18824] * sysdeps/ieee754/dbl-64/s_fma.c (__fma): Increase threshold for scaling x * y up instead of down. * sysdeps/ieee754/ldbl-128/s_fmal.c (__fmal): Likewise. * sysdeps/ieee754/ldbl-96/s_fmal.c (__fmal): Likewise. * math/auto-libm-test-in: Add more tests of fma. * math/auto-libm-test-out: Regenerated.
This commit is contained in:
parent
db7f8c8fe0
commit
739babd775
10
ChangeLog
10
ChangeLog
@ -1,3 +1,13 @@
|
||||
2015-08-14 Joseph Myers <joseph@codesourcery.com>
|
||||
|
||||
[BZ #18824]
|
||||
* sysdeps/ieee754/dbl-64/s_fma.c (__fma): Increase threshold for
|
||||
scaling x * y up instead of down.
|
||||
* sysdeps/ieee754/ldbl-128/s_fmal.c (__fmal): Likewise.
|
||||
* sysdeps/ieee754/ldbl-96/s_fmal.c (__fmal): Likewise.
|
||||
* math/auto-libm-test-in: Add more tests of fma.
|
||||
* math/auto-libm-test-out: Regenerated.
|
||||
|
||||
2015-08-14 Paul Pluzhnikov <ppluzhnikov@google.com>
|
||||
|
||||
* sysdeps/x86_64/fpu/libm-test-ulps: Regenerated.
|
||||
|
2
NEWS
2
NEWS
@ -10,7 +10,7 @@ Version 2.23
|
||||
* The following bugs are resolved with this release:
|
||||
|
||||
16517, 16519, 16520, 16734, 17905, 18086, 18265, 18480, 18525, 18618,
|
||||
18647, 18661, 18674, 18778, 18781, 18787, 18789, 18790, 18820.
|
||||
18647, 18661, 18674, 18778, 18781, 18787, 18789, 18790, 18820, 18824.
|
||||
|
||||
|
||||
Version 2.22
|
||||
|
@ -1794,6 +1794,24 @@ fma 0x1.0000000000000000000000000001p-16382 -0x1.0000000000000000000000000001p-6
|
||||
fma 0x1.0000000000000000000000000001p-16382 0x1.0000000000000000000000000001p-66 -0x1p16319
|
||||
fma 0x1.0000000000000000000000000001p-16382 -0x1.0000000000000000000000000001p-66 -0x1p16319
|
||||
|
||||
# Bug 6801: errno setting may be missing.
|
||||
fma 0x1.fffffep-126 0x1.fffffep25 0x1.fffffep127 missing-errno
|
||||
fma 0x1.fffffep-126 -0x1.fffffep25 0x1.fffffep127
|
||||
fma 0x1.fffffep-126 0x1.fffffep25 -0x1.fffffep127
|
||||
fma 0x1.fffffep-126 -0x1.fffffep25 -0x1.fffffep127 missing-errno
|
||||
fma 0x1.fffffffffffffp-1022 0x1.fffffffffffffp54 0x1.fffffffffffffp1023 missing-errno
|
||||
fma 0x1.fffffffffffffp-1022 -0x1.fffffffffffffp54 0x1.fffffffffffffp1023
|
||||
fma 0x1.fffffffffffffp-1022 0x1.fffffffffffffp54 -0x1.fffffffffffffp1023
|
||||
fma 0x1.fffffffffffffp-1022 -0x1.fffffffffffffp54 -0x1.fffffffffffffp1023 missing-errno
|
||||
fma 0x1.fffffffffffffffep-16382 0x1.fffffffffffffffep65 0x1.fffffffffffffffep16383 missing-errno
|
||||
fma 0x1.fffffffffffffffep-16382 -0x1.fffffffffffffffep65 0x1.fffffffffffffffep16383
|
||||
fma 0x1.fffffffffffffffep-16382 0x1.fffffffffffffffep65 -0x1.fffffffffffffffep16383
|
||||
fma 0x1.fffffffffffffffep-16382 -0x1.fffffffffffffffep65 -0x1.fffffffffffffffep16383 missing-errno
|
||||
fma 0x1.ffffffffffffffffffffffffffffp-16382 0x1.ffffffffffffffffffffffffffffp114 0x1.ffffffffffffffffffffffffffffp16383 missing-errno
|
||||
fma 0x1.ffffffffffffffffffffffffffffp-16382 -0x1.ffffffffffffffffffffffffffffp114 0x1.ffffffffffffffffffffffffffffp16383
|
||||
fma 0x1.ffffffffffffffffffffffffffffp-16382 0x1.ffffffffffffffffffffffffffffp114 -0x1.ffffffffffffffffffffffffffffp16383
|
||||
fma 0x1.ffffffffffffffffffffffffffffp-16382 -0x1.ffffffffffffffffffffffffffffp114 -0x1.ffffffffffffffffffffffffffffp16383 missing-errno
|
||||
|
||||
hypot 0 0
|
||||
hypot 0 -0
|
||||
hypot -0 0
|
||||
|
@ -132191,6 +132191,262 @@ fma 0x1.0000000000000000000000000001p-16382 -0x1.0000000000000000000000000001p-6
|
||||
= fma tonearest ldbl-128 0x4.0000000000000000000000000004p-16384L -0x4.0000000000000000000000000004p-68L -0x8p+16316L : -0x8p+16316L : inexact
|
||||
= fma towardzero ldbl-128 0x4.0000000000000000000000000004p-16384L -0x4.0000000000000000000000000004p-68L -0x8p+16316L : -0x8p+16316L : inexact
|
||||
= fma upward ldbl-128 0x4.0000000000000000000000000004p-16384L -0x4.0000000000000000000000000004p-68L -0x8p+16316L : -0x8p+16316L : inexact
|
||||
fma 0x1.fffffep-126 0x1.fffffep25 0x1.fffffep127 missing-errno
|
||||
= fma downward flt-32 0x7.fffff8p-128f 0x3.fffffcp+24f 0xf.fffffp+124f : 0xf.fffffp+124f : inexact
|
||||
= fma tonearest flt-32 0x7.fffff8p-128f 0x3.fffffcp+24f 0xf.fffffp+124f : 0xf.fffffp+124f : inexact
|
||||
= fma towardzero flt-32 0x7.fffff8p-128f 0x3.fffffcp+24f 0xf.fffffp+124f : 0xf.fffffp+124f : inexact
|
||||
= fma upward flt-32 0x7.fffff8p-128f 0x3.fffffcp+24f 0xf.fffffp+124f : plus_infty : inexact overflow errno-erange errno-erange-ok
|
||||
= fma downward dbl-64 0x7.fffff8p-128 0x3.fffffcp+24 0xf.fffffp+124 : 0xf.fffffp+124 : inexact
|
||||
= fma tonearest dbl-64 0x7.fffff8p-128 0x3.fffffcp+24 0xf.fffffp+124 : 0xf.fffffp+124 : inexact
|
||||
= fma towardzero dbl-64 0x7.fffff8p-128 0x3.fffffcp+24 0xf.fffffp+124 : 0xf.fffffp+124 : inexact
|
||||
= fma upward dbl-64 0x7.fffff8p-128 0x3.fffffcp+24 0xf.fffffp+124 : 0xf.fffff00000008p+124 : inexact
|
||||
= fma downward ldbl-96-intel 0x7.fffff8p-128L 0x3.fffffcp+24L 0xf.fffffp+124L : 0xf.fffffp+124L : inexact
|
||||
= fma tonearest ldbl-96-intel 0x7.fffff8p-128L 0x3.fffffcp+24L 0xf.fffffp+124L : 0xf.fffffp+124L : inexact
|
||||
= fma towardzero ldbl-96-intel 0x7.fffff8p-128L 0x3.fffffcp+24L 0xf.fffffp+124L : 0xf.fffffp+124L : inexact
|
||||
= fma upward ldbl-96-intel 0x7.fffff8p-128L 0x3.fffffcp+24L 0xf.fffffp+124L : 0xf.fffff0000000001p+124L : inexact
|
||||
= fma downward ldbl-96-m68k 0x7.fffff8p-128L 0x3.fffffcp+24L 0xf.fffffp+124L : 0xf.fffffp+124L : inexact
|
||||
= fma tonearest ldbl-96-m68k 0x7.fffff8p-128L 0x3.fffffcp+24L 0xf.fffffp+124L : 0xf.fffffp+124L : inexact
|
||||
= fma towardzero ldbl-96-m68k 0x7.fffff8p-128L 0x3.fffffcp+24L 0xf.fffffp+124L : 0xf.fffffp+124L : inexact
|
||||
= fma upward ldbl-96-m68k 0x7.fffff8p-128L 0x3.fffffcp+24L 0xf.fffffp+124L : 0xf.fffff0000000001p+124L : inexact
|
||||
= fma downward ldbl-128 0x7.fffff8p-128L 0x3.fffffcp+24L 0xf.fffffp+124L : 0xf.fffffp+124L : inexact
|
||||
= fma tonearest ldbl-128 0x7.fffff8p-128L 0x3.fffffcp+24L 0xf.fffffp+124L : 0xf.fffffp+124L : inexact
|
||||
= fma towardzero ldbl-128 0x7.fffff8p-128L 0x3.fffffcp+24L 0xf.fffffp+124L : 0xf.fffffp+124L : inexact
|
||||
= fma upward ldbl-128 0x7.fffff8p-128L 0x3.fffffcp+24L 0xf.fffffp+124L : 0xf.fffff00000000000000000000008p+124L : inexact
|
||||
= fma downward ldbl-128ibm 0x7.fffff8p-128L 0x3.fffffcp+24L 0xf.fffffp+124L : 0xf.fffffp+124L : inexact
|
||||
= fma tonearest ldbl-128ibm 0x7.fffff8p-128L 0x3.fffffcp+24L 0xf.fffffp+124L : 0xf.fffffp+124L : inexact
|
||||
= fma towardzero ldbl-128ibm 0x7.fffff8p-128L 0x3.fffffcp+24L 0xf.fffffp+124L : 0xf.fffffp+124L : inexact
|
||||
= fma upward ldbl-128ibm 0x7.fffff8p-128L 0x3.fffffcp+24L 0xf.fffffp+124L : 0xf.fffff000000000000000000004p+124L : inexact
|
||||
fma 0x1.fffffep-126 -0x1.fffffep25 0x1.fffffep127
|
||||
= fma downward flt-32 0x7.fffff8p-128f -0x3.fffffcp+24f 0xf.fffffp+124f : 0xf.ffffep+124f : inexact
|
||||
= fma tonearest flt-32 0x7.fffff8p-128f -0x3.fffffcp+24f 0xf.fffffp+124f : 0xf.fffffp+124f : inexact
|
||||
= fma towardzero flt-32 0x7.fffff8p-128f -0x3.fffffcp+24f 0xf.fffffp+124f : 0xf.ffffep+124f : inexact
|
||||
= fma upward flt-32 0x7.fffff8p-128f -0x3.fffffcp+24f 0xf.fffffp+124f : 0xf.fffffp+124f : inexact
|
||||
= fma downward dbl-64 0x7.fffff8p-128 -0x3.fffffcp+24 0xf.fffffp+124 : 0xf.ffffefffffff8p+124 : inexact
|
||||
= fma tonearest dbl-64 0x7.fffff8p-128 -0x3.fffffcp+24 0xf.fffffp+124 : 0xf.fffffp+124 : inexact
|
||||
= fma towardzero dbl-64 0x7.fffff8p-128 -0x3.fffffcp+24 0xf.fffffp+124 : 0xf.ffffefffffff8p+124 : inexact
|
||||
= fma upward dbl-64 0x7.fffff8p-128 -0x3.fffffcp+24 0xf.fffffp+124 : 0xf.fffffp+124 : inexact
|
||||
= fma downward ldbl-96-intel 0x7.fffff8p-128L -0x3.fffffcp+24L 0xf.fffffp+124L : 0xf.ffffeffffffffffp+124L : inexact
|
||||
= fma tonearest ldbl-96-intel 0x7.fffff8p-128L -0x3.fffffcp+24L 0xf.fffffp+124L : 0xf.fffffp+124L : inexact
|
||||
= fma towardzero ldbl-96-intel 0x7.fffff8p-128L -0x3.fffffcp+24L 0xf.fffffp+124L : 0xf.ffffeffffffffffp+124L : inexact
|
||||
= fma upward ldbl-96-intel 0x7.fffff8p-128L -0x3.fffffcp+24L 0xf.fffffp+124L : 0xf.fffffp+124L : inexact
|
||||
= fma downward ldbl-96-m68k 0x7.fffff8p-128L -0x3.fffffcp+24L 0xf.fffffp+124L : 0xf.ffffeffffffffffp+124L : inexact
|
||||
= fma tonearest ldbl-96-m68k 0x7.fffff8p-128L -0x3.fffffcp+24L 0xf.fffffp+124L : 0xf.fffffp+124L : inexact
|
||||
= fma towardzero ldbl-96-m68k 0x7.fffff8p-128L -0x3.fffffcp+24L 0xf.fffffp+124L : 0xf.ffffeffffffffffp+124L : inexact
|
||||
= fma upward ldbl-96-m68k 0x7.fffff8p-128L -0x3.fffffcp+24L 0xf.fffffp+124L : 0xf.fffffp+124L : inexact
|
||||
= fma downward ldbl-128 0x7.fffff8p-128L -0x3.fffffcp+24L 0xf.fffffp+124L : 0xf.ffffeffffffffffffffffffffff8p+124L : inexact
|
||||
= fma tonearest ldbl-128 0x7.fffff8p-128L -0x3.fffffcp+24L 0xf.fffffp+124L : 0xf.fffffp+124L : inexact
|
||||
= fma towardzero ldbl-128 0x7.fffff8p-128L -0x3.fffffcp+24L 0xf.fffffp+124L : 0xf.ffffeffffffffffffffffffffff8p+124L : inexact
|
||||
= fma upward ldbl-128 0x7.fffff8p-128L -0x3.fffffcp+24L 0xf.fffffp+124L : 0xf.fffffp+124L : inexact
|
||||
= fma downward ldbl-128ibm 0x7.fffff8p-128L -0x3.fffffcp+24L 0xf.fffffp+124L : 0xf.ffffeffffffffffffffffffffcp+124L : inexact
|
||||
= fma tonearest ldbl-128ibm 0x7.fffff8p-128L -0x3.fffffcp+24L 0xf.fffffp+124L : 0xf.fffffp+124L : inexact
|
||||
= fma towardzero ldbl-128ibm 0x7.fffff8p-128L -0x3.fffffcp+24L 0xf.fffffp+124L : 0xf.ffffeffffffffffffffffffffcp+124L : inexact
|
||||
= fma upward ldbl-128ibm 0x7.fffff8p-128L -0x3.fffffcp+24L 0xf.fffffp+124L : 0xf.fffffp+124L : inexact
|
||||
fma 0x1.fffffep-126 0x1.fffffep25 -0x1.fffffep127
|
||||
= fma downward flt-32 0x7.fffff8p-128f 0x3.fffffcp+24f -0xf.fffffp+124f : -0xf.fffffp+124f : inexact
|
||||
= fma tonearest flt-32 0x7.fffff8p-128f 0x3.fffffcp+24f -0xf.fffffp+124f : -0xf.fffffp+124f : inexact
|
||||
= fma towardzero flt-32 0x7.fffff8p-128f 0x3.fffffcp+24f -0xf.fffffp+124f : -0xf.ffffep+124f : inexact
|
||||
= fma upward flt-32 0x7.fffff8p-128f 0x3.fffffcp+24f -0xf.fffffp+124f : -0xf.ffffep+124f : inexact
|
||||
= fma downward dbl-64 0x7.fffff8p-128 0x3.fffffcp+24 -0xf.fffffp+124 : -0xf.fffffp+124 : inexact
|
||||
= fma tonearest dbl-64 0x7.fffff8p-128 0x3.fffffcp+24 -0xf.fffffp+124 : -0xf.fffffp+124 : inexact
|
||||
= fma towardzero dbl-64 0x7.fffff8p-128 0x3.fffffcp+24 -0xf.fffffp+124 : -0xf.ffffefffffff8p+124 : inexact
|
||||
= fma upward dbl-64 0x7.fffff8p-128 0x3.fffffcp+24 -0xf.fffffp+124 : -0xf.ffffefffffff8p+124 : inexact
|
||||
= fma downward ldbl-96-intel 0x7.fffff8p-128L 0x3.fffffcp+24L -0xf.fffffp+124L : -0xf.fffffp+124L : inexact
|
||||
= fma tonearest ldbl-96-intel 0x7.fffff8p-128L 0x3.fffffcp+24L -0xf.fffffp+124L : -0xf.fffffp+124L : inexact
|
||||
= fma towardzero ldbl-96-intel 0x7.fffff8p-128L 0x3.fffffcp+24L -0xf.fffffp+124L : -0xf.ffffeffffffffffp+124L : inexact
|
||||
= fma upward ldbl-96-intel 0x7.fffff8p-128L 0x3.fffffcp+24L -0xf.fffffp+124L : -0xf.ffffeffffffffffp+124L : inexact
|
||||
= fma downward ldbl-96-m68k 0x7.fffff8p-128L 0x3.fffffcp+24L -0xf.fffffp+124L : -0xf.fffffp+124L : inexact
|
||||
= fma tonearest ldbl-96-m68k 0x7.fffff8p-128L 0x3.fffffcp+24L -0xf.fffffp+124L : -0xf.fffffp+124L : inexact
|
||||
= fma towardzero ldbl-96-m68k 0x7.fffff8p-128L 0x3.fffffcp+24L -0xf.fffffp+124L : -0xf.ffffeffffffffffp+124L : inexact
|
||||
= fma upward ldbl-96-m68k 0x7.fffff8p-128L 0x3.fffffcp+24L -0xf.fffffp+124L : -0xf.ffffeffffffffffp+124L : inexact
|
||||
= fma downward ldbl-128 0x7.fffff8p-128L 0x3.fffffcp+24L -0xf.fffffp+124L : -0xf.fffffp+124L : inexact
|
||||
= fma tonearest ldbl-128 0x7.fffff8p-128L 0x3.fffffcp+24L -0xf.fffffp+124L : -0xf.fffffp+124L : inexact
|
||||
= fma towardzero ldbl-128 0x7.fffff8p-128L 0x3.fffffcp+24L -0xf.fffffp+124L : -0xf.ffffeffffffffffffffffffffff8p+124L : inexact
|
||||
= fma upward ldbl-128 0x7.fffff8p-128L 0x3.fffffcp+24L -0xf.fffffp+124L : -0xf.ffffeffffffffffffffffffffff8p+124L : inexact
|
||||
= fma downward ldbl-128ibm 0x7.fffff8p-128L 0x3.fffffcp+24L -0xf.fffffp+124L : -0xf.fffffp+124L : inexact
|
||||
= fma tonearest ldbl-128ibm 0x7.fffff8p-128L 0x3.fffffcp+24L -0xf.fffffp+124L : -0xf.fffffp+124L : inexact
|
||||
= fma towardzero ldbl-128ibm 0x7.fffff8p-128L 0x3.fffffcp+24L -0xf.fffffp+124L : -0xf.ffffeffffffffffffffffffffcp+124L : inexact
|
||||
= fma upward ldbl-128ibm 0x7.fffff8p-128L 0x3.fffffcp+24L -0xf.fffffp+124L : -0xf.ffffeffffffffffffffffffffcp+124L : inexact
|
||||
fma 0x1.fffffep-126 -0x1.fffffep25 -0x1.fffffep127 missing-errno
|
||||
= fma downward flt-32 0x7.fffff8p-128f -0x3.fffffcp+24f -0xf.fffffp+124f : minus_infty : inexact overflow errno-erange errno-erange-ok
|
||||
= fma tonearest flt-32 0x7.fffff8p-128f -0x3.fffffcp+24f -0xf.fffffp+124f : -0xf.fffffp+124f : inexact
|
||||
= fma towardzero flt-32 0x7.fffff8p-128f -0x3.fffffcp+24f -0xf.fffffp+124f : -0xf.fffffp+124f : inexact
|
||||
= fma upward flt-32 0x7.fffff8p-128f -0x3.fffffcp+24f -0xf.fffffp+124f : -0xf.fffffp+124f : inexact
|
||||
= fma downward dbl-64 0x7.fffff8p-128 -0x3.fffffcp+24 -0xf.fffffp+124 : -0xf.fffff00000008p+124 : inexact
|
||||
= fma tonearest dbl-64 0x7.fffff8p-128 -0x3.fffffcp+24 -0xf.fffffp+124 : -0xf.fffffp+124 : inexact
|
||||
= fma towardzero dbl-64 0x7.fffff8p-128 -0x3.fffffcp+24 -0xf.fffffp+124 : -0xf.fffffp+124 : inexact
|
||||
= fma upward dbl-64 0x7.fffff8p-128 -0x3.fffffcp+24 -0xf.fffffp+124 : -0xf.fffffp+124 : inexact
|
||||
= fma downward ldbl-96-intel 0x7.fffff8p-128L -0x3.fffffcp+24L -0xf.fffffp+124L : -0xf.fffff0000000001p+124L : inexact
|
||||
= fma tonearest ldbl-96-intel 0x7.fffff8p-128L -0x3.fffffcp+24L -0xf.fffffp+124L : -0xf.fffffp+124L : inexact
|
||||
= fma towardzero ldbl-96-intel 0x7.fffff8p-128L -0x3.fffffcp+24L -0xf.fffffp+124L : -0xf.fffffp+124L : inexact
|
||||
= fma upward ldbl-96-intel 0x7.fffff8p-128L -0x3.fffffcp+24L -0xf.fffffp+124L : -0xf.fffffp+124L : inexact
|
||||
= fma downward ldbl-96-m68k 0x7.fffff8p-128L -0x3.fffffcp+24L -0xf.fffffp+124L : -0xf.fffff0000000001p+124L : inexact
|
||||
= fma tonearest ldbl-96-m68k 0x7.fffff8p-128L -0x3.fffffcp+24L -0xf.fffffp+124L : -0xf.fffffp+124L : inexact
|
||||
= fma towardzero ldbl-96-m68k 0x7.fffff8p-128L -0x3.fffffcp+24L -0xf.fffffp+124L : -0xf.fffffp+124L : inexact
|
||||
= fma upward ldbl-96-m68k 0x7.fffff8p-128L -0x3.fffffcp+24L -0xf.fffffp+124L : -0xf.fffffp+124L : inexact
|
||||
= fma downward ldbl-128 0x7.fffff8p-128L -0x3.fffffcp+24L -0xf.fffffp+124L : -0xf.fffff00000000000000000000008p+124L : inexact
|
||||
= fma tonearest ldbl-128 0x7.fffff8p-128L -0x3.fffffcp+24L -0xf.fffffp+124L : -0xf.fffffp+124L : inexact
|
||||
= fma towardzero ldbl-128 0x7.fffff8p-128L -0x3.fffffcp+24L -0xf.fffffp+124L : -0xf.fffffp+124L : inexact
|
||||
= fma upward ldbl-128 0x7.fffff8p-128L -0x3.fffffcp+24L -0xf.fffffp+124L : -0xf.fffffp+124L : inexact
|
||||
= fma downward ldbl-128ibm 0x7.fffff8p-128L -0x3.fffffcp+24L -0xf.fffffp+124L : -0xf.fffff000000000000000000004p+124L : inexact
|
||||
= fma tonearest ldbl-128ibm 0x7.fffff8p-128L -0x3.fffffcp+24L -0xf.fffffp+124L : -0xf.fffffp+124L : inexact
|
||||
= fma towardzero ldbl-128ibm 0x7.fffff8p-128L -0x3.fffffcp+24L -0xf.fffffp+124L : -0xf.fffffp+124L : inexact
|
||||
= fma upward ldbl-128ibm 0x7.fffff8p-128L -0x3.fffffcp+24L -0xf.fffffp+124L : -0xf.fffffp+124L : inexact
|
||||
fma 0x1.fffffffffffffp-1022 0x1.fffffffffffffp54 0x1.fffffffffffffp1023 missing-errno
|
||||
= fma downward dbl-64 0x7.ffffffffffffcp-1024 0x7.ffffffffffffcp+52 0xf.ffffffffffff8p+1020 : 0xf.ffffffffffff8p+1020 : inexact
|
||||
= fma tonearest dbl-64 0x7.ffffffffffffcp-1024 0x7.ffffffffffffcp+52 0xf.ffffffffffff8p+1020 : 0xf.ffffffffffff8p+1020 : inexact
|
||||
= fma towardzero dbl-64 0x7.ffffffffffffcp-1024 0x7.ffffffffffffcp+52 0xf.ffffffffffff8p+1020 : 0xf.ffffffffffff8p+1020 : inexact
|
||||
= fma upward dbl-64 0x7.ffffffffffffcp-1024 0x7.ffffffffffffcp+52 0xf.ffffffffffff8p+1020 : plus_infty : inexact overflow errno-erange errno-erange-ok
|
||||
= fma downward ldbl-96-intel 0x7.ffffffffffffcp-1024L 0x7.ffffffffffffcp+52L 0xf.ffffffffffff8p+1020L : 0xf.ffffffffffff8p+1020L : inexact
|
||||
= fma tonearest ldbl-96-intel 0x7.ffffffffffffcp-1024L 0x7.ffffffffffffcp+52L 0xf.ffffffffffff8p+1020L : 0xf.ffffffffffff8p+1020L : inexact
|
||||
= fma towardzero ldbl-96-intel 0x7.ffffffffffffcp-1024L 0x7.ffffffffffffcp+52L 0xf.ffffffffffff8p+1020L : 0xf.ffffffffffff8p+1020L : inexact
|
||||
= fma upward ldbl-96-intel 0x7.ffffffffffffcp-1024L 0x7.ffffffffffffcp+52L 0xf.ffffffffffff8p+1020L : 0xf.ffffffffffff801p+1020L : inexact
|
||||
= fma downward ldbl-96-m68k 0x7.ffffffffffffcp-1024L 0x7.ffffffffffffcp+52L 0xf.ffffffffffff8p+1020L : 0xf.ffffffffffff8p+1020L : inexact
|
||||
= fma tonearest ldbl-96-m68k 0x7.ffffffffffffcp-1024L 0x7.ffffffffffffcp+52L 0xf.ffffffffffff8p+1020L : 0xf.ffffffffffff8p+1020L : inexact
|
||||
= fma towardzero ldbl-96-m68k 0x7.ffffffffffffcp-1024L 0x7.ffffffffffffcp+52L 0xf.ffffffffffff8p+1020L : 0xf.ffffffffffff8p+1020L : inexact
|
||||
= fma upward ldbl-96-m68k 0x7.ffffffffffffcp-1024L 0x7.ffffffffffffcp+52L 0xf.ffffffffffff8p+1020L : 0xf.ffffffffffff801p+1020L : inexact
|
||||
= fma downward ldbl-128 0x7.ffffffffffffcp-1024L 0x7.ffffffffffffcp+52L 0xf.ffffffffffff8p+1020L : 0xf.ffffffffffff8p+1020L : inexact
|
||||
= fma tonearest ldbl-128 0x7.ffffffffffffcp-1024L 0x7.ffffffffffffcp+52L 0xf.ffffffffffff8p+1020L : 0xf.ffffffffffff8p+1020L : inexact
|
||||
= fma towardzero ldbl-128 0x7.ffffffffffffcp-1024L 0x7.ffffffffffffcp+52L 0xf.ffffffffffff8p+1020L : 0xf.ffffffffffff8p+1020L : inexact
|
||||
= fma upward ldbl-128 0x7.ffffffffffffcp-1024L 0x7.ffffffffffffcp+52L 0xf.ffffffffffff8p+1020L : 0xf.ffffffffffff8000000000000008p+1020L : inexact
|
||||
= fma downward ldbl-128ibm 0x7.ffffffffffffcp-1024L 0x7.ffffffffffffcp+52L 0xf.ffffffffffff8p+1020L : 0xf.ffffffffffff8p+1020L : inexact
|
||||
= fma tonearest ldbl-128ibm 0x7.ffffffffffffcp-1024L 0x7.ffffffffffffcp+52L 0xf.ffffffffffff8p+1020L : 0xf.ffffffffffff8p+1020L : inexact
|
||||
= fma towardzero ldbl-128ibm 0x7.ffffffffffffcp-1024L 0x7.ffffffffffffcp+52L 0xf.ffffffffffff8p+1020L : 0xf.ffffffffffff8p+1020L : inexact
|
||||
= fma upward ldbl-128ibm 0x7.ffffffffffffcp-1024L 0x7.ffffffffffffcp+52L 0xf.ffffffffffff8p+1020L : 0xf.ffffffffffff80000000000004p+1020L : inexact
|
||||
fma 0x1.fffffffffffffp-1022 -0x1.fffffffffffffp54 0x1.fffffffffffffp1023
|
||||
= fma downward dbl-64 0x7.ffffffffffffcp-1024 -0x7.ffffffffffffcp+52 0xf.ffffffffffff8p+1020 : 0xf.ffffffffffffp+1020 : inexact
|
||||
= fma tonearest dbl-64 0x7.ffffffffffffcp-1024 -0x7.ffffffffffffcp+52 0xf.ffffffffffff8p+1020 : 0xf.ffffffffffff8p+1020 : inexact
|
||||
= fma towardzero dbl-64 0x7.ffffffffffffcp-1024 -0x7.ffffffffffffcp+52 0xf.ffffffffffff8p+1020 : 0xf.ffffffffffffp+1020 : inexact
|
||||
= fma upward dbl-64 0x7.ffffffffffffcp-1024 -0x7.ffffffffffffcp+52 0xf.ffffffffffff8p+1020 : 0xf.ffffffffffff8p+1020 : inexact
|
||||
= fma downward ldbl-96-intel 0x7.ffffffffffffcp-1024L -0x7.ffffffffffffcp+52L 0xf.ffffffffffff8p+1020L : 0xf.ffffffffffff7ffp+1020L : inexact
|
||||
= fma tonearest ldbl-96-intel 0x7.ffffffffffffcp-1024L -0x7.ffffffffffffcp+52L 0xf.ffffffffffff8p+1020L : 0xf.ffffffffffff8p+1020L : inexact
|
||||
= fma towardzero ldbl-96-intel 0x7.ffffffffffffcp-1024L -0x7.ffffffffffffcp+52L 0xf.ffffffffffff8p+1020L : 0xf.ffffffffffff7ffp+1020L : inexact
|
||||
= fma upward ldbl-96-intel 0x7.ffffffffffffcp-1024L -0x7.ffffffffffffcp+52L 0xf.ffffffffffff8p+1020L : 0xf.ffffffffffff8p+1020L : inexact
|
||||
= fma downward ldbl-96-m68k 0x7.ffffffffffffcp-1024L -0x7.ffffffffffffcp+52L 0xf.ffffffffffff8p+1020L : 0xf.ffffffffffff7ffp+1020L : inexact
|
||||
= fma tonearest ldbl-96-m68k 0x7.ffffffffffffcp-1024L -0x7.ffffffffffffcp+52L 0xf.ffffffffffff8p+1020L : 0xf.ffffffffffff8p+1020L : inexact
|
||||
= fma towardzero ldbl-96-m68k 0x7.ffffffffffffcp-1024L -0x7.ffffffffffffcp+52L 0xf.ffffffffffff8p+1020L : 0xf.ffffffffffff7ffp+1020L : inexact
|
||||
= fma upward ldbl-96-m68k 0x7.ffffffffffffcp-1024L -0x7.ffffffffffffcp+52L 0xf.ffffffffffff8p+1020L : 0xf.ffffffffffff8p+1020L : inexact
|
||||
= fma downward ldbl-128 0x7.ffffffffffffcp-1024L -0x7.ffffffffffffcp+52L 0xf.ffffffffffff8p+1020L : 0xf.ffffffffffff7ffffffffffffff8p+1020L : inexact
|
||||
= fma tonearest ldbl-128 0x7.ffffffffffffcp-1024L -0x7.ffffffffffffcp+52L 0xf.ffffffffffff8p+1020L : 0xf.ffffffffffff8p+1020L : inexact
|
||||
= fma towardzero ldbl-128 0x7.ffffffffffffcp-1024L -0x7.ffffffffffffcp+52L 0xf.ffffffffffff8p+1020L : 0xf.ffffffffffff7ffffffffffffff8p+1020L : inexact
|
||||
= fma upward ldbl-128 0x7.ffffffffffffcp-1024L -0x7.ffffffffffffcp+52L 0xf.ffffffffffff8p+1020L : 0xf.ffffffffffff8p+1020L : inexact
|
||||
= fma downward ldbl-128ibm 0x7.ffffffffffffcp-1024L -0x7.ffffffffffffcp+52L 0xf.ffffffffffff8p+1020L : 0xf.ffffffffffff7ffffffffffffcp+1020L : inexact
|
||||
= fma tonearest ldbl-128ibm 0x7.ffffffffffffcp-1024L -0x7.ffffffffffffcp+52L 0xf.ffffffffffff8p+1020L : 0xf.ffffffffffff8p+1020L : inexact
|
||||
= fma towardzero ldbl-128ibm 0x7.ffffffffffffcp-1024L -0x7.ffffffffffffcp+52L 0xf.ffffffffffff8p+1020L : 0xf.ffffffffffff7ffffffffffffcp+1020L : inexact
|
||||
= fma upward ldbl-128ibm 0x7.ffffffffffffcp-1024L -0x7.ffffffffffffcp+52L 0xf.ffffffffffff8p+1020L : 0xf.ffffffffffff8p+1020L : inexact
|
||||
fma 0x1.fffffffffffffp-1022 0x1.fffffffffffffp54 -0x1.fffffffffffffp1023
|
||||
= fma downward dbl-64 0x7.ffffffffffffcp-1024 0x7.ffffffffffffcp+52 -0xf.ffffffffffff8p+1020 : -0xf.ffffffffffff8p+1020 : inexact
|
||||
= fma tonearest dbl-64 0x7.ffffffffffffcp-1024 0x7.ffffffffffffcp+52 -0xf.ffffffffffff8p+1020 : -0xf.ffffffffffff8p+1020 : inexact
|
||||
= fma towardzero dbl-64 0x7.ffffffffffffcp-1024 0x7.ffffffffffffcp+52 -0xf.ffffffffffff8p+1020 : -0xf.ffffffffffffp+1020 : inexact
|
||||
= fma upward dbl-64 0x7.ffffffffffffcp-1024 0x7.ffffffffffffcp+52 -0xf.ffffffffffff8p+1020 : -0xf.ffffffffffffp+1020 : inexact
|
||||
= fma downward ldbl-96-intel 0x7.ffffffffffffcp-1024L 0x7.ffffffffffffcp+52L -0xf.ffffffffffff8p+1020L : -0xf.ffffffffffff8p+1020L : inexact
|
||||
= fma tonearest ldbl-96-intel 0x7.ffffffffffffcp-1024L 0x7.ffffffffffffcp+52L -0xf.ffffffffffff8p+1020L : -0xf.ffffffffffff8p+1020L : inexact
|
||||
= fma towardzero ldbl-96-intel 0x7.ffffffffffffcp-1024L 0x7.ffffffffffffcp+52L -0xf.ffffffffffff8p+1020L : -0xf.ffffffffffff7ffp+1020L : inexact
|
||||
= fma upward ldbl-96-intel 0x7.ffffffffffffcp-1024L 0x7.ffffffffffffcp+52L -0xf.ffffffffffff8p+1020L : -0xf.ffffffffffff7ffp+1020L : inexact
|
||||
= fma downward ldbl-96-m68k 0x7.ffffffffffffcp-1024L 0x7.ffffffffffffcp+52L -0xf.ffffffffffff8p+1020L : -0xf.ffffffffffff8p+1020L : inexact
|
||||
= fma tonearest ldbl-96-m68k 0x7.ffffffffffffcp-1024L 0x7.ffffffffffffcp+52L -0xf.ffffffffffff8p+1020L : -0xf.ffffffffffff8p+1020L : inexact
|
||||
= fma towardzero ldbl-96-m68k 0x7.ffffffffffffcp-1024L 0x7.ffffffffffffcp+52L -0xf.ffffffffffff8p+1020L : -0xf.ffffffffffff7ffp+1020L : inexact
|
||||
= fma upward ldbl-96-m68k 0x7.ffffffffffffcp-1024L 0x7.ffffffffffffcp+52L -0xf.ffffffffffff8p+1020L : -0xf.ffffffffffff7ffp+1020L : inexact
|
||||
= fma downward ldbl-128 0x7.ffffffffffffcp-1024L 0x7.ffffffffffffcp+52L -0xf.ffffffffffff8p+1020L : -0xf.ffffffffffff8p+1020L : inexact
|
||||
= fma tonearest ldbl-128 0x7.ffffffffffffcp-1024L 0x7.ffffffffffffcp+52L -0xf.ffffffffffff8p+1020L : -0xf.ffffffffffff8p+1020L : inexact
|
||||
= fma towardzero ldbl-128 0x7.ffffffffffffcp-1024L 0x7.ffffffffffffcp+52L -0xf.ffffffffffff8p+1020L : -0xf.ffffffffffff7ffffffffffffff8p+1020L : inexact
|
||||
= fma upward ldbl-128 0x7.ffffffffffffcp-1024L 0x7.ffffffffffffcp+52L -0xf.ffffffffffff8p+1020L : -0xf.ffffffffffff7ffffffffffffff8p+1020L : inexact
|
||||
= fma downward ldbl-128ibm 0x7.ffffffffffffcp-1024L 0x7.ffffffffffffcp+52L -0xf.ffffffffffff8p+1020L : -0xf.ffffffffffff8p+1020L : inexact
|
||||
= fma tonearest ldbl-128ibm 0x7.ffffffffffffcp-1024L 0x7.ffffffffffffcp+52L -0xf.ffffffffffff8p+1020L : -0xf.ffffffffffff8p+1020L : inexact
|
||||
= fma towardzero ldbl-128ibm 0x7.ffffffffffffcp-1024L 0x7.ffffffffffffcp+52L -0xf.ffffffffffff8p+1020L : -0xf.ffffffffffff7ffffffffffffcp+1020L : inexact
|
||||
= fma upward ldbl-128ibm 0x7.ffffffffffffcp-1024L 0x7.ffffffffffffcp+52L -0xf.ffffffffffff8p+1020L : -0xf.ffffffffffff7ffffffffffffcp+1020L : inexact
|
||||
fma 0x1.fffffffffffffp-1022 -0x1.fffffffffffffp54 -0x1.fffffffffffffp1023 missing-errno
|
||||
= fma downward dbl-64 0x7.ffffffffffffcp-1024 -0x7.ffffffffffffcp+52 -0xf.ffffffffffff8p+1020 : minus_infty : inexact overflow errno-erange errno-erange-ok
|
||||
= fma tonearest dbl-64 0x7.ffffffffffffcp-1024 -0x7.ffffffffffffcp+52 -0xf.ffffffffffff8p+1020 : -0xf.ffffffffffff8p+1020 : inexact
|
||||
= fma towardzero dbl-64 0x7.ffffffffffffcp-1024 -0x7.ffffffffffffcp+52 -0xf.ffffffffffff8p+1020 : -0xf.ffffffffffff8p+1020 : inexact
|
||||
= fma upward dbl-64 0x7.ffffffffffffcp-1024 -0x7.ffffffffffffcp+52 -0xf.ffffffffffff8p+1020 : -0xf.ffffffffffff8p+1020 : inexact
|
||||
= fma downward ldbl-96-intel 0x7.ffffffffffffcp-1024L -0x7.ffffffffffffcp+52L -0xf.ffffffffffff8p+1020L : -0xf.ffffffffffff801p+1020L : inexact
|
||||
= fma tonearest ldbl-96-intel 0x7.ffffffffffffcp-1024L -0x7.ffffffffffffcp+52L -0xf.ffffffffffff8p+1020L : -0xf.ffffffffffff8p+1020L : inexact
|
||||
= fma towardzero ldbl-96-intel 0x7.ffffffffffffcp-1024L -0x7.ffffffffffffcp+52L -0xf.ffffffffffff8p+1020L : -0xf.ffffffffffff8p+1020L : inexact
|
||||
= fma upward ldbl-96-intel 0x7.ffffffffffffcp-1024L -0x7.ffffffffffffcp+52L -0xf.ffffffffffff8p+1020L : -0xf.ffffffffffff8p+1020L : inexact
|
||||
= fma downward ldbl-96-m68k 0x7.ffffffffffffcp-1024L -0x7.ffffffffffffcp+52L -0xf.ffffffffffff8p+1020L : -0xf.ffffffffffff801p+1020L : inexact
|
||||
= fma tonearest ldbl-96-m68k 0x7.ffffffffffffcp-1024L -0x7.ffffffffffffcp+52L -0xf.ffffffffffff8p+1020L : -0xf.ffffffffffff8p+1020L : inexact
|
||||
= fma towardzero ldbl-96-m68k 0x7.ffffffffffffcp-1024L -0x7.ffffffffffffcp+52L -0xf.ffffffffffff8p+1020L : -0xf.ffffffffffff8p+1020L : inexact
|
||||
= fma upward ldbl-96-m68k 0x7.ffffffffffffcp-1024L -0x7.ffffffffffffcp+52L -0xf.ffffffffffff8p+1020L : -0xf.ffffffffffff8p+1020L : inexact
|
||||
= fma downward ldbl-128 0x7.ffffffffffffcp-1024L -0x7.ffffffffffffcp+52L -0xf.ffffffffffff8p+1020L : -0xf.ffffffffffff8000000000000008p+1020L : inexact
|
||||
= fma tonearest ldbl-128 0x7.ffffffffffffcp-1024L -0x7.ffffffffffffcp+52L -0xf.ffffffffffff8p+1020L : -0xf.ffffffffffff8p+1020L : inexact
|
||||
= fma towardzero ldbl-128 0x7.ffffffffffffcp-1024L -0x7.ffffffffffffcp+52L -0xf.ffffffffffff8p+1020L : -0xf.ffffffffffff8p+1020L : inexact
|
||||
= fma upward ldbl-128 0x7.ffffffffffffcp-1024L -0x7.ffffffffffffcp+52L -0xf.ffffffffffff8p+1020L : -0xf.ffffffffffff8p+1020L : inexact
|
||||
= fma downward ldbl-128ibm 0x7.ffffffffffffcp-1024L -0x7.ffffffffffffcp+52L -0xf.ffffffffffff8p+1020L : -0xf.ffffffffffff80000000000004p+1020L : inexact
|
||||
= fma tonearest ldbl-128ibm 0x7.ffffffffffffcp-1024L -0x7.ffffffffffffcp+52L -0xf.ffffffffffff8p+1020L : -0xf.ffffffffffff8p+1020L : inexact
|
||||
= fma towardzero ldbl-128ibm 0x7.ffffffffffffcp-1024L -0x7.ffffffffffffcp+52L -0xf.ffffffffffff8p+1020L : -0xf.ffffffffffff8p+1020L : inexact
|
||||
= fma upward ldbl-128ibm 0x7.ffffffffffffcp-1024L -0x7.ffffffffffffcp+52L -0xf.ffffffffffff8p+1020L : -0xf.ffffffffffff8p+1020L : inexact
|
||||
fma 0x1.fffffffffffffffep-16382 0x1.fffffffffffffffep65 0x1.fffffffffffffffep16383 missing-errno
|
||||
= fma downward ldbl-96-intel 0x7.fffffffffffffff8p-16384L 0x3.fffffffffffffffcp+64L 0xf.fffffffffffffffp+16380L : 0xf.fffffffffffffffp+16380L : inexact
|
||||
= fma tonearest ldbl-96-intel 0x7.fffffffffffffff8p-16384L 0x3.fffffffffffffffcp+64L 0xf.fffffffffffffffp+16380L : 0xf.fffffffffffffffp+16380L : inexact
|
||||
= fma towardzero ldbl-96-intel 0x7.fffffffffffffff8p-16384L 0x3.fffffffffffffffcp+64L 0xf.fffffffffffffffp+16380L : 0xf.fffffffffffffffp+16380L : inexact
|
||||
= fma upward ldbl-96-intel 0x7.fffffffffffffff8p-16384L 0x3.fffffffffffffffcp+64L 0xf.fffffffffffffffp+16380L : plus_infty : inexact overflow errno-erange errno-erange-ok
|
||||
= fma downward ldbl-96-m68k 0x7.fffffffffffffff8p-16384L 0x3.fffffffffffffffcp+64L 0xf.fffffffffffffffp+16380L : 0xf.fffffffffffffffp+16380L : inexact
|
||||
= fma tonearest ldbl-96-m68k 0x7.fffffffffffffff8p-16384L 0x3.fffffffffffffffcp+64L 0xf.fffffffffffffffp+16380L : 0xf.fffffffffffffffp+16380L : inexact
|
||||
= fma towardzero ldbl-96-m68k 0x7.fffffffffffffff8p-16384L 0x3.fffffffffffffffcp+64L 0xf.fffffffffffffffp+16380L : 0xf.fffffffffffffffp+16380L : inexact
|
||||
= fma upward ldbl-96-m68k 0x7.fffffffffffffff8p-16384L 0x3.fffffffffffffffcp+64L 0xf.fffffffffffffffp+16380L : plus_infty : inexact overflow errno-erange errno-erange-ok
|
||||
= fma downward ldbl-128 0x7.fffffffffffffff8p-16384L 0x3.fffffffffffffffcp+64L 0xf.fffffffffffffffp+16380L : 0xf.fffffffffffffffp+16380L : inexact
|
||||
= fma tonearest ldbl-128 0x7.fffffffffffffff8p-16384L 0x3.fffffffffffffffcp+64L 0xf.fffffffffffffffp+16380L : 0xf.fffffffffffffffp+16380L : inexact
|
||||
= fma towardzero ldbl-128 0x7.fffffffffffffff8p-16384L 0x3.fffffffffffffffcp+64L 0xf.fffffffffffffffp+16380L : 0xf.fffffffffffffffp+16380L : inexact
|
||||
= fma upward ldbl-128 0x7.fffffffffffffff8p-16384L 0x3.fffffffffffffffcp+64L 0xf.fffffffffffffffp+16380L : 0xf.fffffffffffffff0000000000008p+16380L : inexact
|
||||
fma 0x1.fffffffffffffffep-16382 -0x1.fffffffffffffffep65 0x1.fffffffffffffffep16383
|
||||
= fma downward ldbl-96-intel 0x7.fffffffffffffff8p-16384L -0x3.fffffffffffffffcp+64L 0xf.fffffffffffffffp+16380L : 0xf.ffffffffffffffep+16380L : inexact
|
||||
= fma tonearest ldbl-96-intel 0x7.fffffffffffffff8p-16384L -0x3.fffffffffffffffcp+64L 0xf.fffffffffffffffp+16380L : 0xf.fffffffffffffffp+16380L : inexact
|
||||
= fma towardzero ldbl-96-intel 0x7.fffffffffffffff8p-16384L -0x3.fffffffffffffffcp+64L 0xf.fffffffffffffffp+16380L : 0xf.ffffffffffffffep+16380L : inexact
|
||||
= fma upward ldbl-96-intel 0x7.fffffffffffffff8p-16384L -0x3.fffffffffffffffcp+64L 0xf.fffffffffffffffp+16380L : 0xf.fffffffffffffffp+16380L : inexact
|
||||
= fma downward ldbl-96-m68k 0x7.fffffffffffffff8p-16384L -0x3.fffffffffffffffcp+64L 0xf.fffffffffffffffp+16380L : 0xf.ffffffffffffffep+16380L : inexact
|
||||
= fma tonearest ldbl-96-m68k 0x7.fffffffffffffff8p-16384L -0x3.fffffffffffffffcp+64L 0xf.fffffffffffffffp+16380L : 0xf.fffffffffffffffp+16380L : inexact
|
||||
= fma towardzero ldbl-96-m68k 0x7.fffffffffffffff8p-16384L -0x3.fffffffffffffffcp+64L 0xf.fffffffffffffffp+16380L : 0xf.ffffffffffffffep+16380L : inexact
|
||||
= fma upward ldbl-96-m68k 0x7.fffffffffffffff8p-16384L -0x3.fffffffffffffffcp+64L 0xf.fffffffffffffffp+16380L : 0xf.fffffffffffffffp+16380L : inexact
|
||||
= fma downward ldbl-128 0x7.fffffffffffffff8p-16384L -0x3.fffffffffffffffcp+64L 0xf.fffffffffffffffp+16380L : 0xf.ffffffffffffffeffffffffffff8p+16380L : inexact
|
||||
= fma tonearest ldbl-128 0x7.fffffffffffffff8p-16384L -0x3.fffffffffffffffcp+64L 0xf.fffffffffffffffp+16380L : 0xf.fffffffffffffffp+16380L : inexact
|
||||
= fma towardzero ldbl-128 0x7.fffffffffffffff8p-16384L -0x3.fffffffffffffffcp+64L 0xf.fffffffffffffffp+16380L : 0xf.ffffffffffffffeffffffffffff8p+16380L : inexact
|
||||
= fma upward ldbl-128 0x7.fffffffffffffff8p-16384L -0x3.fffffffffffffffcp+64L 0xf.fffffffffffffffp+16380L : 0xf.fffffffffffffffp+16380L : inexact
|
||||
fma 0x1.fffffffffffffffep-16382 0x1.fffffffffffffffep65 -0x1.fffffffffffffffep16383
|
||||
= fma downward ldbl-96-intel 0x7.fffffffffffffff8p-16384L 0x3.fffffffffffffffcp+64L -0xf.fffffffffffffffp+16380L : -0xf.fffffffffffffffp+16380L : inexact
|
||||
= fma tonearest ldbl-96-intel 0x7.fffffffffffffff8p-16384L 0x3.fffffffffffffffcp+64L -0xf.fffffffffffffffp+16380L : -0xf.fffffffffffffffp+16380L : inexact
|
||||
= fma towardzero ldbl-96-intel 0x7.fffffffffffffff8p-16384L 0x3.fffffffffffffffcp+64L -0xf.fffffffffffffffp+16380L : -0xf.ffffffffffffffep+16380L : inexact
|
||||
= fma upward ldbl-96-intel 0x7.fffffffffffffff8p-16384L 0x3.fffffffffffffffcp+64L -0xf.fffffffffffffffp+16380L : -0xf.ffffffffffffffep+16380L : inexact
|
||||
= fma downward ldbl-96-m68k 0x7.fffffffffffffff8p-16384L 0x3.fffffffffffffffcp+64L -0xf.fffffffffffffffp+16380L : -0xf.fffffffffffffffp+16380L : inexact
|
||||
= fma tonearest ldbl-96-m68k 0x7.fffffffffffffff8p-16384L 0x3.fffffffffffffffcp+64L -0xf.fffffffffffffffp+16380L : -0xf.fffffffffffffffp+16380L : inexact
|
||||
= fma towardzero ldbl-96-m68k 0x7.fffffffffffffff8p-16384L 0x3.fffffffffffffffcp+64L -0xf.fffffffffffffffp+16380L : -0xf.ffffffffffffffep+16380L : inexact
|
||||
= fma upward ldbl-96-m68k 0x7.fffffffffffffff8p-16384L 0x3.fffffffffffffffcp+64L -0xf.fffffffffffffffp+16380L : -0xf.ffffffffffffffep+16380L : inexact
|
||||
= fma downward ldbl-128 0x7.fffffffffffffff8p-16384L 0x3.fffffffffffffffcp+64L -0xf.fffffffffffffffp+16380L : -0xf.fffffffffffffffp+16380L : inexact
|
||||
= fma tonearest ldbl-128 0x7.fffffffffffffff8p-16384L 0x3.fffffffffffffffcp+64L -0xf.fffffffffffffffp+16380L : -0xf.fffffffffffffffp+16380L : inexact
|
||||
= fma towardzero ldbl-128 0x7.fffffffffffffff8p-16384L 0x3.fffffffffffffffcp+64L -0xf.fffffffffffffffp+16380L : -0xf.ffffffffffffffeffffffffffff8p+16380L : inexact
|
||||
= fma upward ldbl-128 0x7.fffffffffffffff8p-16384L 0x3.fffffffffffffffcp+64L -0xf.fffffffffffffffp+16380L : -0xf.ffffffffffffffeffffffffffff8p+16380L : inexact
|
||||
fma 0x1.fffffffffffffffep-16382 -0x1.fffffffffffffffep65 -0x1.fffffffffffffffep16383 missing-errno
|
||||
= fma downward ldbl-96-intel 0x7.fffffffffffffff8p-16384L -0x3.fffffffffffffffcp+64L -0xf.fffffffffffffffp+16380L : minus_infty : inexact overflow errno-erange errno-erange-ok
|
||||
= fma tonearest ldbl-96-intel 0x7.fffffffffffffff8p-16384L -0x3.fffffffffffffffcp+64L -0xf.fffffffffffffffp+16380L : -0xf.fffffffffffffffp+16380L : inexact
|
||||
= fma towardzero ldbl-96-intel 0x7.fffffffffffffff8p-16384L -0x3.fffffffffffffffcp+64L -0xf.fffffffffffffffp+16380L : -0xf.fffffffffffffffp+16380L : inexact
|
||||
= fma upward ldbl-96-intel 0x7.fffffffffffffff8p-16384L -0x3.fffffffffffffffcp+64L -0xf.fffffffffffffffp+16380L : -0xf.fffffffffffffffp+16380L : inexact
|
||||
= fma downward ldbl-96-m68k 0x7.fffffffffffffff8p-16384L -0x3.fffffffffffffffcp+64L -0xf.fffffffffffffffp+16380L : minus_infty : inexact overflow errno-erange errno-erange-ok
|
||||
= fma tonearest ldbl-96-m68k 0x7.fffffffffffffff8p-16384L -0x3.fffffffffffffffcp+64L -0xf.fffffffffffffffp+16380L : -0xf.fffffffffffffffp+16380L : inexact
|
||||
= fma towardzero ldbl-96-m68k 0x7.fffffffffffffff8p-16384L -0x3.fffffffffffffffcp+64L -0xf.fffffffffffffffp+16380L : -0xf.fffffffffffffffp+16380L : inexact
|
||||
= fma upward ldbl-96-m68k 0x7.fffffffffffffff8p-16384L -0x3.fffffffffffffffcp+64L -0xf.fffffffffffffffp+16380L : -0xf.fffffffffffffffp+16380L : inexact
|
||||
= fma downward ldbl-128 0x7.fffffffffffffff8p-16384L -0x3.fffffffffffffffcp+64L -0xf.fffffffffffffffp+16380L : -0xf.fffffffffffffff0000000000008p+16380L : inexact
|
||||
= fma tonearest ldbl-128 0x7.fffffffffffffff8p-16384L -0x3.fffffffffffffffcp+64L -0xf.fffffffffffffffp+16380L : -0xf.fffffffffffffffp+16380L : inexact
|
||||
= fma towardzero ldbl-128 0x7.fffffffffffffff8p-16384L -0x3.fffffffffffffffcp+64L -0xf.fffffffffffffffp+16380L : -0xf.fffffffffffffffp+16380L : inexact
|
||||
= fma upward ldbl-128 0x7.fffffffffffffff8p-16384L -0x3.fffffffffffffffcp+64L -0xf.fffffffffffffffp+16380L : -0xf.fffffffffffffffp+16380L : inexact
|
||||
fma 0x1.ffffffffffffffffffffffffffffp-16382 0x1.ffffffffffffffffffffffffffffp114 0x1.ffffffffffffffffffffffffffffp16383 missing-errno
|
||||
= fma downward ldbl-128 0x7.fffffffffffffffffffffffffffcp-16384L 0x7.fffffffffffffffffffffffffffcp+112L 0xf.fffffffffffffffffffffffffff8p+16380L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact
|
||||
= fma tonearest ldbl-128 0x7.fffffffffffffffffffffffffffcp-16384L 0x7.fffffffffffffffffffffffffffcp+112L 0xf.fffffffffffffffffffffffffff8p+16380L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact
|
||||
= fma towardzero ldbl-128 0x7.fffffffffffffffffffffffffffcp-16384L 0x7.fffffffffffffffffffffffffffcp+112L 0xf.fffffffffffffffffffffffffff8p+16380L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact
|
||||
= fma upward ldbl-128 0x7.fffffffffffffffffffffffffffcp-16384L 0x7.fffffffffffffffffffffffffffcp+112L 0xf.fffffffffffffffffffffffffff8p+16380L : plus_infty : inexact overflow errno-erange errno-erange-ok
|
||||
fma 0x1.ffffffffffffffffffffffffffffp-16382 -0x1.ffffffffffffffffffffffffffffp114 0x1.ffffffffffffffffffffffffffffp16383
|
||||
= fma downward ldbl-128 0x7.fffffffffffffffffffffffffffcp-16384L -0x7.fffffffffffffffffffffffffffcp+112L 0xf.fffffffffffffffffffffffffff8p+16380L : 0xf.fffffffffffffffffffffffffffp+16380L : inexact
|
||||
= fma tonearest ldbl-128 0x7.fffffffffffffffffffffffffffcp-16384L -0x7.fffffffffffffffffffffffffffcp+112L 0xf.fffffffffffffffffffffffffff8p+16380L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact
|
||||
= fma towardzero ldbl-128 0x7.fffffffffffffffffffffffffffcp-16384L -0x7.fffffffffffffffffffffffffffcp+112L 0xf.fffffffffffffffffffffffffff8p+16380L : 0xf.fffffffffffffffffffffffffffp+16380L : inexact
|
||||
= fma upward ldbl-128 0x7.fffffffffffffffffffffffffffcp-16384L -0x7.fffffffffffffffffffffffffffcp+112L 0xf.fffffffffffffffffffffffffff8p+16380L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact
|
||||
fma 0x1.ffffffffffffffffffffffffffffp-16382 0x1.ffffffffffffffffffffffffffffp114 -0x1.ffffffffffffffffffffffffffffp16383
|
||||
= fma downward ldbl-128 0x7.fffffffffffffffffffffffffffcp-16384L 0x7.fffffffffffffffffffffffffffcp+112L -0xf.fffffffffffffffffffffffffff8p+16380L : -0xf.fffffffffffffffffffffffffff8p+16380L : inexact
|
||||
= fma tonearest ldbl-128 0x7.fffffffffffffffffffffffffffcp-16384L 0x7.fffffffffffffffffffffffffffcp+112L -0xf.fffffffffffffffffffffffffff8p+16380L : -0xf.fffffffffffffffffffffffffff8p+16380L : inexact
|
||||
= fma towardzero ldbl-128 0x7.fffffffffffffffffffffffffffcp-16384L 0x7.fffffffffffffffffffffffffffcp+112L -0xf.fffffffffffffffffffffffffff8p+16380L : -0xf.fffffffffffffffffffffffffffp+16380L : inexact
|
||||
= fma upward ldbl-128 0x7.fffffffffffffffffffffffffffcp-16384L 0x7.fffffffffffffffffffffffffffcp+112L -0xf.fffffffffffffffffffffffffff8p+16380L : -0xf.fffffffffffffffffffffffffffp+16380L : inexact
|
||||
fma 0x1.ffffffffffffffffffffffffffffp-16382 -0x1.ffffffffffffffffffffffffffffp114 -0x1.ffffffffffffffffffffffffffffp16383 missing-errno
|
||||
= fma downward ldbl-128 0x7.fffffffffffffffffffffffffffcp-16384L -0x7.fffffffffffffffffffffffffffcp+112L -0xf.fffffffffffffffffffffffffff8p+16380L : minus_infty : inexact overflow errno-erange errno-erange-ok
|
||||
= fma tonearest ldbl-128 0x7.fffffffffffffffffffffffffffcp-16384L -0x7.fffffffffffffffffffffffffffcp+112L -0xf.fffffffffffffffffffffffffff8p+16380L : -0xf.fffffffffffffffffffffffffff8p+16380L : inexact
|
||||
= fma towardzero ldbl-128 0x7.fffffffffffffffffffffffffffcp-16384L -0x7.fffffffffffffffffffffffffffcp+112L -0xf.fffffffffffffffffffffffffff8p+16380L : -0xf.fffffffffffffffffffffffffff8p+16380L : inexact
|
||||
= fma upward ldbl-128 0x7.fffffffffffffffffffffffffffcp-16384L -0x7.fffffffffffffffffffffffffffcp+112L -0xf.fffffffffffffffffffffffffff8p+16380L : -0xf.fffffffffffffffffffffffffff8p+16380L : inexact
|
||||
hypot 0 0
|
||||
= hypot downward flt-32 0x0p+0f 0x0p+0f : 0x0p+0f : inexact-ok
|
||||
= hypot tonearest flt-32 0x0p+0f 0x0p+0f : 0x0p+0f : inexact-ok
|
||||
|
@ -117,7 +117,7 @@ __fma (double x, double y, double z)
|
||||
very small, adjust them up to avoid spurious underflows,
|
||||
rather than down. */
|
||||
if (u.ieee.exponent + v.ieee.exponent
|
||||
<= IEEE754_DOUBLE_BIAS + DBL_MANT_DIG)
|
||||
<= IEEE754_DOUBLE_BIAS + 2 * DBL_MANT_DIG)
|
||||
{
|
||||
if (u.ieee.exponent > v.ieee.exponent)
|
||||
u.ieee.exponent += 2 * DBL_MANT_DIG + 2;
|
||||
|
@ -121,7 +121,7 @@ __fmal (long double x, long double y, long double z)
|
||||
very small, adjust them up to avoid spurious underflows,
|
||||
rather than down. */
|
||||
if (u.ieee.exponent + v.ieee.exponent
|
||||
<= IEEE854_LONG_DOUBLE_BIAS + LDBL_MANT_DIG)
|
||||
<= IEEE854_LONG_DOUBLE_BIAS + 2 * LDBL_MANT_DIG)
|
||||
{
|
||||
if (u.ieee.exponent > v.ieee.exponent)
|
||||
u.ieee.exponent += 2 * LDBL_MANT_DIG + 2;
|
||||
|
@ -119,7 +119,7 @@ __fmal (long double x, long double y, long double z)
|
||||
very small, adjust them up to avoid spurious underflows,
|
||||
rather than down. */
|
||||
if (u.ieee.exponent + v.ieee.exponent
|
||||
<= IEEE854_LONG_DOUBLE_BIAS + LDBL_MANT_DIG)
|
||||
<= IEEE854_LONG_DOUBLE_BIAS + 2 * LDBL_MANT_DIG)
|
||||
{
|
||||
if (u.ieee.exponent > v.ieee.exponent)
|
||||
u.ieee.exponent += 2 * LDBL_MANT_DIG + 2;
|
||||
|
Loading…
Reference in New Issue
Block a user