The program induct.f90 of the Polyhedron testsuite, http://www.polyhedron.co.uk/pb05/polyhedron_benchmark_suite.html, runs about 10% slower under 4.3 than under 4.1.3 (20070430 prerelease SUSE Linux).
A cut-down testcase "test2.f90 (attachment 13611 of PR 32084) shows the same result. At least for the testcase, the original tree is almost identical for 4.3 and 4.1.3 which means that the difference must be the middle or backend. Timings (w/o "volatile"): a) gfortran -march=opteron -ffast-math -funroll-loops -ftree-vectorize -ftree-loop-linear -msse3 -O3 induct.f90: 51.65 [100%] vs 46.94 [ 90%] for gfortran 4.3 vs. 4.1.3 test2.f90: 4.60 [100%] vs 4.18 [ 91%] b) gfortran -m32 -march=opteron -ffast-math -funroll-loops -ftree-vectorize -ftree-loop-linear -O3 induct.f90: 61.41 [100%] vs 46.94 [ 76%] test2.f90: 5.45 [100%] vs 4.54 [ 83%] c) gfortran -m32 -march=opteron -ffast-math -funroll-loops -ftree-vectorize -ftree-loop-linear -msse3 -mfpmath=sse -O3 induct.f90: 46.12 [100%] vs 46.94 [102%] (4.3 is better :-) test2.f90: 4.14 [100%] vs 3.96 [ 96%] (For the other polyhedron test cases, the performance loss is less: tfft 4% slower, protein 3%, doduc 3%, channel 2%; in total 4.3 is faster, for fatigue 4.1.3 takes twice as long as 4.3. See: http://physik.fu-berlin.de/~tburnus/gcc-trunk/benchmark/#rt) -- Summary: 10% to 20% Performance Regression Between 4.1.3 and 4.3 Product: gcc Version: 4.3.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: target AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: burnus at gcc dot gnu dot org GCC target triplet: x86_64-unknown-linux-gnu OtherBugsDependingO 32084 nThis: http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32086