[Bug tree-optimization/49006] [4.6/4.7 Regression] Missed vectorization due to revision 167531

dominiq at lps dot ens.fr gcc-bugzilla@gcc.gnu.org
Sun May 22 12:46:00 GMT 2011


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=49006

--- Comment #5 from Dominique d'Humieres <dominiq at lps dot ens.fr> 2011-05-22 12:22:48 UTC ---
> (In reply to comment #4)
>
> The problem is you don't see:
> > induct_v4.f90:1766: note: LOOP VECTORIZED.
> > induct_v4.f90:2177: note: LOOP VECTORIZED.
> anymore, right?
>
> With -Ofast there are no such loops, 1766 and 2177, they are probably being
> unrolled.
>
> I see these loops with -O2 -ftree-vectorize, and they are indeed not
> vectorized, but they are not vectorized by previous version as well, AFAIU.
>
> Ira

I have posted at pr34265 a reduced test allowing for twelve variants of the
inner loops in induct.f90.
The vectorization is indeed depending of what the pass_complete_unrolli is
doing. In a perfect world I would expect all these variants be equally
vectorized. I have no idea if this is doable, but I think the minimal quality
of implementation would require that the variants that are not vectorized (with
a very significant impact on the run time) do not depend on the revision and be
predictable along a line "do this, don't do that".



More information about the Gcc-bugs mailing list