Bug#323016: ICE while compiling tin on m68k
On Sun, 14 Aug 2005, Marco d'Itri wrote:
> Package: gcc-4.0
> Version: 4.0.0-12
> Severity: important
>
> Compiling tin 1.7.10+20050727 on m68k fails.
>
> gcc -DHAVE_CONFIG_H -I. -I../include -I/usr/include -DLOCALEDIR=\"/usr/share/locale\" -I../include -DUSE_CANLOCK -D_GNU_SOURCE -g -O2 -c ./save.c
> ./save.c: In function 'uudecode_line':
> ./save.c:1053: error: unable to find a register to spill in class 'ADDR_REGS'
> ./save.c:1053: error: this is the insn:
> (insn 22 21 23 0 ./save.c:1031 (set (reg/v:SI 12 %a4 [orig:40 n.152 ] [40])
> (plus:SI (subreg:SI (mem:QI (reg/v/f:SI 10 %a2 [orig:46 buf ] [46]) [0 S1 A8]) 0)
> (const_int 32 [0x20]))) 95 {*addsi3_internal} (insn_list:REG_DEP_TRUE 13 (nil))
> (nil))
> ./save.c:1053: confused by earlier errors, bailing out
> make: *** [save.o] Error 1
For the record, a very similar error happens while compiling sharutils on m68k:
gcc -c -DLOCALEDIR=\"/usr/lib/locale\" -DHAVE_CONFIG_H -I. -I.. -I../lib -I../i
ntl -I../intl -g -Wall -O2 uudecode.c
uudecode.c: In function 'read_base64':
uudecode.c:194: warning: pointer targets in passing argument 1 of 'fgets' diffe
r in signedness
uudecode.c: In function 'decode':
uudecode.c:363: error: unable to find a register to spill in class 'ADDR_REGS'
uudecode.c:363: error: this is the insn:
(insn 647 646 648 54 uudecode.c:106 (set (reg/v:SI 13 %a5 [orig:63 n ] [63])
(plus:SI (subreg:SI (mem/s:QI (plus:SI (reg/f:SI 14 %a6)
(const_int -32772 [0xffff7ffc])) [0 buf+0 S1 A16]) 0)
(const_int 32 [0x20]))) 95 {*addsi3_internal} (nil)
(nil))
uudecode.c:363: confused by earlier errors, bailing out
Reply to: