This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug rtl-optimization/63633] New: [avr] internal compiler error: urecognizable insn with multi insns
- From: "gjl at gcc dot gnu.org" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: Thu, 23 Oct 2014 17:58:44 +0000
- Subject: [Bug rtl-optimization/63633] New: [avr] internal compiler error: urecognizable insn with multi insns
- Auto-submitted: auto-generated
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=63633
Bug ID: 63633
Summary: [avr] internal compiler error: urecognizable insn with
multi insns
Product: gcc
Version: 4.9.2
Status: UNCONFIRMED
Keywords: ice-on-valid-code
Severity: normal
Priority: P3
Component: rtl-optimization
Assignee: unassigned at gcc dot gnu.org
Reporter: gjl at gcc dot gnu.org
Target: avr
void ice_mult (int x)
{
register long reg asm ("22");
__asm volatile (" " :: "r" (reg = 0x12345 * x));
}
This programm raises ICE when compiler with
$ avr-gcc-4.9.2 -S -Os -mmcu=avr51
Some pass is propagating hard reg:SI 22 to SET_DEST of insn 7 even though that
register is covered by clobber reg:DI 18 (DI 18 covers R18...R25):
-.c: In function 'ice_mult':
-.c:5:1: error: unrecognizable insn:
}
^
(insn 7 6 8 2 (parallel [
(set (reg/v:SI 22 r22 [ reg ])
(mult:SI (reg:SI 45 [ D.1458 ])
(const_int 74565 [0x12345])))
(clobber (reg:HI 26 r26))
(clobber (reg:DI 18 r18))
]) fun-eval-avr.c:4 -1
(nil))
-.c:5:1: internal compiler error: in extract_insn, at recog.c:2202
-.c:5:1: internal compiler error: Segmentation fault