From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 11993 invoked by alias); 22 Apr 2005 16:10:29 -0000 Mailing-List: contact gcc-bugs-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Archive: List-Post: List-Help: Sender: gcc-bugs-owner@gcc.gnu.org Received: (qmail 11936 invoked by uid 48); 22 Apr 2005 16:10:15 -0000 Date: Fri, 22 Apr 2005 16:10:00 -0000 Message-ID: <20050422161015.11935.qmail@sourceware.org> From: "eisvogel at seitics dot de" To: gcc-bugs@gcc.gnu.org In-Reply-To: <20041031125117.18251.ralf_corsepius@rtems.org> References: <20041031125117.18251.ralf_corsepius@rtems.org> Reply-To: gcc-bugzilla@gcc.gnu.org Subject: [Bug target/18251] unable to find a register to spill in class `POINTER_REGS' X-Bugzilla-Reason: CC X-SW-Source: 2005-04/txt/msg03144.txt.bz2 List-Id: ------- Additional Comments From eisvogel at seitics dot de 2005-04-22 16:10 ------- This bug is AFAICT not fully resolved in 4.0 HEAD as of today. The test case compiles under 3.4.3, though. The code snippet used to be part of an MD5 transform function but I have stripped it down to the point where it is still valid C code but does not do anything useful any more. In this state removing any of the remaining lines usually prevents the ICE from occurring, most notably the LPM macro (taken from avr-libc HEAD). $ avr-gcc -Os -mmcu=atmega162 -c test.c test.c: In function 'test': test.c:46: error: unable to find a register to spill in class 'POINTER_REGS' test.c:46: error: this is the insn: (insn 18 115 20 0 (set (reg/v:SI 56 [ a ]) (mem:SI (post_inc:HI (reg/f:HI 22 r22 [orig:59 D.1226 ] [59])) [2 S4 A8])) 14 {*movsi} (insn_list:REG_DEP_TRUE 115 (nil)) (expr_list:REG_INC (reg/f:HI 22 r22 [orig:59 D.1226 ] [59]) (nil))) test.c:46: internal compiler error: in spill_failure, at reload1.c:1897 Please submit a full bug report, with preprocessed source if appropriate. See for instructions. Compiler version: $ avr-gcc -v Using built-in specs. Target: avr Configured with: ../configure --target=avr --prefix=/home/eisvogel/avr --enable-languages=c,c++ --disable-nls Thread model: single gcc version 4.1.0 20050422 (experimental) -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=18251