Polyhedron benchmark's mdbx (http://www.polyhedron.co.uk/MFL6VW74649)
gfortran -fprofile-generate -ffast-math -march=opteron -ftree-loop-linear -O3 mdbx.f90 ./a.out gfortran -fprofile-use -ffast-math -march=opteron -ftree-loop-linear -O3 mdbx.f90 gives an segmentation fault. No segfault without -ffast-math or without -ftree-loop-linear Valgrind reports: ==23369== Invalid read of size 8 ==23369== at 0x4D05B3: ggc_set_mark (ggc-page.c:579) ==23369== by 0x48ABB4: gt_ggc_mx_lang_tree_node (gt-fortran-f95-lang.h:49) ==23369== by 0x62A03C: gt_ggc_mx_rtx_def (gtype-desc.c:1500) ==23369== by 0x48ADB6: gt_ggc_mx_lang_tree_node (gt-fortran-f95-lang.h:204) ==23369== by 0x6228E4: gt_ggc_mx_varpool_node (gtype-desc.c:118) ==23369== by 0x5F9826: ggc_mark_roots (ggc-common.c:107) ==23369== by 0x4D1097: ggc_collect (ggc-page.c:1941) ==23369== by 0x66DC04: execute_todo (passes.c:1050) ==23369== by 0x66DE90: execute_one_pass (passes.c:1304) ==23369== by 0x66E064: execute_pass_list (passes.c:1330) ==23369== by 0x66E07C: execute_pass_list (passes.c:1331) ==23369== by 0x66E07C: execute_pass_list (passes.c:1331) ==23369== Address 0x8 is not stack'd, malloc'd or (recently) free'd mdbx.f90: In function 'mstep': mdbx.f90:822: internal compiler error: Segmentation fault -- Summary: [4.4 Regression] ICE with -fprofile-use and -ftree-loop- linear Product: gcc Version: 4.4.0 Status: UNCONFIRMED Keywords: ice-on-valid-code Severity: normal Priority: P3 Component: middle-end AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: burnus at gcc dot gnu dot org http://gcc.gnu.org/bugzilla/show_bug.cgi?id=37151