http://gcc.gnu.org/bugzilla/show_bug.cgi?id=46329
Summary: ICE on ARM for __attribute__ ((vector_size (8 * sizeof(int)))) operations Product: gcc Version: unknown Status: UNCONFIRMED Severity: normal Priority: P3 Component: target AssignedTo: unassig...@gcc.gnu.org ReportedBy: poen...@htwm.de Running /opt/arm-toolchain/bin/arm-none-linux-gnueabi-gcc -mfloat-abi=softfp -mfpu=neon -mcpu=cortex-a8 -march=armv7-a -mtune=cortex-a8 -ffast-math -ftree-vectorize -ftree-vectorizer-verbose=6 -fexpensive-optimizations -fstrict-aliasing -Wstrict-aliasing -Wunsafe-loop-optimizations -funsafe-loop-optimizations -funsafe-math-optimizations -save-temps -fno-unroll-loops -fno-unroll-all-loops -fno-peel-loops -O3 -c testomap.c -o testomap.o on void add_i_up(int n, int *aa, int *bb) { typedef int intN __attribute__ ((vector_size (8 * sizeof(int)))); intN *a = (intN *) aa; intN *b = (intN *) bb; do { *a++ *= *b++; n -= sizeof(intN) / sizeof(int); } while (n); } yields testomap.c:28:1: error: unable to find a register to spill in class ‘GENERAL_REGS’ testomap.c:28:1: error: this is the insn: (insn 97 87 79 3 (set (reg:OI 248) (const_int 0 [0])) testomap.c:25 751 {*neon_movoi} (expr_list:REG_EQUAL (const_int 0 [0]) (nil))) testomap.c:28:1: internal compiler error: in spill_failure, at reload1.c:2105 with r166390 | gccadmin | 2010-11-06 01:17:56 +0100 (Sat, 06 Nov 2010) | 1 line