------- Comment #5 from dorit at gcc dot gnu dot org 2009-03-08 14:25 ------- This is a known problem... Indeed when Zdenek introduced predictive-commoning there was a discussion on whether to schedule it before or after vectorization. AFAIR, it ended up getting scheduled before the vectorizer just because this happened to be what Zdenek tested/experimented with, and he didn't have a problem with scheduling it after vectorization as long as it didn't hurt performance (of mgrid in particular). Here are related threads: http://gcc.gnu.org/ml/gcc-patches/2007-02/msg01383.html http://gcc.gnu.org/ml/gcc-patches/2007-02/msg00555.html http://gcc.gnu.org/ml/gcc-patches/2007-05/msg00571.html
Regardless of whether we scheudule predcom after vectorization, it will still be useful to teach the vectorizer to handle such dependence patterns, as they may (and do) appear in the source code. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39300