On trunk revision 149204: /home/guerby/build/./prev-gcc/xgcc -B/home/guerby/build/./prev-gcc/ -B/n/40/guerby/install-trunk/powerpc64-unknown-linux-gnu/bin/ -B/n/40/guerby/install-trunk/powerpc64-unknown-linux-gnu/bin/ -B/n/40/guerby/install-trunk/powerpc64-unknown-linux-gnu/lib/ -isystem /n/40/guerby/install-trunk/powerpc64-unknown-linux-gnu/include -isystem /n/40/guerby/install-trunk/powerpc64-unknown-linux-gnu/sys-include -c -g -O2 -gnatpg -gnata -nostdinc -I- -I. -Iada -I../../trunk/gcc/ada -I../../trunk/gcc/ada/gcc-interface ../../trunk/gcc/ada/s-bitops.adb -o ada/s-bitops.o raised STORAGE_ERROR : stack overflow (or erroneous memory access) make[3]: *** [ada/s-bitops.o] Error 1 make[3]: Leaving directory `/home/guerby/build/gcc' make[2]: *** [all-stage3-gcc] Error 2 make[2]: Leaving directory `/home/guerby/build' make[1]: *** [stage3-bubble] Error 2 make[1]: Leaving directory `/home/guerby/build' make: *** [bootstrap] Error 2 Under the debugger: (gdb) r -I- -I. -Iada -I../../trunk/gcc/ada -I../../trunk/gcc/ada/gcc-interface -quiet -nostdinc -dumpbase s-bitops.adb -auxbase-strip ada/s-bitops.o -O2 -g -gnatpg -gnata -gnatO ada/s-bitops.o ../../trunk/gcc/ada/s-bitops.adb -o /tmp/ccz0AGDK.s Starting program: /home/guerby/build/prev-gcc/gnat1 -I- -I. -Iada -I../../trunk/gcc/ada -I../../trunk/gcc/ada/gcc-interface -quiet -nostdinc -dumpbase s-bitops.adb -auxbase-strip ada/s-bitops.o -O2 -g -gnatpg -gnata -gnatO ada/s-bitops.o ../../trunk/gcc/ada/s-bitops.adb -o /tmp/ccz0AGDK.s warning: no loadable sections found in added symbol-file system-supplied DSO at 0x100000 Program received signal SIGSEGV, Segmentation fault. 0x000000001030d95c in <osint___elabs> () at ../../trunk/gcc/ada/osint.ads:601 601 new File_Name_Array (1 .. Int (Argument_Count) + 2); Current language: auto; currently ada (gdb) bt #0 0x000000001030d95c in <osint___elabs> () at ../../trunk/gcc/ada/osint.ads:601 #1 0x000000001011e644 in adainit () at ada/b_gnat1.c:368 Backtrace stopped: frame did not save the PC (gdb) b main Breakpoint 3 at 0x104ae94c: file ../../trunk/gcc/main.c, line 35. (gdb) r The program being debugged has been started already. Start it from the beginning? (y or n) y Starting program: /home/guerby/build/prev-gcc/gnat1 -I- -I. -Iada -I../../trunk/gcc/ada -I../../trunk/gcc/ada/gcc-interface -quiet -nostdinc -dumpbase s-bitops.adb -auxbase-strip ada/s-bitops.o -O2 -g -gnatpg -gnata -gnatO ada/s-bitops.o ../../trunk/gcc/ada/s-bitops.adb -o /tmp/ccz0AGDK.s warning: no loadable sections found in added symbol-file system-supplied DSO at 0x100000 Breakpoint 3, main (argc=21, argv=0xffffffff7d8) at ../../trunk/gcc/main.c:35 35 return toplev_main (argc, argv); Current language: auto; currently c (gdb) bt #0 main (argc=21, argv=0xffffffff7d8) at ../../trunk/gcc/main.c:35 (gdb) s Program received signal SIGSEGV, Segmentation fault. 0x000000001030d95c in <osint___elabs> () at ../../trunk/gcc/ada/osint.ads:601 601 new File_Name_Array (1 .. Int (Argument_Count) + 2); Current language: auto; currently ada (gdb) bt #0 0x000000001030d95c in <osint___elabs> () at ../../trunk/gcc/ada/osint.ads:601 #1 0x000000001011e644 in adainit () at ada/b_gnat1.c:368 Backtrace stopped: frame did not save the PC This is the first Ada file compiled during stage3, likely stage2 compiler is miscompiled.
powerpc 32 bits Ada bootstraps and testresults are fine: http://gcc.gnu.org/ml/gcc-testresults/2009-07/msg00181.html
I see this with a biarch compiler defaulting to powerpc-linux-gnu as well, rev 149224 Matthias Configured with: ../src/configure -v --with-pkgversion='Debian 20090704-1' --with-bugurl=file:///usr/share/doc/gcc-snapshot/README.Bugs --enable-languages=c,ada,c++,java,fortran,objc,obj-c++ --prefix=/usr/lib/gcc-snapshot --enable-shared --enable-multiarch --with-system-zlib --disable-nls --enable-clocale=gnu --enable-libstdcxx-debug --enable-mpfr --enable-java-awt=gtk --enable-gtk-cairo --disable-plugin --with-java-home=/usr/lib/gcc-snapshot/java-1.5.0-gcj-4.5/jre --enable-java-home --with-jvm-root-dir=/usr/lib/gcc-snapshot/java-1.5.0-gcj-4.5 --with-arch-directory=ppc --with-ecj-jar=/usr/share/java/eclipse-ecj.jar --enable-objc-gc --disable-softfloat --enable-secureplt --enable-targets=powerpc-linux,powerpc64-linux --with-cpu=default32 --with-long-double-128 --disable-werror --build=powerpc-linux-gnu --host=powerpc-linux-gnu --target=powerpc-linux-gnu Thread model: posix gcc version 4.5.0 20090704 (experimental) [trunk revision 149224] (Debian 20090704-1)
So confirmed. I'm now trying to identify the commit.
boot ok 148068 boot fail 149083 binary search running on gcc40
Current progress: boot ok 148068 boot ok 148575 boot ok 148638 boot ok 148702 boot ok 148829 boot ko 148892 boot ko 148956 boot ko 149083
It is probably related to my powerpc power7 checkin starting with 148869. It may or may not be related to an issue I am looking at in that if you build the compiler with altivec, it miscompiles the code, and 403.gcc in spec does not run correctly. Unfortunately, SUSE doesn't provide Gnu Ada for powerpc, which means I can't build it on my normal systems.
Indeed the search converged to: boot ok 148868 boot ko 148869 May be you can use your compile farm account to use or grab a working Ada compiler for powerpc-linux? guerby@gcc40:~$ ldd /usr/lib/gcc/powerpc-linux-gnu/4.1.3/gnat1 libc.so.6 => /lib/tls/libc.so.6 (0x0fe8c000) /lib/ld.so.1 (0xf7fe6000) guerby@gcc40:~$ ldd /opt/cfarm/release/4.4.1/libexec/gcc/powerpc64-unknown-linux-gnu/4.4.1/gnat1 libc.so.6 => /lib64/libc.so.6 (0x0000040000037000) /lib64/ld64.so.1 (0x0000040000000000)
It now happens on powerpc 32 bits: /home/guerby/build/./prev-gcc/xgcc -B/home/guerby/build/./prev-gcc/ -B/n/53/guerby/install-trunk/powerpc-unknown-linux-gnu/bin/ -B/n/53/guerby/install-trunk/powerpc-unknown-linux-gnu/bin/ -B/n/53/guerby/ins\ tall-trunk/powerpc-unknown-linux-gnu/lib/ -isystem /n/53/guerby/install-trunk/powerpc-unknown-linux-gnu/include -isystem /n/53/guerby/install-trunk/powerpc-unknown-linux-gnu/sys-include -c -g -O2 -gnatp\ g -gnata -nostdinc -I- -I. -Iada -I../../trunk/gcc/ada -I../../trunk/gcc/ada/gcc-interface ../../trunk/gcc/ada/s-bitops.adb -o ada/s-bitops.o raised STORAGE_ERROR : stack overflow (or erroneous memory access) make[3]: *** [ada/s-bitops.o] Error 1 make[3]: Leaving directory `/home/guerby/build/gcc' make[2]: *** [all-stage3-gcc] Error 2 make[2]: Leaving directory `/home/guerby/build' make[1]: *** [stage3-bubble] Error 2 make[1]: Leaving directory `/home/guerby/build' make: *** [bootstrap] Error 2 Michael, any idea on how to make progress here?
powerpc32 started working again: 151259 ko 151268 ok So both powerpc64 and powerpc32 are bootstraping with Ada again. Likely candidate: +2009-09-01 Richard Guenther <rguenther@suse.de> + + * tree.c (tree_expr_size): New function. + * tree.h (tree_expr_size): Declare. + * rtlanal.c (rtx_addr_can_trap_p_1): Adjust comment. + * builtins.c (fold_builtin_memory_op): Use tree_expr_size. + * langhooks.c (lhd_expr_size): Remove. + * langhooks.h (struct lang_hooks): Remove expr_size. + * explow.c (expr_size): Use tree_expr_size. + (int_expr_size): Likewise. + * langhooks-def.h (lhd_expr_size): Remove. + (LANG_HOOKS_EXPR_SIZE): Likewise. + (LANG_HOOKS_INITIALIZER): Adjust. + +2009-09-01 Richard Guenther <rguenther@suse.de> + + * tree-flow.h (mark_addressable): Move declaration ... + * tree.h (mark_addressable): ... here. + * stmt.c (expand_asm_operands): Use mark_addressable, not + lang_hooks.mark_addressable. + * langhooks-def.h (LANG_HOOKS_INITIALIZER): Remove + LANG_HOOKS_MARK_ADDRESSABLE. + * langhooks.h (struct lang_hooks): Remove mark_addressable langhook. + * c-objc-common.h (LANG_HOOKS_MARK_ADDRESSABLE): Remove. +