(basic_induction_var, case REG): Allow previous insn to set a SUBREG

of X.

From-SVN: r7611
This commit is contained in:
Richard Kenner 1994-06-29 19:21:43 -04:00
parent 85d159a36a
commit 725fc5a08d
1 changed files with 6 additions and 1 deletions

View File

@ -4834,7 +4834,12 @@ basic_induction_var (x, mode, dest_reg, p, inc_val, mult_val)
if (insn)
set = single_set (insn);
if (set != 0 && SET_DEST (set) == x)
if (set != 0
&& (SET_DEST (set) == x
|| (GET_CODE (SET_DEST (set)) == SUBREG
&& (GET_MODE_SIZE (GET_MODE (SET_DEST (set)))
<= UNITS_PER_WORD)
&& SUBREG_REG (SET_DEST (set)) == x)))
return basic_induction_var (SET_SRC (set),
(GET_MODE (SET_SRC (set)) == VOIDmode
? GET_MODE (x)