Current mainline gcc appears to miscompile FFTW: wget http://fftw.org/fftw-3.1.tar.gz tar xvzf fftw-3.1.tar.gz cd fftw-3.1 /scratch/fftw-3.1> gcc -v Using built-in specs. Target: i686-pc-linux-gnu Configured with: /scratch/gcc/configure --quiet --prefix=/afs/mpa/data/martin/ugcc --enable-languages=c++,fortran --with-gmp=/usr/local/appl/gmp-4.1.4 --enable-checking=release --without-makeinfo Thread model: posix gcc version 4.2.0 20060301 (experimental) /scratch/fftw-3.1> ./configure --enable-portable-binary [...] /scratch/fftw-3.1> make check [...] Executing "/scratch/fftw-3.1/tests/bench --verbose=1 --verify ok12o10x6e10x11o00v7 --verify ik12o10x 6e10x11o00v7 --verify obr3v79 --verify ibr3v79 --verify ofr3v79 --verify ifr3v79 --verify //obc3v79 -- verify //ibc3v79 --verify //ofc3v79 --verify //ifc3v79 --verify obc3v79 --verify ibc3v79 --verify ofc3 v79 --verify ifc3v79 --verify ok2hx5e00x3e10x7o11*6 --verify ik2hx5e00x3e10x7o11*6 --verify //obr10x8x 33 --verify //ofr10x8x33 --verify obr10x8x33 --verify ibr10x8x33 --verify ofr10x8x33 --verify ifr10x8x 33 --verify //obc10x8x33 --verify //ibc10x8x33 --verify //ofc10x8x33 --verify //ifc10x8x33 --verify ob c10x8x33 --verify ibc10x8x33 --verify ofc10x8x33 --verify ifc10x8x33 --verify ok11o00*45 --verify ik11 o00*45 --verify obr6x4v7 --verify ibr6x4v7 --verify ofr6x4v7 --verify ifr6x4v7 --verify //obc6x4v7 --v erify //ibc6x4v7 --verify //ofc6x4v7 --verify //ifc6x4v7 --verify obc6x4v7 --verify ibc6x4v7 --verify ofc6x4v7 --verify ifc6x4v7" 2.65417e-16 4.02852e-15 3.09912e-16 2.76156e-16 2.52972e-15 2.83568e-16 2.17601e-16 3.37283e-16 2.97118e-16 2.03315e-16 3.37283e-16 2.49555e-16 2.33093e-16 1.49904e-16 3.95845e-16 2.09027e-16 1.49904e-16 3.70199e-16 1.94987e-16 2.24855e-16 4.92525e-16 1.97747e-16 2.24855e-16 5.28462e-16 1.71722e-16 2.24855e-16 4.74119e-16 2.0242e-16 2.24855e-16 5.51321e-16 1.85902e-16 2.24855e-16 4.94966e-16 2.13346e-16 2.24855e-16 4.9348e-16 2.12188e-16 2.24855e-16 5.26624e-16 2.12652e-16 2.24855e-16 4.99894e-16 2.75703e-16 2.60691e-15 2.91529e-16 4.46832e-16 4.43175e-15 3.46477e-16 FAILED /scratch/fftw-3.1/tests/bench: --verify ok12o10x6e10x11o00v7 --verify ik12o10x6e10x11o00v7 --v erify obr3v79 --verify ibr3v79 --verify ofr3v79 --verify ifr3v79 --verify //obc3v79 --verify //ibc3v79 --verify //ofc3v79 --verify //ifc3v79 --verify obc3v79 --verify ibc3v79 --verify ofc3v79 --verify ifc 3v79 --verify ok2hx5e00x3e10x7o11*6 --verify ik2hx5e00x3e10x7o11*6 --verify //obr10x8x33 --verify //of r10x8x33 --verify obr10x8x33 --verify ibr10x8x33 --verify ofr10x8x33 --verify ifr10x8x33 --verify //ob c10x8x33 --verify //ibc10x8x33 --verify //ofc10x8x33 --verify //ifc10x8x33 --verify obc10x8x33 --verif y ibc10x8x33 --verify ofc10x8x33 --verify ifc10x8x33 --verify ok11o00*45 --verify ik11o00*45 --verify obr6x4v7 --verify ibr6x4v7 --verify ofr6x4v7 --verify ifr6x4v7 --verify //obc6x4v7 --verify //ibc6x4v7 --verify //ofc6x4v7 --verify //ifc6x4v7 --verify obc6x4v7 --verify ibc6x4v7 --verify ofc6x4v7 --verif y ifc6x4v7 received signal 11 make[2]: *** [check-local] Error 1 make[2]: Leaving directory `/scratch/fftw-3.1/tests' make[1]: *** [check-am] Error 2 make[1]: Leaving directory `/scratch/fftw-3.1/tests' make: *** [check-recursive] Error 1
The current 4.1 and 4.0 branches pass the FFTW tests. Gomp-branch fails. I know that this is not a very useful bug report, but I have no idea how to reduce the problem. A regression hunt might at least localise the problematic commit and help to decide whether gcc or FFTW is to blame. -- Summary: [4.2 regression] gcc miscompiles FFTW 3.1 Product: gcc Version: 4.2.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: c AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: martin at mpa-garching dot mpg dot de GCC build triplet: i686-pc-linux-gnu GCC host triplet: i686-pc-linux-gnu GCC target triplet: i686-pc-linux-gnu http://gcc.gnu.org/bugzilla/show_bug.cgi?id=26528