diff options
Diffstat (limited to 'gcc/reload1.c')
-rw-r--r-- | gcc/reload1.c | 23 |
1 files changed, 13 insertions, 10 deletions
diff --git a/gcc/reload1.c b/gcc/reload1.c index bb5a3a2bcd3..d31578d96ab 100644 --- a/gcc/reload1.c +++ b/gcc/reload1.c @@ -997,7 +997,8 @@ reload (rtx first, int global) for (i = FIRST_PSEUDO_REGISTER; i < max_regno; i++) if (reg_renumber[i] < 0 && reg_equiv_memory_loc[i]) { - rtx x = eliminate_regs (reg_equiv_memory_loc[i], 0, NULL_RTX); + rtx x = eliminate_regs (reg_equiv_memory_loc[i], VOIDmode, + NULL_RTX); if (strict_memory_address_p (GET_MODE (regno_reg_rtx[i]), XEXP (x, 0))) @@ -2809,7 +2810,7 @@ eliminate_regs_1 (rtx x, enum machine_mode mem_mode, rtx insn, case USE: /* Handle insn_list USE that a call to a pure function may generate. */ - new_rtx = eliminate_regs_1 (XEXP (x, 0), 0, insn, false); + new_rtx = eliminate_regs_1 (XEXP (x, 0), VOIDmode, insn, false); if (new_rtx != XEXP (x, 0)) return gen_rtx_USE (GET_MODE (x), new_rtx); return x; @@ -3050,8 +3051,8 @@ elimination_effects (rtx x, enum machine_mode mem_mode) } } - elimination_effects (SET_DEST (x), 0); - elimination_effects (SET_SRC (x), 0); + elimination_effects (SET_DEST (x), VOIDmode); + elimination_effects (SET_SRC (x), VOIDmode); return; case MEM: @@ -3349,7 +3350,7 @@ eliminate_regs_in_insn (rtx insn, int replace) } /* Determine the effects of this insn on elimination offsets. */ - elimination_effects (old_body, 0); + elimination_effects (old_body, VOIDmode); /* Eliminate all eliminable registers occurring in operands that can be handled by reload. */ @@ -3390,7 +3391,7 @@ eliminate_regs_in_insn (rtx insn, int replace) in_plus = true; substed_operand[i] - = eliminate_regs_1 (recog_data.operand[i], 0, + = eliminate_regs_1 (recog_data.operand[i], VOIDmode, replace ? insn : NULL_RTX, is_set_src || in_plus); if (substed_operand[i] != orig_operand[i]) @@ -3520,7 +3521,7 @@ eliminate_regs_in_insn (rtx insn, int replace) the pre-passes. */ if (val && REG_NOTES (insn) != 0) REG_NOTES (insn) - = eliminate_regs_1 (REG_NOTES (insn), 0, REG_NOTES (insn), true); + = eliminate_regs_1 (REG_NOTES (insn), VOIDmode, REG_NOTES (insn), true); return val; } @@ -7087,7 +7088,8 @@ emit_input_reload_insns (struct insn_chain *chain, struct reload *rl, else if (new_class == NO_REGS) { if (reload_adjust_reg_for_icode (&second_reload_reg, - third_reload_reg, sri.icode)) + third_reload_reg, + (enum insn_code) sri.icode)) icode = sri.icode, third_reload_reg = 0; else oldequiv = old, real_oldequiv = real_old; @@ -7117,7 +7119,8 @@ emit_input_reload_insns (struct insn_chain *chain, struct reload *rl, if (reload_adjust_reg_for_temp (&intermediate, NULL, new_class, mode) && reload_adjust_reg_for_icode (&third_reload_reg, NULL, - sri2.icode)) + ((enum insn_code) + sri2.icode))) { second_reload_reg = intermediate; tertiary_icode = sri2.icode; @@ -8414,7 +8417,7 @@ delete_output_reload (rtx insn, int j, int last_reload_reg, rtx new_reload_reg) reg, 0); if (substed) n_occurrences += count_occurrences (PATTERN (insn), - eliminate_regs (substed, 0, + eliminate_regs (substed, VOIDmode, NULL_RTX), 0); for (i1 = reg_equiv_alt_mem_list[REGNO (reg)]; i1; i1 = XEXP (i1, 1)) { |