diff options
author | David Malcolm <dmalcolm@redhat.com> | 2014-08-19 00:54:22 +0000 |
---|---|---|
committer | David Malcolm <dmalcolm@gcc.gnu.org> | 2014-08-19 00:54:22 +0000 |
commit | 0f82e5c9fb49a2618233fcaca6db40fe856e66c1 (patch) | |
tree | 03e829aeeea83ad9c7386f8e4821c145e377edbe /gcc/cfgrtl.c | |
parent | 9c9afb6905bfc13e8ba14474fed4b476b0e7f837 (diff) | |
download | gcc-0f82e5c9fb49a2618233fcaca6db40fe856e66c1.zip gcc-0f82e5c9fb49a2618233fcaca6db40fe856e66c1.tar.gz gcc-0f82e5c9fb49a2618233fcaca6db40fe856e66c1.tar.bz2 |
Split NEXT_INSN/PREV_INSN into lvalue and rvalue forms
/
2014-08-19 David Malcolm <dmalcolm@redhat.com>
* rtx-classes-status.txt: Add SET_NEXT_INSN, SET_PREV_INSN.
gcc/
2014-08-19 David Malcolm <dmalcolm@redhat.com>
* rtl.h (PREV_INSN): Split macro in two: the existing one,
for rvalues, and...
(SET_PREV_INSN): New macro, for use as an lvalue.
(NEXT_INSN, SET_NEXT_INSN): Likewise.
* caller-save.c (save_call_clobbered_regs): Convert lvalue use of
PREV_INSN/NEXT_INSN into SET_PREV_INSN/SET_NEXT_INSN.
* cfgrtl.c (try_redirect_by_replacing_jump): Likewise.
(fixup_abnormal_edges): Likewise.
(unlink_insn_chain): Likewise.
(fixup_reorder_chain): Likewise.
(cfg_layout_delete_block): Likewise.
(cfg_layout_merge_blocks): Likewise.
* combine.c (update_cfg_for_uncondjump): Likewise.
* emit-rtl.c (link_insn_into_chain): Likewise.
(remove_insn): Likewise.
(delete_insns_since): Likewise.
(reorder_insns_nobb): Likewise.
(emit_insn_after_1): Likewise.
* final.c (rest_of_clean_state): Likewise.
(final_scan_insn): Likewise.
* gcse.c (can_assign_to_reg_without_clobbers_p): Likewise.
* haifa-sched.c (concat_note_lists): Likewise.
(remove_notes): Likewise.
(restore_other_notes): Likewise.
(move_insn): Likewise.
(unlink_bb_notes): Likewise.
(restore_bb_notes): Likewise.
* jump.c (delete_for_peephole): Likewise.
* optabs.c (emit_libcall_block_1): Likewise.
* reorg.c (emit_delay_sequence): Likewise.
(fill_simple_delay_slots): Likewise.
* sel-sched-ir.c (sel_move_insn): Likewise.
(sel_remove_insn): Likewise.
(get_bb_note_from_pool): Likewise.
* sel-sched.c (move_nop_to_previous_block): Likewise.
* config/bfin/bfin.c (reorder_var_tracking_notes): Likewise.
* config/c6x/c6x.c (gen_one_bundle): Likewise.
(c6x_gen_bundles): Likewise.
(hwloop_optimize): Likewise.
* config/frv/frv.c (frv_function_prologue): Likewise.
(frv_register_nop): Likewise.
* config/ia64/ia64.c (ia64_init_dfa_pre_cycle_insn): Likewise.
(ia64_reorg): Likewise.
* config/mep/mep.c (mep_reorg_addcombine): Likewise.
(mep_make_bundle): Likewise.
(mep_bundle_insns): Likewise.
* config/picochip/picochip.c (reorder_var_tracking_notes): Likewise.
* config/tilegx/tilegx.c (reorder_var_tracking_notes): Likewise.
* config/tilepro/tilepro.c (reorder_var_tracking_notes): Likewise.
From-SVN: r214128
Diffstat (limited to 'gcc/cfgrtl.c')
-rw-r--r-- | gcc/cfgrtl.c | 76 |
1 files changed, 38 insertions, 38 deletions
diff --git a/gcc/cfgrtl.c b/gcc/cfgrtl.c index 671d5f3..cb07f0b 100644 --- a/gcc/cfgrtl.c +++ b/gcc/cfgrtl.c @@ -1060,11 +1060,11 @@ try_redirect_by_replacing_jump (edge e, basic_block target, bool in_cfglayout) if (BARRIER_P (insn)) { if (PREV_INSN (insn)) - NEXT_INSN (PREV_INSN (insn)) = NEXT_INSN (insn); + SET_NEXT_INSN (PREV_INSN (insn)) = NEXT_INSN (insn); else SET_BB_FOOTER (src) = NEXT_INSN (insn); if (NEXT_INSN (insn)) - PREV_INSN (NEXT_INSN (insn)) = PREV_INSN (insn); + SET_PREV_INSN (NEXT_INSN (insn)) = PREV_INSN (insn); } if (LABEL_P (insn)) break; @@ -1132,14 +1132,14 @@ try_redirect_by_replacing_jump (edge e, basic_block target, bool in_cfglayout) update_bb_for_insn_chain (NEXT_INSN (BB_END (src)), PREV_INSN (barrier), src); - NEXT_INSN (PREV_INSN (new_insn)) = NEXT_INSN (new_insn); - PREV_INSN (NEXT_INSN (new_insn)) = PREV_INSN (new_insn); + SET_NEXT_INSN (PREV_INSN (new_insn)) = NEXT_INSN (new_insn); + SET_PREV_INSN (NEXT_INSN (new_insn)) = PREV_INSN (new_insn); - NEXT_INSN (new_insn) = barrier; - NEXT_INSN (PREV_INSN (barrier)) = new_insn; + SET_NEXT_INSN (new_insn) = barrier; + SET_NEXT_INSN (PREV_INSN (barrier)) = new_insn; - PREV_INSN (new_insn) = PREV_INSN (barrier); - PREV_INSN (barrier) = new_insn; + SET_PREV_INSN (new_insn) = PREV_INSN (barrier); + SET_PREV_INSN (barrier) = new_insn; } } } @@ -3270,8 +3270,8 @@ fixup_abnormal_edges (void) { /* We're not deleting it, we're moving it. */ INSN_DELETED_P (insn) = 0; - PREV_INSN (insn) = NULL_RTX; - NEXT_INSN (insn) = NULL_RTX; + SET_PREV_INSN (insn) = NULL_RTX; + SET_NEXT_INSN (insn) = NULL_RTX; insert_insn_on_edge (insn, e); inserted = true; @@ -3302,12 +3302,12 @@ unlink_insn_chain (rtx first, rtx last) rtx prevfirst = PREV_INSN (first); rtx nextlast = NEXT_INSN (last); - PREV_INSN (first) = NULL; - NEXT_INSN (last) = NULL; + SET_PREV_INSN (first) = NULL; + SET_NEXT_INSN (last) = NULL; if (prevfirst) - NEXT_INSN (prevfirst) = nextlast; + SET_NEXT_INSN (prevfirst) = nextlast; if (nextlast) - PREV_INSN (nextlast) = prevfirst; + SET_PREV_INSN (nextlast) = prevfirst; else set_last_insn (prevfirst); if (!prevfirst) @@ -3650,32 +3650,32 @@ fixup_reorder_chain (void) if (BB_HEADER (bb)) { if (insn) - NEXT_INSN (insn) = BB_HEADER (bb); + SET_NEXT_INSN (insn) = BB_HEADER (bb); else set_first_insn (BB_HEADER (bb)); - PREV_INSN (BB_HEADER (bb)) = insn; + SET_PREV_INSN (BB_HEADER (bb)) = insn; insn = BB_HEADER (bb); while (NEXT_INSN (insn)) insn = NEXT_INSN (insn); } if (insn) - NEXT_INSN (insn) = BB_HEAD (bb); + SET_NEXT_INSN (insn) = BB_HEAD (bb); else set_first_insn (BB_HEAD (bb)); - PREV_INSN (BB_HEAD (bb)) = insn; + SET_PREV_INSN (BB_HEAD (bb)) = insn; insn = BB_END (bb); if (BB_FOOTER (bb)) { - NEXT_INSN (insn) = BB_FOOTER (bb); - PREV_INSN (BB_FOOTER (bb)) = insn; + SET_NEXT_INSN (insn) = BB_FOOTER (bb); + SET_PREV_INSN (BB_FOOTER (bb)) = insn; while (NEXT_INSN (insn)) insn = NEXT_INSN (insn); } } - NEXT_INSN (insn) = cfg_layout_function_footer; + SET_NEXT_INSN (insn) = cfg_layout_function_footer; if (cfg_layout_function_footer) - PREV_INSN (cfg_layout_function_footer) = insn; + SET_PREV_INSN (cfg_layout_function_footer) = insn; while (NEXT_INSN (insn)) insn = NEXT_INSN (insn); @@ -4410,15 +4410,15 @@ cfg_layout_delete_block (basic_block bb) { next = BB_HEAD (bb); if (prev) - NEXT_INSN (prev) = BB_HEADER (bb); + SET_NEXT_INSN (prev) = BB_HEADER (bb); else set_first_insn (BB_HEADER (bb)); - PREV_INSN (BB_HEADER (bb)) = prev; + SET_PREV_INSN (BB_HEADER (bb)) = prev; insn = BB_HEADER (bb); while (NEXT_INSN (insn)) insn = NEXT_INSN (insn); - NEXT_INSN (insn) = next; - PREV_INSN (next) = insn; + SET_NEXT_INSN (insn) = next; + SET_PREV_INSN (next) = insn; } next = NEXT_INSN (BB_END (bb)); if (BB_FOOTER (bb)) @@ -4429,11 +4429,11 @@ cfg_layout_delete_block (basic_block bb) if (BARRIER_P (insn)) { if (PREV_INSN (insn)) - NEXT_INSN (PREV_INSN (insn)) = NEXT_INSN (insn); + SET_NEXT_INSN (PREV_INSN (insn)) = NEXT_INSN (insn); else SET_BB_FOOTER (bb) = NEXT_INSN (insn); if (NEXT_INSN (insn)) - PREV_INSN (NEXT_INSN (insn)) = PREV_INSN (insn); + SET_PREV_INSN (NEXT_INSN (insn)) = PREV_INSN (insn); } if (LABEL_P (insn)) break; @@ -4442,13 +4442,13 @@ cfg_layout_delete_block (basic_block bb) if (BB_FOOTER (bb)) { insn = BB_END (bb); - NEXT_INSN (insn) = BB_FOOTER (bb); - PREV_INSN (BB_FOOTER (bb)) = insn; + SET_NEXT_INSN (insn) = BB_FOOTER (bb); + SET_PREV_INSN (BB_FOOTER (bb)) = insn; while (NEXT_INSN (insn)) insn = NEXT_INSN (insn); - NEXT_INSN (insn) = next; + SET_NEXT_INSN (insn) = next; if (next) - PREV_INSN (next) = insn; + SET_PREV_INSN (next) = insn; else set_last_insn (insn); } @@ -4475,9 +4475,9 @@ cfg_layout_delete_block (basic_block bb) insn = remaints; while (NEXT_INSN (insn)) insn = NEXT_INSN (insn); - NEXT_INSN (insn) = *to; + SET_NEXT_INSN (insn) = *to; if (*to) - PREV_INSN (*to) = insn; + SET_PREV_INSN (*to) = insn; *to = remaints; } } @@ -4573,8 +4573,8 @@ cfg_layout_merge_blocks (basic_block a, basic_block b) while (NEXT_INSN (last)) last = NEXT_INSN (last); - NEXT_INSN (last) = BB_FOOTER (b); - PREV_INSN (BB_FOOTER (b)) = last; + SET_NEXT_INSN (last) = BB_FOOTER (b); + SET_PREV_INSN (BB_FOOTER (b)) = last; } SET_BB_FOOTER (b) = NULL; } @@ -4592,8 +4592,8 @@ cfg_layout_merge_blocks (basic_block a, basic_block b) while (NEXT_INSN (last)) last = NEXT_INSN (last); - NEXT_INSN (last) = BB_FOOTER (a); - PREV_INSN (BB_FOOTER (a)) = last; + SET_NEXT_INSN (last) = BB_FOOTER (a); + SET_PREV_INSN (BB_FOOTER (a)) = last; SET_BB_FOOTER (a) = BB_HEADER (b); } SET_BB_HEADER (b) = NULL; |