]> git.ipfire.org Git - thirdparty/gcc.git/commitdiff
avr.md (movstrhi, clrstrhi): Use gen_int_mode for right conversion of operands[1].
authorDenis Chertykov <denisc@overta.ru>
Mon, 9 Sep 2002 18:20:45 +0000 (18:20 +0000)
committerDenis Chertykov <denisc@gcc.gnu.org>
Mon, 9 Sep 2002 18:20:45 +0000 (22:20 +0400)
* config/avr/avr.md (movstrhi, clrstrhi): Use gen_int_mode for
right conversion of operands[1].

From-SVN: r56975

gcc/ChangeLog
gcc/config/avr/avr.md

index a0ac3d0c827457c417a72c512303b65b40c954a4..c37f1f89d315b84b226c07f96e7ca8bace382ebe 100644 (file)
@@ -1,3 +1,8 @@
+2002-09-09  Denis Chertykov  <denisc@overta.ru>
+
+       * config/avr/avr.md (movstrhi, clrstrhi): Use gen_int_mode for
+       right conversion of operands[1].
+
 2002-09-09  Ulrich Weigand  <uweigand@de.ibm.com>
 
        * config/s390/s390.md ("*tmdi_reg", "*tmsi_reg"): Do not mark as
index a285fef4f4ad4f88375b9d6a6c9d316f6e8f6660..0c050b7b94e555fb776b43fe6568e8413b1e0851 100644 (file)
   "{
   rtx addr0, addr1;
   int cnt8;
+  enum machine_mode mode;
 
   if (GET_CODE (operands[2]) != CONST_INT)
     FAIL;
-  cnt8 = byte_immediate_operand (operands[2], GET_MODE (operands[2]));
-  operands[2] = copy_to_mode_reg (cnt8 ? QImode : HImode, operands[2]);
-  operands[4] = operands[2];
-
+  cnt8 = byte_immediate_operand (operands[1], GET_MODE (operands[1]));
+  mode = cnt8 ? QImode : HImode;
+  operands[1] = copy_to_mode_reg (mode,
+                                  gen_int_mode (INTVAL (operands[1]), mode));
   addr0 = copy_to_mode_reg (Pmode, XEXP (operands[0], 0));
   addr1 = copy_to_mode_reg (Pmode, XEXP (operands[1], 0));
 
   "{
   rtx addr0;
   int cnt8;
+  enum machine_mode mode;
 
   if (GET_CODE (operands[1]) != CONST_INT)
     FAIL;
 
   cnt8 = byte_immediate_operand (operands[1], GET_MODE (operands[1]));
-  operands[1] = copy_to_mode_reg (cnt8 ? QImode : HImode, operands[1]);
+  mode = cnt8 ? QImode : HImode;
+  operands[1] = copy_to_mode_reg (mode,
+                                  gen_int_mode (INTVAL (operands[1]), mode));
   operands[3] = operands[1];
 
   addr0 = copy_to_mode_reg (Pmode, XEXP (operands[0], 0));