http://gcc.gnu.org/bugzilla/show_bug.cgi?id=59233
--- Comment #5 from Teresa Johnson <tejohnson at google dot com> --- Reproduced with cross compiler: $ /usr/local/google/home/tejohnson/gcc_trunk_9_x86_64-apple-darwin10/bld-gcc/./gcc/xg++ -B/usr/local/google/home/tejohnson/gcc_trunk_9_x86_64-apple-darwin10/bld-gcc/./gcc/ -B/usr/local/google/home/tejohnson/gcc_trunk_9_x86_64-apple-darwin10/install/x86_64-apple-darwin10/bin/ -B/usr/local/google/home/tejohnson/gcc_trunk_9_x86_64-apple-darwin10/install/x86_64-apple-darwin10/lib/ -isystem /usr/local/google/home/tejohnson/gcc_trunk_9_x86_64-apple-darwin10/install/x86_64-apple-darwin10/include -isystem /usr/local/google/home/tejohnson/gcc_trunk_9_x86_64-apple-darwin10/install/x86_64-apple-darwin10/sys-include -c -m32 -Os pr52772.C pr52772.C: In member function ‘int c8::tria(c7*, c5*)’: pr52772.C:85:1: internal compiler error: Segmentation fault } ^ 0xb657af crash_signal /usr/local/google/home/tejohnson/gcc_trunk_9/gcc/toplev.c:336 0xff4e1d old_insns_match_p /usr/local/google/home/tejohnson/gcc_trunk_9/gcc/cfgcleanup.c:1128 0xff4e1d old_insns_match_p /usr/local/google/home/tejohnson/gcc_trunk_9/gcc/cfgcleanup.c:1093 0xff5943 outgoing_edges_match /usr/local/google/home/tejohnson/gcc_trunk_9/gcc/cfgcleanup.c:1754 0xff5943 try_crossjump_to_edge /usr/local/google/home/tejohnson/gcc_trunk_9/gcc/cfgcleanup.c:1927 0xff6ed4 try_crossjump_bb /usr/local/google/home/tejohnson/gcc_trunk_9/gcc/cfgcleanup.c:2252 0xff6ed4 try_crossjump_bb /usr/local/google/home/tejohnson/gcc_trunk_9/gcc/cfgcleanup.c:2138 0xff7a6c try_optimize_cfg /usr/local/google/home/tejohnson/gcc_trunk_9/gcc/cfgcleanup.c:2808 0xff7a6c cleanup_cfg(int) /usr/local/google/home/tejohnson/gcc_trunk_9/gcc/cfgcleanup.c:3014 0xff9836 execute_jump2 /usr/local/google/home/tejohnson/gcc_trunk_9/gcc/cfgcleanup.c:3123 0xff9836 execute /usr/local/google/home/tejohnson/gcc_trunk_9/gcc/cfgcleanup.c:3152 Please submit a full bug report, with preprocessed source if appropriate. Please include the complete backtrace with any bug report. See <http://gcc.gnu.org/bugs.html> for instructions. In debugger: Program received signal SIGSEGV, Segmentation fault. old_insns_match_p (i2=0x7ffff6390cc0, i1=0x7ffff6390d00, mode=2) at /usr/local/google/home/tejohnson/gcc_trunk_9/gcc/cfgcleanup.c:1128 1128 if (GET_CODE (p1) != GET_CODE (p2)) (gdb) p p1 $1 = (rtx) 0x0 (gdb) p p2 $2 = (rtx) 0x0 (gdb) p i1 $3 = (rtx) 0x7ffff6390d00 (gdb) p i2 $4 = (rtx) 0x7ffff6390cc0 (gdb) p debug_rtx(i1) (note 170 134 58 7 NOTE_INSN_DELETED) $5 = void (gdb) p debug_rtx(i2) (note 169 130 87 11 NOTE_INSN_DELETED) $6 = void So it doesn't handle NOTE_INSN_DELETED. Looking at the caller: (gdb) up #1 old_insns_match_p (mode=2, i1=0x7ffff6390d00, i2=0x7ffff6390cc0) at /usr/local/google/home/tejohnson/gcc_trunk_9/gcc/cfgcleanup.c:1093 1093 old_insns_match_p (int mode ATTRIBUTE_UNUSED, rtx i1, rtx i2) (gdb) up #2 0x0000000000ff5944 in outgoing_edges_match (bb2=0x7ffff639b270, bb1=0x7ffff639b2d8, mode=2) at /usr/local/google/home/tejohnson/gcc_trunk_9/gcc/cfgcleanup.c:1754 1754 if (old_insns_match_p (mode, last1, last2) != dir_both) (gdb) p debug_bb(bb1) (code_label/s 131 154 134 7 17 "" [1 uses]) (note 134 131 170 7 [bb 7] NOTE_INSN_BASIC_BLOCK) (note 170 134 58 7 NOTE_INSN_DELETED) $11 = void (gdb) p debug_bb(bb2) (code_label/s 127 167 130 11 16 "" [1 uses]) (note 130 127 169 11 [bb 11] NOTE_INSN_BASIC_BLOCK) (note 169 130 87 11 NOTE_INSN_DELETED) $12 = void Looking to see what the right solution is here - either old_insns_match_p should handle this or caller outgoing_edges_match should avoid calling old_insns_match_p on these instruction types. Teresa On Thu, Nov 21, 2013 at 6:41 AM, tejohnson at google dot com <gcc-bugzi...@gcc.gnu.org> wrote: > http://gcc.gnu.org/bugzilla/show_bug.cgi?id=59233 > > --- Comment #3 from Teresa Johnson <tejohnson at google dot com> --- > On Thu, Nov 21, 2013 at 6:10 AM, dominiq at lps dot ens.fr > <gcc-bugzi...@gcc.gnu.org> wrote: >> http://gcc.gnu.org/bugzilla/show_bug.cgi?id=59233 >> >> --- Comment #2 from Dominique d'Humieres <dominiq at lps dot ens.fr> --- >> The ICE with -freorder-blocks-and-partition appeared between revisions 200946 >> (OK, 2013-07-14) and 201266 (ICE, 2013-07-26). >> > > Taking a look. Since I can't reproduce on x86-64-unknown-linux-gnu I > am going to build a cross-compiler for x86_64-apple-darwin10 and see > if I can reproduce it. I looked at the range of revisions you mention > above and there weren't any partitioning specific changes, so it is > probably a side effect of some other change in that range. > > Teresa > >> -- >> You are receiving this mail because: >> You are on the CC list for the bug. > > -- > You are receiving this mail because: > You are on the CC list for the bug.