GCC 4.6 is ICEing with the attached testcase. And this is not related to https://bugs.launchpad.net/gcc-linaro/+bug/711819
as the ICE happens after those patches applied.
The options needed are
-march=armv7-a -mfloat-abi=softfp -O2
my gcc is configures as below
./work/angstrom/build/tmp-angstrom_2010_x-eglibc/sysroots/x86_64-linux/usr/bin/armv7a-angstrom-linux-gnueabi/arm-angstrom-linux-gnueabi-gcc -v
Using built-in specs.
COLLECT_GCC=./work/angstrom/build/tmp-angstrom_2010_x-eglibc/sysroots/x86_64-linux/usr/bin/armv7a-angstrom-linux-gnueabi/arm-angstrom-linux-gnueabi-gcc
COLLECT_LTO_WRAPPER=/home/kraj/work/angstrom/build/tmp-angstrom_2010_x-eglibc/sysroots/x86_64-linux/usr/libexec/armv7a-angstrom-linux-gnueabi/gcc/arm-angstrom-linux-gnueabi/4.6.0/lto-wrapper
Target: arm-angstrom-linux-gnueabi
Configured with: /home/kraj/work/angstrom/build/tmp-angstrom_2010_x-eglibc/work/armv7a-angstrom-linux-gnueabi/gcc-cross-4.6-r0/gcc-4.6.0/configure --build=x86_64-linux --host=x86_64-linux --target=arm-angstrom-linux-gnueabi --prefix=/home/kraj/work/angstrom/build/tmp-angstrom_2010_x-eglibc/sysroots/x86_64-linux/usr --exec_prefix=/home/kraj/work/angstrom/build/tmp-angstrom_2010_x-eglibc/sysroots/x86_64-linux/usr --bindir=/home/kraj/work/angstrom/build/tmp-angstrom_2010_x-eglibc/sysroots/x86_64-linux/usr/bin/armv7a-angstrom-linux-gnueabi --sbindir=/home/kraj/work/angstrom/build/tmp-angstrom_2010_x-eglibc/sysroots/x86_64-linux/usr/bin/armv7a-angstrom-linux-gnueabi --libexecdir=/home/kraj/work/angstrom/build/tmp-angstrom_2010_x-eglibc/sysroots/x86_64-linux/usr/libexec/armv7a-angstrom-linux-gnueabi --datadir=/home/kraj/work/angstrom/build/tmp-angstrom_2010_x-eglibc/sysroots/x86_64-linux/usr/share --sysconfdir=/home/kraj/work/angstrom/build/tmp-angstrom_2010_x-eglibc/sysroots/x86_64-linux/etc --sharedstatedir=/home/kraj/work/angstrom/build/tmp-angstrom_2010_x-eglibc/sysroots/x86_64-linux/com --localstatedir=/home/kraj/work/angstrom/build/tmp-angstrom_2010_x-eglibc/sysroots/x86_64-linux/var --libdir=/home/kraj/work/angstrom/build/tmp-angstrom_2010_x-eglibc/sysroots/x86_64-linux/usr/lib/armv7a-angstrom-linux-gnueabi --includedir=/home/kraj/work/angstrom/build/tmp-angstrom_2010_x-eglibc/sysroots/x86_64-linux/usr/include --oldincludedir=/home/kraj/work/angstrom/build/tmp-angstrom_2010_x-eglibc/sysroots/x86_64-linux/usr/include --infodir=/home/kraj/work/angstrom/build/tmp-angstrom_2010_x-eglibc/sysroots/x86_64-linux/usr/share/info --mandir=/home/kraj/work/angstrom/build/tmp-angstrom_2010_x-eglibc/sysroots/x86_64-linux/usr/share/man --disable-silent-rules --with-libtool-sysroot=/home/kraj/work/angstrom/build/tmp-angstrom_2010_x-eglibc/sysroots/x86_64-linux --with-gnu-ld --enable-shared --enable-languages=c,c++ --enable-threads=posix --disable-multilib --enable-c99 --enable-long-long --enable-symvers=gnu --enable-libstdcxx-pch --program-prefix=arm-angstrom-linux-gnueabi- --enable-target-optspace --enable-lto --enable-libssp --disable-bootstrap --disable-libgomp --disable-libmudflap --enable-cheaders=c_global --with-float=soft --with-local-prefix=/home/kraj/work/angstrom/build/tmp-angstrom_2010_x-eglibc/sysroots/beagleboard/usr --with-gxx-include-dir=/usr/include/c++ --with-sysroot=/home/kraj/work/angstrom/build/tmp-angstrom_2010_x-eglibc/sysroots/beagleboard --with-build-sysroot=/home/kraj/work/angstrom/build/tmp-angstrom_2010_x-eglibc/sysroots/beagleboard --enable-poison-system-directories --disable-libunwind-exceptions --with-mpfr=/home/kraj/work/angstrom/build/tmp-angstrom_2010_x-eglibc/sysroots/x86_64-linux/usr --with-system-zlib --enable-nls --enable-__cxa_atexit --enable-__cxa_atexit
Thread model: posix
gcc version 4.6.0 (GCC)
Thank you for the bug report. I've confirmed this with gcc-linaro- 4.6-2011. 05-0 on ARM:
michaelh@ ursa1:~ /linaro/ bugs$ /tools/ toolchains/ arch/armv7l/ gcc-linaro- 4.6-2011. 05-0-armv7l- maverick- cbuild114- ursa3-cortexa9r 1/bin/gcc -c -O2 -marm lp788841.i emit_instructio ns': insn.c: 2889:1: internal compiler error: in push_minipool_fix, at config/ arm/arm. c:12138
svga_tgsi_insn.c: In function 'svga_shader_
svga_tgsi_
...
michaelh@ ursa1:~ /linaro/ bugs$ /tools/ toolchains/ gcc-4.6. 0-armv7l- maverick- cbuild93- ursa1-cortexa8r 1/bin/gcc -c -O2 -marm lp788841.i emit_instructio ns': insn.c: 2889:1: internal compiler error: in push_minipool_fix, at config/ arm/arm. c:12084
svga_tgsi_insn.c: In function 'svga_shader_
svga_tgsi_
...
The work-around is to compile at -O1. The fault also exists in gcc-4.6.0. It does not exist in linaro- gcc-4.5- 2011.05, gcc-4.5.2, or gcc-trunk r174044. As this is a regression in 4.6 compared to 4.5, Could you please also report this in GCC bugzilla and attach it to this ticket?
I've set it to medium as it is a ftbfs, the fault exists upstream, and there is a work-around.