From: Bernd Schmidt Date: Thu, 5 Aug 2010 22:58:35 +0000 (+0000) Subject: From Martin Thuresson X-Git-Tag: releases/gcc-4.6.0~5217 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=5444da31b46211e3e7262d29538cae5898ae2e78;p=thirdparty%2Fgcc.git From Martin Thuresson * postreload.c (reload_cse_simplify_operands): Use SET_REGNO_RAW instead of SET_REGNO. * caller-save.c (reg_save_code): Use SET_REGNO_RAW instead of SET_REGNO. * ira.c (setup_prohibited_mode_move_regs): Use SET_REGNO_RAW instead of SET_REGNO. * rtl.h (SET_REGNO_RAW): New macro. From-SVN: r162924 --- diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 43a30e764e84..f6b5099cbe48 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,14 @@ +2010-08-05 Bernd Schmidt + + From Martin Thuresson + * postreload.c (reload_cse_simplify_operands): Use + SET_REGNO_RAW instead of SET_REGNO. + * caller-save.c (reg_save_code): Use SET_REGNO_RAW instead of + SET_REGNO. + * ira.c (setup_prohibited_mode_move_regs): Use SET_REGNO_RAW + instead of SET_REGNO. + * rtl.h (SET_REGNO_RAW): New macro. + 2010-08-05 Eric Botcazou * rtlanal.c (nonzero_bits1): Use unsigned HOST_WIDE_INT in all mask diff --git a/gcc/caller-save.c b/gcc/caller-save.c index 60c47477e89e..446da51acdf4 100644 --- a/gcc/caller-save.c +++ b/gcc/caller-save.c @@ -124,7 +124,7 @@ reg_save_code (int reg, enum machine_mode mode) /* Update the register number and modes of the register and memory operand. */ - SET_REGNO (test_reg, reg); + SET_REGNO_RAW (test_reg, reg); PUT_MODE (test_reg, mode); PUT_MODE (test_mem, mode); diff --git a/gcc/ira.c b/gcc/ira.c index 36d6e61b6ef1..98a34c1579a6 100644 --- a/gcc/ira.c +++ b/gcc/ira.c @@ -1219,9 +1219,9 @@ setup_prohibited_mode_move_regs (void) { if (! HARD_REGNO_MODE_OK (j, (enum machine_mode) i)) continue; - SET_REGNO (test_reg1, j); + SET_REGNO_RAW (test_reg1, j); PUT_MODE (test_reg1, (enum machine_mode) i); - SET_REGNO (test_reg2, j); + SET_REGNO_RAW (test_reg2, j); PUT_MODE (test_reg2, (enum machine_mode) i); INSN_CODE (move_insn) = -1; recog_memoized (move_insn); diff --git a/gcc/postreload.c b/gcc/postreload.c index a62569e47423..dbc11bb18746 100644 --- a/gcc/postreload.c +++ b/gcc/postreload.c @@ -528,7 +528,7 @@ reload_cse_simplify_operands (rtx insn, rtx testreg) if (! TEST_HARD_REG_BIT (equiv_regs[i], regno)) continue; - SET_REGNO (testreg, regno); + SET_REGNO_RAW (testreg, regno); PUT_MODE (testreg, mode); /* We found a register equal to this operand. Now look for all diff --git a/gcc/rtl.h b/gcc/rtl.h index f59ca540eeee..710e3caa1444 100644 --- a/gcc/rtl.h +++ b/gcc/rtl.h @@ -1039,6 +1039,7 @@ enum label_kind be used on RHS. Use SET_REGNO to change the value. */ #define REGNO(RTX) (rhs_regno(RTX)) #define SET_REGNO(RTX,N) (df_ref_change_reg_with_loc (REGNO(RTX), N, RTX), XCUINT (RTX, 0, REG) = N) +#define SET_REGNO_RAW(RTX,N) (XCUINT (RTX, 0, REG) = N) /* ORIGINAL_REGNO holds the number the register originally had; for a pseudo register turned into a hard reg this will hold the old pseudo