Eric Botcazou wrote:
Building a --target=avr compiler currently fails because
/usr/src/packages/BUILD/gcc-4.1.0-20051110/obj-x86_64-suse-linux/./gcc/xgcc
-B/usr/src/packages/BUILD/gcc-4.1.0-20051110/obj-x86_64-suse-linux/./gcc/
-B/opt/cross/avr/bin/ -B/opt/cross/avr/lib/ -isystem
/opt/cross/avr/include -isystem /opt/cross/avr/sys-include -O2 -O2 -O2
-fmessage-length=0 -Wall -D_FORTIFY_SOURCE=2 -g -U_FORTIFY_SOURCE
-DIN_GCC -DCROSS_COMPILE -W -Wall -Wwrite-strings -Wstrict-prototypes
-Wmissing-prototypes -Wold-style-definition -isystem ./include -DDF=SF
-Dinhibit_libc -mcall-prologues -g -DIN_LIBGCC2 -D__GCC_FLOAT_NOT_NEEDED
-Dinhibit_libc -I. -I. -I../../gcc -I../../gcc/. -I../../gcc/../include
-I../../gcc/../libcpp/include -DL_ashrdi3 -c ../../gcc/libgcc2.c -o
libgcc/./_ashrdi3.o ../../gcc/libgcc2.c: In function '__muldi3':
../../gcc/libgcc2.c:511: error: total size of local objects too large
which does not make any sense. The above is for a x86_64 host, but I
see this errors everywhere.
I guess the sanity check I've added doesn't apply to micro-controllers. Try
the attached patch.
avr-rtems4.7 fails differently and apparently further along (gcc head,
newlib 1.13.0, binutils 2.16.1)
home/joel/gcc-work/head/b-avr-rtems4.7/./gcc/xgcc
-B/home/joel/gcc-work/head/b-avr-rtems4.7/./gcc/ -nostdinc
-B/home/joel/gcc-work/head/b-avr-rtems4.7/avr-rtems4.7/avr3/newlib/
-isystem
/home/joel/gcc-work/head/b-avr-rtems4.7/avr-rtems4.7/avr3/newlib/targ-include
-isystem /home/joel/gcc-work/head/gcc-head-test/newlib/libc/include
-B/home/joel/gcc-41-test//avr-rtems4.7/bin/
-B/home/joel/gcc-41-test//avr-rtems4.7/lib/ -isystem
/home/joel/gcc-41-test//avr-rtems4.7/include -isystem
/home/joel/gcc-41-test//avr-rtems4.7/sys-include -mmcu=avr3
-DPACKAGE=\"newlib\" -DVERSION=\"1.13.0\" -I.
-I../../../../../../gcc-head-test/newlib/libc/misc -Os
-DPREFER_SIZE_OVER_SPEED -mcall-prologues -DHAVE_GETTIMEOFDAY
-DMALLOC_PROVIDED -DEXIT_PROVIDED -DMISSING_SYSCALL_NAMES
-DSIGNAL_PROVIDED -DREENTRANT_SYSCALLS_PROVIDED -DHAVE_OPENDIR -DNO_EXEC
-DHAVE_FCNTL -fno-builtin -O2 -g -O2 -mmcu=avr3 -c
../../../../../../gcc-head-test/newlib/libc/misc/init.c
../../../../../../gcc-head-test/newlib/libc/misc/init.c: In function
'__libc_fini_array':
../../../../../../gcc-head-test/newlib/libc/misc/init.c:59: error:
unable to find a register to spill in class 'BASE_POINTER_REGS'
../../../../../../gcc-head-test/newlib/libc/misc/init.c:59: error: this
is the insn:
(insn 64 31 32 2
../../../../../../gcc-head-test/newlib/libc/misc/init.c:56 (set
(mem/c:HI (plus:HI (reg/f:HI 28 r28)
(const_int 1 [0x1])) [5 S2 A8])
(reg:HI 24 r24)) 12 {*movhi} (nil)
(nil))
../../../../../../gcc-head-test/newlib/libc/misc/init.c:59: internal
compiler error: in spill_failure, at reload1.c:1890
--
Joel Sherrill, Ph.D. Director of Research & Development
[EMAIL PROTECTED] On-Line Applications Research
Ask me about RTEMS: a free RTOS Huntsville AL 35805
Support Available (256) 722-9985