http://gcc.gnu.org/bugzilla/show_bug.cgi?id=51557
Bug #: 51557 Summary: [4.7 Regression] ICE: in maybe_record_trace_start, at dwarf2cfi.c:2244 with custom flags Classification: Unclassified Product: gcc Version: 4.7.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: tree-optimization AssignedTo: unassig...@gcc.gnu.org ReportedBy: zso...@seznam.cz Host: x86_64-pc-linux-gnu Target: x86_64-pc-linux-gnu Created attachment 26089 --> http://gcc.gnu.org/bugzilla/attachment.cgi?id=26089 reduced testcase Compiler output: $ gcc -Os -fno-asynchronous-unwind-tables -g -fsel-sched-pipelining -fselective-scheduling2 testcase.c testcase.c: In function 'synth': testcase.c:13:1: internal compiler error: in maybe_record_trace_start, at dwarf2cfi.c:2244 Please submit a full bug report, with preprocessed source if appropriate. See <http://gcc.gnu.org/bugs.html> for instructions. (gdb) list 2239 { 2240 2241 /* We ought to have the same state incoming to a given trace no 2242 matter how we arrive at the trace. Anything else means we've 2243 got some kind of optimization error. */ 2244 gcc_checking_assert (cfi_row_equal_p (cur_row, ti->beg_row)); 2245 2246 /* The args_size is allowed to conflict if it isn't actually used. */ 2247 if (ti->beg_true_args_size != args_size) 2248 ti->args_size_undefined = true; (gdb) bt #0 fancy_abort (file=0x124de40 "/mnt/svn/gcc-trunk/gcc/dwarf2cfi.c", line=2244, function=0x124f160 "maybe_record_trace_start") at /mnt/svn/gcc-trunk/gcc/diagnostic.c:898 #1 0x00000000006f2434 in maybe_record_trace_start (start=Unhandled dwarf expression opcode 0xf3 ) at /mnt/svn/gcc-trunk/gcc/dwarf2cfi.c:2244 #2 0x00000000006f2ff9 in scan_trace (trace=Unhandled dwarf expression opcode 0xf3 ) at /mnt/svn/gcc-trunk/gcc/dwarf2cfi.c:2421 #3 0x00000000006f43cd in create_cfi_notes () at /mnt/svn/gcc-trunk/gcc/dwarf2cfi.c:2551 #4 execute_dwarf2_frame () at /mnt/svn/gcc-trunk/gcc/dwarf2cfi.c:2909 #5 0x00000000008f8ee5 in execute_one_pass (pass=0x17beea0) at /mnt/svn/gcc-trunk/gcc/passes.c:2079 #6 0x00000000008f9285 in execute_pass_list (pass=0x17beea0) at /mnt/svn/gcc-trunk/gcc/passes.c:2134 #7 0x00000000008f9297 in execute_pass_list (pass=0x17bfe80) at /mnt/svn/gcc-trunk/gcc/passes.c:2135 #8 0x00000000008f9297 in execute_pass_list (pass=0x17bfee0) at /mnt/svn/gcc-trunk/gcc/passes.c:2135 #9 0x0000000000a5acfe in tree_rest_of_compilation (fndecl=0x7ffff5672d00) at /mnt/svn/gcc-trunk/gcc/tree-optimize.c:421 #10 0x00000000006ada3a in cgraph_expand_function (node=0x7ffff55637e0) at /mnt/svn/gcc-trunk/gcc/cgraphunit.c:1818 #11 0x00000000006af7dc in cgraph_expand_all_functions () at /mnt/svn/gcc-trunk/gcc/cgraphunit.c:1885 #12 cgraph_optimize () at /mnt/svn/gcc-trunk/gcc/cgraphunit.c:2198 #13 0x00000000006aff4a in cgraph_finalize_compilation_unit () at /mnt/svn/gcc-trunk/gcc/cgraphunit.c:1327 #14 0x000000000058d640 in c_write_global_declarations () at /mnt/svn/gcc-trunk/gcc/c-decl.c:10026 #15 0x00000000009ee0b4 in compile_file (argc=17, argv=0x7fffffffda58) at /mnt/svn/gcc-trunk/gcc/toplev.c:573 #16 do_compile (argc=17, argv=0x7fffffffda58) at /mnt/svn/gcc-trunk/gcc/toplev.c:1928 #17 toplev_main (argc=17, argv=0x7fffffffda58) at /mnt/svn/gcc-trunk/gcc/toplev.c:2004 #18 0x00007ffff61570ed in __libc_start_main () from /lib64/libc.so.6 #19 0x0000000000570e11 in _start () Tested revisions: r182321 - crash r178498 - crash 4.6 r180325 - OK