AW: [En-Nut-Discussion] Re: cant compile todays cvs nutos
Oliver Schulz
Oliver.Schulz at bong.de
Mon Feb 28 09:42:18 CET 2005
Hi Tim,
>
> Hello again,
> just five minutes later I found a solution for that failure.
> Everything compiles fine afterchanging the return type to void.
> I should read the compilers output more carefully.
Yes, my fault. I will correct it asap!! Sorry for your inconvenience...
>
> But now I got a compilers error at another position.
> Compiling arpcache.c stops with an error message Ive never
> seen before:
>
> avr-gcc -c -mmcu=atmega128 -Os -Wall -Werror
> -Wstrict-prototypes -Wa,-ahlms=arpcache.lst -D__HARVARD_ARCH__ -I.
> ./mod/include -I../include arpcache.c -o arpcache.o
> arpcache.c: In function `NutArpCacheQuery':
> arpcache.c:487: error: unable to find a register to spill in
> class `POINTER_REGS'
> arpcache.c:487: error: this is the insn:
> (insn 90 207 206 5 (parallel [
> (set (mem:BLK (reg/v/f:HI 44 [ mac ]) [0 A8])
> (mem:BLK (reg/v/f:HI 28 r28 [orig:46 entry ]
> [46]) [0 A8]))
> (use (reg:QI 24 r24 [60]))
> (use (const_int 1 [0x1]))
> (clobber (scratch:HI))
> (clobber (scratch:HI))
> (clobber (scratch:QI))
> ]) 16 {*movstrqi_insn} (insn_list 87 (insn_list 89 (nil)))
> (expr_list:REG_DEAD (reg:QI 24 r24 [60])
> (expr_list:REG_DEAD (reg/v/f:HI 44 [ mac ])
> (expr_list:REG_UNUSED (scratch:QI)
> (expr_list:REG_UNUSED (scratch:HI)
> (expr_list:REG_UNUSED (scratch:HI)
> (nil)))))))
> arpcache.c:487: confused by earlier errors, bailing out
> make[1]: *** [arpcache.o] Fehler 1
> make[1]: Leaving directory `/home/tim/AVR/ethernut.sf.net/nut/net'
> make: *** [all] Fehler 2
>
Yes, it's currently a known bug in gcc for avr target. Please change the
line beginning with CPFLAGS in Makedefs.avr-gcc by removing -Os and
adding -O1.
This should help for now. (Or step back to avr-gcc version 3.4.2)
Cheers, Oliver.
More information about the En-Nut-Discussion
mailing list