aboutsummaryrefslogtreecommitdiff
path: root/gcc/cfgexpand.c
diff options
context:
space:
mode:
authorDavid Malcolm <dmalcolm@redhat.com>2014-08-18 20:48:17 +0000
committerDavid Malcolm <dmalcolm@gcc.gnu.org>2014-08-18 20:48:17 +0000
commit190bea879f9e6c85aa7a8d191e09b1ef1e85ac26 (patch)
treeb4356fbacb07e1edc905225a3dabc568905187a7 /gcc/cfgexpand.c
parentbb3fff01365409e16fd7b9b94f4130c21279f8b4 (diff)
downloadgcc-190bea879f9e6c85aa7a8d191e09b1ef1e85ac26.zip
gcc-190bea879f9e6c85aa7a8d191e09b1ef1e85ac26.tar.gz
gcc-190bea879f9e6c85aa7a8d191e09b1ef1e85ac26.tar.bz2
Split BB_HEAD et al into BB_HEAD/SET_BB_HEAD variants
gcc/ 2014-08-18 David Malcolm <dmalcolm@redhat.com> * basic-block.h (BB_HEAD): Split macro in two: the existing one, for rvalues, and... (SET_BB_HEAD): New macro, for use as a lvalue. (BB_END, SET_BB_END): Likewise. (BB_HEADER, SET_BB_HEADER): Likewise. (BB_FOOTER, SET_BB_FOOTER): Likewise. * bb-reorder.c (add_labels_and_missing_jumps): Convert lvalue use of BB_* macros into SET_BB_* macros. (fix_crossing_unconditional_branches): Likewise. * caller-save.c (save_call_clobbered_regs): Likewise. (insert_one_insn): Likewise. * cfgbuild.c (find_bb_boundaries): Likewise. * cfgcleanup.c (merge_blocks_move_successor_nojumps): Likewise. (outgoing_edges_match): Likewise. (try_optimize_cfg): Likewise. * cfgexpand.c (expand_gimple_cond): Likewise. (expand_gimple_tailcall): Likewise. (expand_gimple_basic_block): Likewise. (construct_exit_block): Likewise. * cfgrtl.c (delete_insn): Likewise. (create_basic_block_structure): Likewise. (rtl_delete_block): Likewise. (rtl_split_block): Likewise. (emit_nop_for_unique_locus_between): Likewise. (rtl_merge_blocks): Likewise. (block_label): Likewise. (try_redirect_by_replacing_jump): Likewise. (emit_barrier_after_bb): Likewise. (fixup_abnormal_edges): Likewise. (record_effective_endpoints): Likewise. (relink_block_chain): Likewise. (fixup_reorder_chain): Likewise. (fixup_fallthru_exit_predecessor): Likewise. (cfg_layout_duplicate_bb): Likewise. (cfg_layout_split_block): Likewise. (cfg_layout_delete_block): Likewise. (cfg_layout_merge_blocks): Likewise. * combine.c (update_cfg_for_uncondjump): Likewise. * emit-rtl.c (add_insn_after): Likewise. (remove_insn): Likewise. (reorder_insns): Likewise. (emit_insn_after_1): Likewise. * haifa-sched.c (get_ebb_head_tail): Likewise. (restore_other_notes): Likewise. (move_insn): Likewise. (sched_extend_bb): Likewise. (fix_jump_move): Likewise. * ifcvt.c (noce_process_if_block): Likewise. (dead_or_predicable): Likewise. * ira.c (update_equiv_regs): Likewise. * reg-stack.c (change_stack): Likewise. * sel-sched-ir.c (sel_move_insn): Likewise. * sel-sched.c (move_nop_to_previous_block): Likewise. * config/c6x/c6x.c (hwloop_optimize): Likewise. * config/ia64/ia64.c (emit_predicate_relation_info): Likewise. / 2014-08-18 David Malcolm <dmalcolm@redhat.com> * rtx-classes-status.txt (TODO): Add SET_BB_HEAD, SET_BB_END, SET_BB_HEADER, SET_BB_FOOTER From-SVN: r214121
Diffstat (limited to 'gcc/cfgexpand.c')
-rw-r--r--gcc/cfgexpand.c22
1 files changed, 11 insertions, 11 deletions
diff --git a/gcc/cfgexpand.c b/gcc/cfgexpand.c
index f6da5d6..1235ff1 100644
--- a/gcc/cfgexpand.c
+++ b/gcc/cfgexpand.c
@@ -2170,9 +2170,9 @@ expand_gimple_cond (basic_block bb, gimple stmt)
set_curr_insn_location (false_edge->goto_locus);
emit_jump (label_rtx_for_bb (false_edge->dest));
- BB_END (bb) = last;
+ SET_BB_END (bb) = last;
if (BARRIER_P (BB_END (bb)))
- BB_END (bb) = PREV_INSN (BB_END (bb));
+ SET_BB_END (bb) = PREV_INSN (BB_END (bb));
update_bb_for_insn (bb);
new_bb = create_basic_block (NEXT_INSN (last), get_last_insn (), bb);
@@ -2186,7 +2186,7 @@ expand_gimple_cond (basic_block bb, gimple stmt)
new_edge->probability = REG_BR_PROB_BASE;
new_edge->count = new_bb->count;
if (BARRIER_P (BB_END (new_bb)))
- BB_END (new_bb) = PREV_INSN (BB_END (new_bb));
+ SET_BB_END (new_bb) = PREV_INSN (BB_END (new_bb));
update_bb_for_insn (new_bb);
maybe_dump_rtl_for_gimple_stmt (stmt, last2);
@@ -3485,7 +3485,7 @@ expand_gimple_tailcall (basic_block bb, gimple stmt, bool *can_fallthru)
| EDGE_SIBCALL);
e->probability += probability;
e->count += count;
- BB_END (bb) = last;
+ SET_BB_END (bb) = last;
update_bb_for_insn (bb);
if (NEXT_INSN (last))
@@ -3494,7 +3494,7 @@ expand_gimple_tailcall (basic_block bb, gimple stmt, bool *can_fallthru)
last = BB_END (bb);
if (BARRIER_P (last))
- BB_END (bb) = PREV_INSN (last);
+ SET_BB_END (bb) = PREV_INSN (last);
}
maybe_dump_rtl_for_gimple_stmt (stmt, last2);
@@ -4955,15 +4955,15 @@ expand_gimple_basic_block (basic_block bb, bool disable_tail_calls)
/* Java emits line number notes in the top of labels.
??? Make this go away once line number notes are obsoleted. */
- BB_HEAD (bb) = NEXT_INSN (last);
+ SET_BB_HEAD (bb) = NEXT_INSN (last);
if (NOTE_P (BB_HEAD (bb)))
- BB_HEAD (bb) = NEXT_INSN (BB_HEAD (bb));
+ SET_BB_HEAD (bb) = NEXT_INSN (BB_HEAD (bb));
note = emit_note_after (NOTE_INSN_BASIC_BLOCK, BB_HEAD (bb));
maybe_dump_rtl_for_gimple_stmt (stmt, last);
}
else
- note = BB_HEAD (bb) = emit_note (NOTE_INSN_BASIC_BLOCK);
+ note = SET_BB_HEAD (bb) = emit_note (NOTE_INSN_BASIC_BLOCK);
NOTE_BASIC_BLOCK (note) = bb;
@@ -5246,7 +5246,7 @@ expand_gimple_basic_block (basic_block bb, bool disable_tail_calls)
last = PREV_INSN (last);
if (JUMP_TABLE_DATA_P (last))
last = PREV_INSN (PREV_INSN (last));
- BB_END (bb) = last;
+ SET_BB_END (bb) = last;
update_bb_for_insn (bb);
@@ -5348,7 +5348,7 @@ construct_exit_block (void)
return;
/* While emitting the function end we could move end of the last basic
block. */
- BB_END (prev_bb) = orig_end;
+ SET_BB_END (prev_bb) = orig_end;
while (NEXT_INSN (head) && NOTE_P (NEXT_INSN (head)))
head = NEXT_INSN (head);
/* But make sure exit_block starts with RETURN_LABEL, otherwise the
@@ -5360,7 +5360,7 @@ construct_exit_block (void)
while (NEXT_INSN (head) != return_label)
{
if (!NOTE_P (NEXT_INSN (head)))
- BB_END (prev_bb) = NEXT_INSN (head);
+ SET_BB_END (prev_bb) = NEXT_INSN (head);
head = NEXT_INSN (head);
}
}