[Bug tree-optimization/56812] Simple loop is not SLP-vectorized after r196872

rguenth at gcc dot gnu.org gcc-bugzilla@gcc.gnu.org
Tue Apr 2 14:06:00 GMT 2013


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

--- Comment #6 from Richard Biener <rguenth at gcc dot gnu.org> 2013-04-02 14:06:12 UTC ---
The BB vectorization case ran into

      /* When vectorizing a basic block unknown depnedence can still mean
         grouped access.  */
      if (vect_check_interleaving (dra, drb))
         return false;

that is, whenever dra and drb are part of the same interleaving chain
it considers the accesses to be independent.  I'm not sure this is
a good idea in general, but it's easy to re-instantiate.

There is no reason why dependence analysis should fail here though
(it does because dr_may_alias_p does not use SCEV info as computed by
dr_analyze_innermost and used by interleaving chain analysis, but instead
it looks at the base DR_REF which is also used as DR_BASE_OBJECT).



More information about the Gcc-bugs mailing list