This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug tree-optimization/35653] [4.3/4.4 Regression]: gcc-4.3 -O3/-ftree-vectorize regression: incorrect code generation
- From: "victork at gcc dot gnu dot org" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: 24 Mar 2008 19:14:04 -0000
- Subject: [Bug tree-optimization/35653] [4.3/4.4 Regression]: gcc-4.3 -O3/-ftree-vectorize regression: incorrect code generation
- References: <bug-35653-15165@http.gcc.gnu.org/bugzilla/>
- Reply-to: gcc-bugzilla at gcc dot gnu dot org
------- Comment #14 from victork at gcc dot gnu dot org 2008-03-24 19:14 -------
> I tend to agree with Andrew here. If you go through a packed union the failure
> vanishes:
> So, IMHO this bug is invalid.
The fact that failure vanishes is not a good argument here. The failure
vanishes simply because vectorized failed to vectorize "dest->u" statement.
Here is an modified example
struct U
{
unsigned u;
};
int main()
{
struct U buf[256];
struct U *dest;
int i;
dest = buf;
for (i = 0; i < 32; i++)
{
dest->u = 0;
dest += 1;
}
return buf[2].u;
}
And it is not vectorized without any good reason.
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=35653