+2004-09-23 Hans-Peter Nilsson <hp@axis.com>
+
+ PR target/17626
+ * config/cris/cris.md (moverside, movemside): Rename variable
+ "reg" to "otherop". To generate canonical RTX, check that otherop
+ isn't constant instead of checking that operand 1 is a register.
+
2004-09-23 Jakub Jelinek <jakub@redhat.com>
* tree-ssa-propagate.c (set_rhs): Fail if EXPR is COMPOUND_EXPR.
[(set (match_dup 4) (match_dup 6))
(set (match_dup 0) (plus:SI (match_dup 7) (match_dup 8)))])]
{
- rtx reg
+ rtx otherop
= rtx_equal_p (operands[2], operands[0]) ? operands[3] : operands[2];
- if (REG_S_P (operands[1]))
+ /* Make sure we have canonical RTX so we match the insn pattern - a
+ register or MULT in the first operand, not a constant. */
+ if (CONSTANT_P (otherop))
{
operands[7] = operands[1];
- operands[8] = reg;
+ operands[8] = otherop;
}
else
{
- operands[7] = reg;
+ operands[7] = otherop;
operands[8] = operands[1];
}
operands[6]
[(set (match_dup 6) (match_dup 5))
(set (match_dup 0) (plus:SI (match_dup 7) (match_dup 8)))])]
{
- rtx reg
+ rtx otherop
= rtx_equal_p (operands[2], operands[0]) ? operands[3] : operands[2];
- if (REG_S_P (operands[1]))
+ /* Make sure we have canonical RTX so we match the insn pattern - a
+ register or MULT in the first operand, not a constant. */
+ if (CONSTANT_P (otherop))
{
operands[7] = operands[1];
- operands[8] = reg;
+ operands[8] = otherop;
}
else
{
- operands[7] = reg;
+ operands[7] = otherop;
operands[8] = operands[1];
}
operands[6]