[Bug tree-optimization/51557] New: [4.7 Regression] ICE: in maybe_record_trace_start, at dwarf2cfi.c:2244 with custom flags

zsojka at seznam dot cz gcc-bugzilla@gcc.gnu.org
Wed Dec 14 22:23:00 GMT 2011


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: unassigned@gcc.gnu.org
        ReportedBy: zsojka@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



More information about the Gcc-bugs mailing list