Hi
This report is for x86 running under a 2.6.21 kernel on AMD Athlon 64 X2 4200+ hardware. Compiling Glibc-2.6 release with GCC-4.2 and HJL Binutils-2.17.50.0.16 I'm seeing testsuite failures which seem to depend upon the -march switch and/or -O optimization level as follows: CFLAGS="-O2 -march=i486" - clean CFLAGS="-O2 -march=i686" - 1 failure i.e. make[2]: *** [/home/pkgmgr/glibc-build/math/test-double.out] Error 1 which looks like: testing double (without inline functions) Failure: Real part of: cacos (inf + inf i) == pi/4 - inf i: Exception "Invalid operation" set Failure: Real part of: cacosh (-inf - inf i) == inf - 3/4 pi i: Exception "Invalid operation" set Failure: Real part of: cacosh (inf - inf i) == inf - pi/4 i: Exception "Invalid operation" set Failure: Real part of: cacosh (-10.0 - inf i) == inf - pi/2 i: Exception "Invalid operation" set Failure: Real part of: casin (0 - inf i) == 0.0 - inf i: Exception "Invalid operation" set Failure: Real part of: casinh (0 - inf i) == inf - pi/2 i: Exception "Invalid operation" set Failure: Real part of: catan (inf - 10.0 i) == pi/2 - 0 i: Exception "Invalid operation" set Failure: Real part of: catanh (-10.0 + inf i) == -0 + pi/2 i: Exception "Invalid operation" set Failure: Real part of: clog10 (-0 + 0 i) == -inf + pi i plus division by zero exception: Exception "Invalid operation" set Failure: Real part of: clog (inf - inf i) == inf - pi/4 i: Exception "Invalid operation" set Pumping up the optimization results in 2 additional failures: CFLAGS="-O3 -march=i486" - 2 failures i.e. make[2]: *** [/home/pkgmgr/glibc-build/math/test-ildoubl.out] Error 1 make[2]: *** [/home/pkgmgr/glibc-build/math/test-ldouble.out] Error 1 which both look similar to this: testing long double (inline functions) Failure: Test: j0 (10.0) == -0.245935764451348335197760862485328754 Result: is: -2.45935764451348335183e-01 -0xf.bd695c4f0f29c1800000p-6 should be: -2.45935764451348335197e-01 -0xf.bd695c4f0f29c1900000p-6 difference: 1.35525271560688054251e-20 0x8.00000000000000000000p-69 ulp : 1.0000 max.ulp : 0.0000 Failure: Test: jn (0, 10.0) == -0.245935764451348335197760862485328754 Result: is: -2.45935764451348335183e-01 -0xf.bd695c4f0f29c1800000p-6 should be: -2.45935764451348335197e-01 -0xf.bd695c4f0f29c1900000p-6 difference: 1.35525271560688054251e-20 0x8.00000000000000000000p-69 ulp : 1.0000 max.ulp : 0.0000 I'm also seeing intermittent failures in 2 other tests: make[2]: *** [/temptools/src/glibc-build/posix/tst-vfork3.out] Error 1 script 1 script 1 script 1 script 1 script 1 script 2 script 2 script 2 script 2 script 2 script 3 script 3 script 3 script 3 script 3 echo failed with status 512 make[2]: *** [/temptools/src/glibc-build/rt/tst-cpuclock2.out] Error 1 live thread clock ffffa08e resolution 0.000000001 live thread before sleep => 0.000000000 self thread before sleep => 0.004000000 live thread after sleep => 0.500000000 self thread after sleep => 0.004000000 clock_nanosleep on process slept 96000000 (outside reasonable range) Maybe the math failures are GCC bugs? Dunno. The 2 intermittent failures might be kernel bugs, not sure. Anyhow, just thought I'd post my results FYI. Unless I'm mistaken, I note that Fedora rawhide hasn't yet upgraded to GCC-4.2 so it's possible Jakub is yet to see some of these failures. Regards Greg |
On 5/20/07, Greg Schafer <[hidden email]> wrote:
> Compiling Glibc-2.6 release with GCC-4.2 and HJL Binutils-2.17.50.0.16 I'm > seeing testsuite failures which seem to depend upon the -march switch and/or > -O optimization level as follows: > > Maybe the math failures are GCC bugs? Dunno. The 2 intermittent failures > might be kernel bugs, not sure. Anyhow, just thought I'd post my results > FYI. Unless I'm mistaken, I note that Fedora rawhide hasn't yet upgraded to > GCC-4.2 so it's possible Jakub is yet to see some of these failures. Please file bugs against gcc, and glibc. http://gcc.gnu.org/bugzilla/ http://sources.redhat.com/bugzilla/enter_bug.cgi?product=glibc Bug Writing Help: http://sources.redhat.com/bugzilla/bugwritinghelp.html http://gcc.gnu.org/bugs.html Thanks! Cheers, Carlos. |
In reply to this post by Greg Schafer
On Sun, May 20, 2007 at 06:57:11PM +1000, Greg Schafer wrote:
> make[2]: *** [/home/pkgmgr/glibc-build/math/test-ildoubl.out] Error 1 > make[2]: *** [/home/pkgmgr/glibc-build/math/test-ldouble.out] Error 1 Attached patch mirrors past practice for this kind of thing and makes the above go away. Now with CFLAGS="-O3 -march=i686" I'm down to: make[2]: *** [/home/pkgmgr/glibc-build/math/test-double.out] Error 1 testing double (without inline functions) Failure: Real part of: cacos (-10.0 + inf i) == pi/2 - inf i: Exception "Invalid operation" set Failure: Real part of: cacosh (inf - inf i) == inf - pi/4 i: Exception "Invalid operation" set Failure: Real part of: cacosh (-10.0 - inf i) == inf - pi/2 i: Exception "Invalid operation" set Failure: Real part of: cacosh (0 + inf i) == inf + pi/2 i: Exception "Invalid operation" set Regards Greg libm-test-ulps.patch (602 bytes) Download Attachment |
On Mon, May 21, 2007 at 09:03:53AM +1000, Greg Schafer wrote:
> Now with CFLAGS="-O3 -march=i686" I'm down to: > > make[2]: *** [/home/pkgmgr/glibc-build/math/test-double.out] Error 1 Interestingly, the above test now passes when I use "-O3 -march=native". "native" is equivalent to "k8" on this box. |
In reply to this post by Greg Schafer
On Sun, May 20, 2007 at 06:57:11PM +1000, Greg Schafer wrote:
> I'm also seeing intermittent failures in 2 other tests: > > make[2]: *** [/temptools/src/glibc-build/posix/tst-vfork3.out] Error 1 <...> > script 3 > echo failed with status 512 Please ignore this one. It was pilot error. Sorry for the noise. |
Free forum by Nabble | Edit this page |