I just tried to compile this file with the GNU C compiler version 4.4 snapshot 20090109 using valgrind and the flags -O3 march=native on a amd64 box.
The debug output was ==20395== Invalid read of size 2 ==20395== at 0xAFDA6E: T.911 (ira-costs.c:590) ==20395== by 0xAFE0F0: T.910 (ira-costs.c:987) ==20395== by 0xAFE27A: process_bb_node_for_costs (ira-costs.c:1034) ==20395== by 0xAF66DA: ira_traverse_loop_tree (ira-build.c:1390) ==20395== by 0xAFC207: ira_costs (ira-costs.c:1170) ==20395== by 0xAFAA17: ira_build (ira-build.c:2775) ==20395== by 0xAF4F19: rest_of_handle_ira (ira.c:1926) ==20395== by 0x664FFC: execute_one_pass (passes.c:1279) ==20395== by 0x665244: execute_pass_list (passes.c:1328) ==20395== by 0x66525C: execute_pass_list (passes.c:1329) ==20395== by 0x75BA9B: tree_rest_of_compilation (tree-optimize.c:419) ==20395== by 0x8DB993: cgraph_expand_function (cgraphunit.c:1047) ==20395== Address 0x7216754 is 804 bytes inside a block of size 1,352 free'd ==20395== at 0x4C243AF: free (in /usr/lib64/valgrind/amd64-linux/vgpreload_memcheck.so) ==20395== by 0x68CEF1: init_regs (regclass.c:687) ==20395== by 0xAAE762: gimple_expand_cfg (cfgexpand.c:2324) ==20395== by 0x664FFC: execute_one_pass (passes.c:1279) ==20395== by 0x665244: execute_pass_list (passes.c:1328) ==20395== by 0x75BA9B: tree_rest_of_compilation (tree-optimize.c:419) ==20395== by 0x8DB993: cgraph_expand_function (cgraphunit.c:1047) ==20395== by 0x8DD6F4: cgraph_optimize (cgraphunit.c:1106) ==20395== by 0x416C62: c_write_global_declarations (c-decl.c:8074) ==20395== by 0x70C36C: toplev_main (toplev.c:981) I suspect that valgrind may have found a problem. -- Summary: valgrind find problem with -O3 -march=native Product: gcc Version: 4.4.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: c AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: dcb314 at hotmail dot com GCC host triplet: x86_64-suse-linux http://gcc.gnu.org/bugzilla/show_bug.cgi?id=38869