This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
[avr port] bugfix for movstrhi
- From: Denis Chertykov <denisc at overta dot ru>
- To: gcc-patches at gcc dot gnu dot org
- Cc: denisc at overta dot ru
- Date: Tue, 10 Sep 2002 19:46:29 +0400
- Subject: [avr port] bugfix for movstrhi
Tue Sep 10 19:50:41 2002 Denis Chertykov <denisc@overta.ru>
* config/avr/avr.md (movstrhi): Use right operands for conversion.
Index: avr.md
===================================================================
RCS file: /cvs/gcc/egcs/gcc/config/avr/avr.md,v
retrieving revision 1.36
diff -c -3 -p -r1.36 avr.md
*** avr.md 9 Sep 2002 18:20:45 -0000 1.36
--- avr.md 10 Sep 2002 15:41:20 -0000
***************
*** 360,369 ****
if (GET_CODE (operands[2]) != CONST_INT)
FAIL;
! 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));
--- 360,370 ----
if (GET_CODE (operands[2]) != CONST_INT)
FAIL;
! cnt8 = byte_immediate_operand (operands[2], GET_MODE (operands[2]));
mode = cnt8 ? QImode : HImode;
! 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));