Compiler barfs on this code compiled -march=iwmmxt typedef short vs __attribute__ ((vector_size (8))); void foo (vs * a) { a[0] = __builtin_arm_wsllhi (a[0], 1); } gcc -v output Using built-in specs. Target: arm-iwmmxt-elf Configured with: /home/eliot/mu/build/../gcc/configure --target=arm-iwmmxt-elf --libdir=/home/eliot/mu/build/tools/lib --prefix=/home/eliot/mu/build/tools --disable-nls --disable-multilib --disable-libmudflap --disable-libssp --disable-shared --enable-languages=c --enable-threads=single --with-arch=iwmmxt --with-abi=iwmmxt Thread model: single gcc version 4.3.1 (GCC)
Created attachment 15976 [details] test case which crashes gcc Here's the test case so you don't have to type it in.
Appears with today's trunk (r147467) with the following options. /home/ramrad01/fsfbugzilla/pr36966.c: In function 'foo': /home/ramrad01/fsfbugzilla/pr36966.c:5: internal compiler error: in arm_expand_binop_builtin, at config/arm/arm.c:16182 Please submit a full bug report, with preprocessed source if appropriate. See <http://gcc.gnu.org/bugs.html> for instructions.
Confirmed with 4.4.5 and 4.5.2: $ gcc -O2 -march=iwmmxt -c 36966.c -o 36966.c 36966.c: In function 'foo': 36966.c:5: internal compiler error: in arm_expand_binop_builtin, at config/arm/arm.c:16192 Please submit a full bug report, with preprocessed source if appropriate. See <http://bugzilla.redhat.com/bugzilla> for instructions. Preprocessed source stored into /tmp/ccG40Hm6.out file, please attach this to your bugreport. $ armv5tel-unknown-linux-gnueabi-gcc -O2 -march=iwmmxt -c 36966.c 36966.c: In function 'foo': 36966.c:5:31: internal compiler error: in arm_expand_binop_builtin, at config/arm/arm.c:17895 Please submit a full bug report, with preprocessed source if appropriate. See <http://bugs.gentoo.org/> for instructions.
This is a duplicate of bug 35294.
Duplicate bug report. *** This bug has been marked as a duplicate of bug 35294 ***