[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