summaryrefslogtreecommitdiff
path: root/gcc/bb-reorder.c
diff options
context:
space:
mode:
authorsteven <steven@138bc75d-0d04-0410-961f-82ee72b054a4>2013-04-16 06:24:47 +0000
committersteven <steven@138bc75d-0d04-0410-961f-82ee72b054a4>2013-04-16 06:24:47 +0000
commit35f3420bf3cdc1f49d4c153b2b812edbf360fe01 (patch)
treee33803d286079623c109356f39eb59a4ec4cadeb /gcc/bb-reorder.c
parentc9c4c1ab67fcd3a018e5c6d47bb283e9be18f403 (diff)
downloadgcc-35f3420bf3cdc1f49d4c153b2b812edbf360fe01.tar.gz
PR middle-end/43631
* emit-rtl.c (make_note_raw): New function. (link_insn_into_chain): New static inline function. (add_insn): Use it. (add_insn_before, add_insn_after): Factor insn chain linking code... (add_insn_before_nobb, add_insn_after_nobb): ...here, new functions using link_insn_into_chain. (note_outside_basic_block_p): New helper function for emit_note_after and emit_note_before. (emit_note_after): Use nobb variant of add_insn_after if the note should not be contained in a basic block. (emit_note_before): Use nobb variant of add_insn_before if the note should not be contained in a basic block. (emit_note_copy): Use make_note_raw. (emit_note): Likewise. * bb-reorder.c (insert_section_boundary_note): Remove hack to set BLOCK_FOR_INSN to NULL manually for NOTE_INSN_SWITCH_TEXT_SECTIONS. * jump.c (cleanup_barriers): Use reorder_insns_nobb to avoid making the moved barrier the tail of the basic block it follows. * var-tracking.c (pass_variable_tracking): Add TODO_verify_flow. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@197994 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/bb-reorder.c')
-rw-r--r--gcc/bb-reorder.c7
1 files changed, 1 insertions, 6 deletions
diff --git a/gcc/bb-reorder.c b/gcc/bb-reorder.c
index 7605e17e7ef..abb2e391983 100644
--- a/gcc/bb-reorder.c
+++ b/gcc/bb-reorder.c
@@ -2173,7 +2173,6 @@ static void
insert_section_boundary_note (void)
{
basic_block bb;
- rtx new_note;
int first_partition = 0;
if (!flag_reorder_blocks_and_partition)
@@ -2185,11 +2184,7 @@ insert_section_boundary_note (void)
first_partition = BB_PARTITION (bb);
if (BB_PARTITION (bb) != first_partition)
{
- new_note = emit_note_before (NOTE_INSN_SWITCH_TEXT_SECTIONS,
- BB_HEAD (bb));
- /* ??? This kind of note always lives between basic blocks,
- but add_insn_before will set BLOCK_FOR_INSN anyway. */
- BLOCK_FOR_INSN (new_note) = NULL;
+ emit_note_before (NOTE_INSN_SWITCH_TEXT_SECTIONS, BB_HEAD (bb));
break;
}
}