------- Comment #2 from rask at sygehus dot dk 2007-07-01 10:01 ------- Created an attachment (id=13810) --> (http://gcc.gnu.org/bugzilla/attachment.cgi?id=13810&action=view) First attempt at a patch
The attached patch makes the v850 build on x86_64. There are a few regressions (when run on i686-pc-linux-gnu): +FAIL: gcc.c-torture/compile/pr23233-1.c -O3 -fomit-frame-pointer -funroll-all-loops -finline-functions (internal compiler error) +FAIL: gcc.c-torture/compile/pr23233-1.c -O3 -fomit-frame-pointer -funroll-all-loops -finline-functions (test for excess errors) +FAIL: gcc.c-torture/compile/pr29250.c -O3 -fomit-frame-pointer -funroll-loops (internal compiler error) +FAIL: gcc.c-torture/compile/pr29250.c -O3 -fomit-frame-pointer -funroll-loops (test for excess errors) +FAIL: gcc.c-torture/compile/pr29250.c -O3 -fomit-frame-pointer -funroll-all-loops -finline-functions (internal compiler error) +FAIL: gcc.c-torture/compile/pr29250.c -O3 -fomit-frame-pointer -funroll-all-loops -finline-functions (test for excess errors) +FAIL: gcc.dg/setjmp-1.c spurious clobbered warning (test for bogus messages, line 16) +FAIL: g++.dg/opt/asm1.C double sized union element should be addressible (test for bogus messages, line 8) +FAIL: g++.dg/opt/pr15551.C execution test >From the logs: Executing on host: /home/rask/build/gcc-v850-unknown-elf/gcc/xgcc -B/home/rask/build/gcc-v850-unknown-elf/gcc/ -O3 -fomit-frame-pointer -funroll-all-loops -finline-functions -w -fno-show-column -c -isystem /home/rask/build/gcc-v850-unknown-elf/v850-unknown-elf/./newlib/targ-include -isystem /n/08/rask/src/all/newlib/libc/include -o pr23233-1.o /n/08/rask/src/all/gcc/testsuite/gcc.c-torture/compile/pr23233-1.c (timeout = 300) /n/08/rask/src/all/gcc/testsuite/gcc.c-torture/compile/pr23233-1.c: In function 'foo': /n/08/rask/src/all/gcc/testsuite/gcc.c-torture/compile/pr23233-1.c:8: error: unrecognizable insn: (jump_insn 147 142 144 12 (return) -1 (nil)) /n/08/rask/src/all/gcc/testsuite/gcc.c-torture/compile/pr23233-1.c:8: internal compiler error: in extract_insn, at recog.c:1991 (Same thing with gcc.c-torture/compile/pr29250.c.) Executing on host: /home/rask/build/gcc-v850-unknown-elf/gcc/xgcc -B/home/rask/build/gcc-v850-unknown-elf/gcc/ /n/08/rask/src/all/gcc/testsuite/gcc.dg/setjmp-1.c -O -Wclobbered -Wextra -Wall -fno-show-column -S -isystem /home/rask/build/gcc-v850-unknown-elf/v850-unknown-elf/./newlib/targ-include -isystem /n/08/rask/src/all/newlib/libc/include -o setjmp-1.s (timeout = 300) /n/08/rask/src/all/gcc/testsuite/gcc.dg/setjmp-1.c: In function 'compare_float': /n/08/rask/src/all/gcc/testsuite/gcc.dg/setjmp-1.c:16: warning: argument 'b' might be clobbered by 'longjmp' or 'vfork' Executing on host: /home/rask/build/gcc-v850-unknown-elf/gcc/testsuite/g++/../../g++ -B/home/rask/build/gcc-v850-unknown-elf/gcc/testsuite/g++/../../ /n/08/rask/src/all/gcc/testsuite/g++.dg/opt/asm1.C -nostdinc++ -I/home/rask/build/gcc-v850-unknown-elf/v850-unknown-elf/libstdc++-v3/include/v850-unknown-elf -I/home/rask/build/gcc-v850-unknown-elf/v850-unknown-elf/libstdc++-v3/include -I/n/08/rask/src/all/libstdc++-v3/libsupc++ -I/n/08/rask/src/all/libstdc++-v3/include/backward -I/n/08/rask/src/all/libstdc++-v3/testsuite/util -fmessage-length=0 -O -S -isystem /home/rask/build/gcc-v850-unknown-elf/v850-unknown-elf/./newlib/targ-include -isystem /n/08/rask/src/all/newlib/libc/include -o asm1.s (timeout = 300) /n/08/rask/src/all/gcc/testsuite/g++.dg/opt/asm1.C: In function 'void foo()': /n/08/rask/src/all/gcc/testsuite/g++.dg/opt/asm1.C:8: error: output number 0 not directly addressable -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32558