aboutsummaryrefslogtreecommitdiff
path: root/gcc/ira.c
diff options
context:
space:
mode:
authorTrevor Saunders <tbsaunde+gcc@tbsaunde.org>2015-05-02 21:06:43 +0000
committerTrevor Saunders <tbsaunde@gcc.gnu.org>2015-05-02 21:06:43 +0000
commit618bccf9847235899b2b35452c8947d838007a3b (patch)
treeb5d0c2006a445e28d8a8b42d5fed54180c2f1bf8 /gcc/ira.c
parent8df68a82190bc0bf6c3bf3a7a3576e296fc5d3ef (diff)
downloadgcc-618bccf9847235899b2b35452c8947d838007a3b.zip
gcc-618bccf9847235899b2b35452c8947d838007a3b.tar.gz
gcc-618bccf9847235899b2b35452c8947d838007a3b.tar.bz2
type reg_equiv_init as rtx_insn_list
gcc/ChangeLog: 2015-05-02 Trevor Saunders <tbsaunde+gcc@tbsaunde.org> * reload.h (struct reg_equivs_t): Change type of init to rtx_insn *. * ira.c (fix_reg_equiv_init): Adjust. * reload1.c (eliminate_regs_1): Likewise. (init_eliminable_invariants): Likewise. From-SVN: r222740
Diffstat (limited to 'gcc/ira.c')
-rw-r--r--gcc/ira.c12
1 files changed, 7 insertions, 5 deletions
diff --git a/gcc/ira.c b/gcc/ira.c
index 25baa90..ab8e9ce 100644
--- a/gcc/ira.c
+++ b/gcc/ira.c
@@ -2709,20 +2709,22 @@ fix_reg_equiv_init (void)
{
int max_regno = max_reg_num ();
int i, new_regno, max;
- rtx x, prev, next, insn, set;
+ rtx set;
+ rtx_insn_list *x, *next, *prev;
+ rtx_insn *insn;
if (max_regno_before_ira < max_regno)
{
max = vec_safe_length (reg_equivs);
grow_reg_equivs ();
for (i = FIRST_PSEUDO_REGISTER; i < max; i++)
- for (prev = NULL_RTX, x = reg_equiv_init (i);
+ for (prev = NULL, x = reg_equiv_init (i);
x != NULL_RTX;
x = next)
{
- next = XEXP (x, 1);
- insn = XEXP (x, 0);
- set = single_set (as_a <rtx_insn *> (insn));
+ next = x->next ();
+ insn = x->insn ();
+ set = single_set (insn);
ira_assert (set != NULL_RTX
&& (REG_P (SET_DEST (set)) || REG_P (SET_SRC (set))));
if (REG_P (SET_DEST (set))