This is the mail archive of the gcc@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: missed vectorization (was Some thoughts about steerring commitee work)


DORIT@il.ibm.com wrote:
Tim Prince <n8tm@aol.com> wrote on 17/06/2007 04:15:56:

hjl@lucon.org wrote:
On Sat, Jun 16, 2007 at 06:54:46PM +0300, Dorit Nuzman wrote:
There are quite a few known simple cases which vectorizer fails to
vectorize.
by "known" you mean there are open missed-optimization PRs for them?
(if
Yes, that is what I meant.

I'd be happy to file some PRs along this line, if there is interest. C

yes, there is


or C++, if there's more interest in that than in Fortran.  But, gfortran
fails to vectorize more than 50% of the stuff I run into every day,
including most everything which involves distinct sections of the same
array or COMMON block.

I thought there was already a PR opened for this issue (probably by Toon), but I can't find it :-(

thanks,
dorit

There are several issues. EQUIVALENCE produces such a problem (PR32373) as do various kinds of references to multiple sections of the same array (PR32375,32376,32377,32378,32379,32380). Only 2 of those PRs involve actual source/destination overlap, where the vectorizer would have to choose the correct direction (loop reversed or not).
In the bigger case (PR32380) there are loops which vectorize in isolation but not in the presence of other loops.


There are existing PRs on a somewhat similar issue involving type casting in C. IMHO, not vectorizing those might seem excusable.

Thanks,
Tim


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]