[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [avr-gcc-list] reproducable gcc error: unrecognizable insn
From: |
Denis Chertykov |
Subject: |
Re: [avr-gcc-list] reproducable gcc error: unrecognizable insn |
Date: |
10 Sep 2002 19:53:55 +0400 |
User-agent: |
Gnus/5.0808 (Gnus v5.8.8) Emacs/20.7 |
address@hidden (Joerg Wunsch) writes:
> Denis Chertykov <address@hidden> wrote:
>
> > This is the fix. (FSF CVS tree already have this fix)
> > Apply the following patch to gcc/config/avr/avr.md and recompile
> > avr-gcc.
>
> Unfortunately, gcc doesn't compile anymore for me when this fix has
> been applied, regardless whether i use the source from current CVS
> (which needs a hack in gcc/output.h in order to compile at all, as has
> been discussed here), or whether i apply the patch to the sources from
> 2002-09-01 which compiles cleanly without the patch.
The fix:
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));
avr-gcc-list at http://avr1.org