PR target/31876
* config/sh/sh.md (andsi3): Avoid calling gen_lowpart on
a SImode SUBREG of a floating point register.
From-SVN: r124611
+2007-05-11 Kaz Kojima <kkojima@gcc.gnu.org>
+
+ PR target/31876
+ * config/sh/sh.md (andsi3): Avoid calling gen_lowpart on
+ a SImode SUBREG of a floating point register.
+
2007-05-08 Andreas Krebbel <krebbel1@de.ibm.com>
* loop.c (move_movables): Remove REG_EQUAL notes for conditional
"
{
if (TARGET_SH1
- && GET_CODE (operands[2]) == CONST_INT && INTVAL (operands[2]) == 255)
+ && GET_CODE (operands[2]) == CONST_INT && INTVAL (operands[2]) == 255
+ && (GET_CODE (operands[1]) != SUBREG
+ || SCALAR_INT_MODE_P (GET_MODE (XEXP (operands[1], 0)))))
{
emit_insn (gen_zero_extendqisi2 (operands[0],
gen_lowpart (QImode, operands[1])));