This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug c/30843] ice for legal code with -ftree-vectorize -O2
- From: "dorit at il dot ibm dot com" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: 18 Feb 2007 21:50:55 -0000
- Subject: [Bug c/30843] ice for legal code with -ftree-vectorize -O2
- References: <bug-30843-9596@http.gcc.gnu.org/bugzilla/>
- Reply-to: gcc-bugzilla at gcc dot gnu dot org
------- Comment #2 from dorit at il dot ibm dot com 2007-02-18 21:50 -------
I was able to reproduce it. Here's a reduced testcase:
void dacP98FillRGBMap( unsigned char *pBuffer )
{
unsigned long dw, dw1;
unsigned long *pdw = (unsigned long *)(pBuffer);
for( dw = 256, dw1 = 0; dw; dw--, dw1 += 0x01010101 ) {
*pdw++ = dw1;
*pdw++ = dw1;
*pdw++ = dw1;
*pdw++ = dw1;
}
}
Looks like possibly some bad interaction between vectorization of induction and
vectorization of strided-access. Will investigate.
--
dorit at il dot ibm dot com changed:
What |Removed |Added
----------------------------------------------------------------------------
Summary|ice for legal code with - |ice for legal code with -
|ftree-vectorize -O2 |ftree-vectorize -O2
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=30843