alpha: cpow math testsuite failures with GCC 9
Szabolcs Nagy
nsz@port70.net
Mon Sep 2 20:17:00 GMT 2019
* Aurelien Jarno <aurelien@aurel32.net> [2019-09-02 21:32:08 +0200]:
> On 2019-09-02 08:32, Florian Weimer wrote:
> > * Aurelien Jarno:
> >
> > > Here is the detailed failure for math/test-double-cpow:
> > >
> > > | FAIL: math/test-double-cpow
> > > | original exit status 1
> > > | testing double (without inline functions)
> > > | Failure: Test: Real part of: cpow_downward (0x2p+0 + +0 i, 0xap+0 + +0 i)
> > > | Result:
> > > | is: 1.0239999999999989e+03 0x1.ffffffffffff7p+9
> > > | should be: 1.0240000000000000e+03 0x1.0000000000000p+10
> > > | difference: 1.0231815394945442e-12 0x1.2000000000000p-40
> > > | ulp : 4.5000
> > > | max.ulp : 2.0000
> > > | Maximal error of real part of: cpow_downward
> > > | is : 5 ulp
> > > | accepted: 2 ulp
> > > | Maximal error of imaginary part of: cpow_downward
> > > | is : 1 ulp
> > > | accepted: 1 ulp
> > > | Failure: Test: Real part of: cpow_towardzero (0x2p+0 + +0 i, 0xap+0 + +0 i)
> > > | Result:
> > > | is: 1.0239999999999989e+03 0x1.ffffffffffff7p+9
> > > | should be: 1.0240000000000000e+03 0x1.0000000000000p+10
> > > | difference: 1.0231815394945442e-12 0x1.2000000000000p-40
> > > | ulp : 4.5000
> > > | max.ulp : 2.0000
> > > | Maximal error of real part of: cpow_towardzero
> > > | is : 5 ulp
> > > | accepted: 2 ulp
> > > | Maximal error of imaginary part of: cpow_towardzero
> > > | is : 1 ulp
> > > | accepted: 1 ulp
> > > |
> > > | Test suite completed:
> > > | 50 test cases plus 46 tests for exception flags and
> > > | 46 tests for errno executed.
> > > | 4 errors occurred.
> >
> > These failures look pretty much like what we accept on other targets.
>
> It goes up to 8 ULPs for float. I had the impression it is too much.
in non-nearest rounding mode this is acceptable.
(the ulp regen script will complain if it's not)
in nearest rounding mode we try to keep the errors
lower at least for commonly used functions for QoI.
More information about the Libc-alpha
mailing list