gcc/
* combine.c (subst): Use simplify_subreg_regno rather than
REG_CANNOT_CHANGE_MODE_P to detect invalid mode changes.
From-SVN: r215448
+2014-09-22 Richard Sandiford <richard.sandiford@arm.com>
+
+ * combine.c (subst): Use simplify_subreg_regno rather than
+ REG_CANNOT_CHANGE_MODE_P to detect invalid mode changes.
+
2014-09-22 Richard Sandiford <richard.sandiford@arm.com>
* rtl.h (subreg_info): Expand commentary
)
return gen_rtx_CLOBBER (VOIDmode, const0_rtx);
-#ifdef CANNOT_CHANGE_MODE_CLASS
if (code == SUBREG
&& REG_P (to)
&& REGNO (to) < FIRST_PSEUDO_REGISTER
- && REG_CANNOT_CHANGE_MODE_P (REGNO (to),
- GET_MODE (to),
- GET_MODE (x)))
+ && simplify_subreg_regno (REGNO (to), GET_MODE (to),
+ SUBREG_BYTE (x),
+ GET_MODE (x)) < 0)
return gen_rtx_CLOBBER (VOIDmode, const0_rtx);
-#endif
new_rtx = (unique_copy && n_occurrences ? copy_rtx (to) : to);
n_occurrences++;