The following type of dependence, similar to such that would be created by predictive commoning (or even PRE), is not supported by the vectorizer:
for (i = 1; i <= i_2; ++i) { a[i] = (b[i] + x) * .5f; x = b[i]; } -- Summary: Vectorizer doesn't support dependence created by predictive commoning Product: gcc Version: 4.3.0 Status: UNCONFIRMED Keywords: missed-optimization Severity: enhancement Priority: P3 Component: tree-optimization AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: irar at il dot ibm dot com http://gcc.gnu.org/bugzilla/show_bug.cgi?id=35229