http://gcc.gnu.org/bugzilla/show_bug.cgi?id=56950
--- Comment #2 from Steven Bosscher <steven at gcc dot gnu.org> 2013-04-14 15:09:20 UTC --- I am testing this fix: Index: haifa-sched.c =================================================================== --- haifa-sched.c (revision 197942) +++ haifa-sched.c (working copy) @@ -7431,14 +7431,14 @@ sched_extend_bb (void) /* The following is done to keep current_sched_info->next_tail non null. */ insn = BB_END (EXIT_BLOCK_PTR->prev_bb); - if (NEXT_INSN (insn) == 0 + if (next_nondebug_insn (insn) == 0 || (!NOTE_P (insn) && !LABEL_P (insn) /* Don't emit a NOTE if it would end up before a BARRIER. */ && !BARRIER_P (NEXT_INSN (insn)))) { rtx note = emit_note_after (NOTE_INSN_DELETED, insn); - /* Make insn appear outside BB. */ + /* Make note appear outside BB. */ set_block_for_insn (note, NULL); BB_END (EXIT_BLOCK_PTR->prev_bb) = insn; }