This is the mail archive of the libc-alpha@sourceware.org mailing list for the glibc project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Math errors


Hey,

I'm running the `make check` tests on RV32 inside QEMU and about 800
math tests are failing with errors along these lines:

$ cat math/test-double-erf.out
Failure: Test: erf (0x1.4p+0)
Result:
 is:          9.2290012825645817e-01   0x1.d8865d98abe00p-1
 should be:   9.2290012825645829e-01   0x1.d8865d98abe01p-1
 difference:  1.1102230246251565e-16   0x1.0000000000000p-53
 ulp       :  1.0000
 max.ulp   :  0.0000
Maximal error of `erf'
 is      : 1 ulp
 accepted: 0 ulp
Failure: Test: erf_downward (-0x1.4d32f4p-12)
Result:
 is:         -3.5855754629430663e-04  -0x1.77f98ef609eb3p-12
 should be:  -3.5855754629430669e-04  -0x1.77f98ef609eb4p-12
 difference:  5.4210108624275221e-20   0x1.0000000000000p-64
 ulp       :  1.0000
 max.ulp   :  0.0000
Failure: Test: erf_downward (0x1.44e722p+0)
Result:
 is:          9.2732266856644440e-01   0x1.daca096caa26ap-1
 should be:   9.2732266856644429e-01   0x1.daca096caa269p-1
 difference:  1.1102230246251565e-16   0x1.0000000000000p-53

It seems the tests are failing due to small differences in the
floating point values.

Has anyone seen this before? I don't see how this can be related
specifically to the RV32 port, but I didn't see these errors when
running the ARM 32-bit testing. It's possible we are loosing
information in the QEMU floating point implementation for RV32.

Alistair


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]