https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71462
--- Comment #2 from Richard Biener <rguenth at gcc dot gnu.org> --- #4 0x0000000001035c30 in find_uses_to_rename (changed_bbs=0x26e1748, use_blocks=0x281d750, need_phis=0x2792450, use_flags=1) at /space/rguenther/src/svn/trunk/gcc/tree-ssa-loop-manip.c:476 476 need_phis, use_flags); (gdb) l 471 bitmap_iterator bi; 472 473 if (changed_bbs) 474 EXECUTE_IF_SET_IN_BITMAP (changed_bbs, 0, index, bi) 475 find_uses_to_rename_bb (BASIC_BLOCK_FOR_FN (cfun, index), use_blocks, 476 need_phis, use_flags); hits a block in the bitmap that was removed. This bitmap is filled by unloop called in unloop_loops and after that we remove paths that may cause such blocks to become removed... It's probably easiest to robustify the above code instead.