aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--gcc/ChangeLog4
-rw-r--r--gcc/config/avr/avr.md7
2 files changed, 8 insertions, 3 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 15e8354..1bad2c6 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,7 @@
+2002-09-10 Denis Chertykov <denisc@overta.ru>
+
+ * config/avr/avr.md (movstrhi): Use right operands for conversion.
+
2002-09-10 Richard Earnshaw <rearnsha@arm.com>
PR c/7873
diff --git a/gcc/config/avr/avr.md b/gcc/config/avr/avr.md
index 0c050b7..7534fc5 100644
--- a/gcc/config/avr/avr.md
+++ b/gcc/config/avr/avr.md
@@ -360,10 +360,11 @@
if (GET_CODE (operands[2]) != CONST_INT)
FAIL;
- cnt8 = byte_immediate_operand (operands[1], GET_MODE (operands[1]));
+ cnt8 = byte_immediate_operand (operands[2], GET_MODE (operands[2]));
mode = cnt8 ? QImode : HImode;
- operands[1] = copy_to_mode_reg (mode,
- gen_int_mode (INTVAL (operands[1]), mode));
+ operands[2] = copy_to_mode_reg (mode,
+ gen_int_mode (INTVAL (operands[2]), mode));
+ operands[4] = operands[2];
addr0 = copy_to_mode_reg (Pmode, XEXP (operands[0], 0));
addr1 = copy_to_mode_reg (Pmode, XEXP (operands[1], 0));