jump.c (reset_insn_reg_label_operand_notes): New function, split out from ...
authorSteven Bosscher <steven@gcc.gnu.org>
Sun, 24 Nov 2013 19:15:36 +0000 (19:15 +0000)
committerSteven Bosscher <steven@gcc.gnu.org>
Sun, 24 Nov 2013 19:15:36 +0000 (19:15 +0000)
commit57d6c446c787d1dacd89c5cd504747d6857ad494
treef5db0208687505d3114934ff0a9f353f86b4947f
parent58b07297511c491cdd3feab39fcb0d84713f736e
jump.c (reset_insn_reg_label_operand_notes): New function, split out from ...

* jump.c (reset_insn_reg_label_operand_notes): New function,
split out from ...
(init_label_info): ... here.  Reset LABEL_NUSES in cfglayout mode.
* cfgcleanup.c (delete_dead_jump_tables_between): New function,
split out from ...
(delete_dead_jumptables): ... here.  Handle cfglayout mode.
(cleanup_cfg): Delete dead jump tables in cfglayout mode if an
expensive CFG cleanup is called for.
* cfgrtl.c (fixup_reorder_chain): Remove BARRIERs from fallthru paths.
(cfg_layout_finalize): Delete dead jump tables before re-building
the insns chain.
* ira.c (ira): Rebuild jump labels *after* deleting unreachable
basic blocks, not before.
* loop-init.c (rtl_loop_done): Call for an expensive CFG cleanup.

* modulo-sched.c (sms_schedule): Do not look for BARRIERs in the
insns chain of a scheduling extended basic block, they cannot appear
there in cfglayout mode.

From-SVN: r205337
gcc/ChangeLog
gcc/cfgcleanup.c
gcc/cfgrtl.c
gcc/ira.c
gcc/jump.c
gcc/loop-init.c
gcc/modulo-sched.c