http://gcc.gnu.org/bugzilla/show_bug.cgi?id=50764
vries at gcc dot gnu.org changed: What |Removed |Added ---------------------------------------------------------------------------- Component|tree-optimization |rtl-optimization --- Comment #7 from vries at gcc dot gnu.org 2011-10-29 12:28:23 UTC --- Using this patch, the dead label introduced by cfg_layout_finalize is removed: ... Index: gcc/bb-reorder.c =================================================================== --- gcc/bb-reorder.c (revision 180521) +++ gcc/bb-reorder.c (working copy) @@ -2328,6 +2328,7 @@ rest_of_handle_reorder_blocks (void) if (bb->next_bb != EXIT_BLOCK_PTR) bb->aux = bb->next_bb; cfg_layout_finalize (); + cleanup_cfg (0); /* Add NOTE_INSN_SWITCH_TEXT_SECTIONS notes. */ insert_section_boundary_note (); ... and the assert triggers for -O2 -fsched2-use-superblocks -fno-tree-tail-merge. Changing component to rtl-optimization.