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).