[Bug c/17961] New: ICE for operation on small vector with altivec enabled
janis187 at us dot ibm dot com
gcc-bugzilla@gcc.gnu.org
Tue Oct 12 23:41:00 GMT 2004
This test case causes two different internal compiler errors in GCC when
compiled with "-m32 -maltivec", with VECSIZE either 2 or 8:
__attribute__ ((vector_size (VECSIZE))) unsigned char v1, v2, v3;
void vxor (void) { v1 = v2 ^ v3; }
Using a cross compiler on i686-linux with today's mainline:
laptop% $XGCC -m32 -maltivec -DVECSIZE=2 -c bug2.c
bug2.c: In function 'vxor':
bug2.c:9: internal compiler error: in operand_subword_force, at
/emit-rtl.c:1384Please submit a full bug report,
with preprocessed source if appropriate.
See <URL:http://gcc.gnu.org/bugs.html> for instructions.
laptop% $XGCC -m32 -maltivec -DVECSIZE=8 -c bug2.c
bug2.c: In function 'vxor':
bug2.c:10: internal compiler error: in simplify_subreg, at /simplify-rtx.c:3572
Please submit a full bug report,
with preprocessed source if appropriate.
See <URL:http://gcc.gnu.org/bugs.html> for instructions.
There is no ICE when VECSIZE is 4. Hardware-supported AltiVec vectors
are 16 bytes, so all of these are smaller than hardware-supported
vectors. The larger testcase compiles and runs as expected when hardware
vector support is not enabled.
--
Summary: ICE for operation on small vector with altivec enabled
Product: gcc
Version: 4.0.0
Status: UNCONFIRMED
Severity: normal
Priority: P2
Component: c
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: janis187 at us dot ibm dot com
CC: gcc-bugs at gcc dot gnu dot org
GCC target triplet: powerpc-unknown-linux-gnu
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=17961
More information about the Gcc-bugs
mailing list