summaryrefslogtreecommitdiff
path: root/gcc/ira-emit.c
diff options
context:
space:
mode:
authordmalcolm <dmalcolm@138bc75d-0d04-0410-961f-82ee72b054a4>2014-08-22 17:48:40 +0000
committerdmalcolm <dmalcolm@138bc75d-0d04-0410-961f-82ee72b054a4>2014-08-22 17:48:40 +0000
commit56067879b8a88cdad5536f05f418030e2faa4ff9 (patch)
tree6189c1fa149163c80ab3f905256542a39adaed40 /gcc/ira-emit.c
parentf8f996ed0c0ad080d93ba6595b0a2c1e1314e314 (diff)
downloadgcc-56067879b8a88cdad5536f05f418030e2faa4ff9.tar.gz
ira: Use rtx_insn in various places
gcc/ * ira-int.h (struct ira_allocno_copy): Strengthen field "insn" from rtx to rtx_insn *insn. (ira_create_copy): Strengthen param "insn" from rtx to rtx_insn *. (ira_add_allocno_copy): Likewise. * ira-build.c (find_allocno_copy): Strengthen param "insn" from rtx to rtx_insn *. (ira_create_copy): Likewise. (ira_add_allocno_copy): Likewise. (create_bb_allocnos): Likewise for local "insn". * ira-conflicts.c (process_regs_for_copy): Likewise for param "insn". (process_reg_shuffles): Update NULL_RTX to NULL in invocation of process_regs_for_copy for rtx_insn * param. (add_insn_allocno_copies): Strengthen param "insn" from rtx to rtx_insn *insn. Update NULL_RTX to NULL in invocation of process_regs_for_copy for rtx_insn * param. (add_copies): Strengthen local "insn" from rtx to rtx_insn *insn. * ira-costs.c (record_reg_classes): Likewise for param "insn". (record_operand_costs): Likewise. (scan_one_insn): Likewise for return type, and for param "insn". (process_bb_for_costs): Likewise for local "insn". (process_bb_node_for_hard_reg_moves): Likewise. * ira-emit.c (struct move): Likewise for field "insn". (create_move): Eliminate use of NULL_RTX when dealing with an rtx_insn *. (emit_move_list): Strengthen return type and locals "result", "insn" from rtx to rtx_insn *insn. (emit_moves): Likewise for locals "insns", "tmp". (ira_emit): Likewise for local "insn". * ira-lives.c (mark_hard_reg_early_clobbers): Likewise for param "insn". (find_call_crossed_cheap_reg): Likewise. (process_bb_node_lives): Likewise for local "insn". * ira.c (decrease_live_ranges_number): Likewise. (compute_regs_asm_clobbered): Likewise. (build_insn_chain): Likewise. (find_moveable_pseudos): Likewise, also locals "def_insn", "use_insn", "x". Also strengthen local "closest_uses" from rtx * to rtx_insn **. Add a checked cast when assigning from "closest_use" into closest_uses array in a region where we know it's a non-NULL insn. (interesting_dest_for_shprep): Strengthen param "insn" from rtx to rtx_insn *. (split_live_ranges_for_shrink_wrap): Likewise for locals "insn", "last_interesting_insn", "uin". (move_unallocated_pseudos): Likewise for locals "def_insn", "move_insn", "newinsn". git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@214339 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/ira-emit.c')
-rw-r--r--gcc/ira-emit.c13
1 files changed, 7 insertions, 6 deletions
diff --git a/gcc/ira-emit.c b/gcc/ira-emit.c
index 71dc6bcf9af..445b386b67f 100644
--- a/gcc/ira-emit.c
+++ b/gcc/ira-emit.c
@@ -172,7 +172,7 @@ struct move
dependencies. */
move_t *deps;
/* First insn generated for the move. */
- rtx insn;
+ rtx_insn *insn;
};
/* Array of moves (indexed by BB index) which should be put at the
@@ -196,7 +196,7 @@ create_move (ira_allocno_t to, ira_allocno_t from)
move->to = to;
move->from = from;
move->next = NULL;
- move->insn = NULL_RTX;
+ move->insn = NULL;
move->visited_p = false;
return move;
}
@@ -893,12 +893,13 @@ modify_move_list (move_t list)
/* Generate RTX move insns from the move list LIST. This updates
allocation cost using move execution frequency FREQ. */
-static rtx
+static rtx_insn *
emit_move_list (move_t list, int freq)
{
rtx to, from, dest;
int to_regno, from_regno, cost, regno;
- rtx result, insn, set;
+ rtx_insn *result, *insn;
+ rtx set;
enum machine_mode mode;
enum reg_class aclass;
@@ -984,7 +985,7 @@ emit_moves (void)
basic_block bb;
edge_iterator ei;
edge e;
- rtx insns, tmp;
+ rtx_insn *insns, *tmp;
FOR_EACH_BB_FN (bb, cfun)
{
@@ -1234,7 +1235,7 @@ void
ira_emit (bool loops_p)
{
basic_block bb;
- rtx insn;
+ rtx_insn *insn;
edge_iterator ei;
edge e;
ira_allocno_t a;