[Bug tree-optimization/34195] missed optimization with store motion (vectorizer)

eres at il dot ibm dot com gcc-bugzilla@gcc.gnu.org
Fri Nov 30 17:24:00 GMT 2007

------- Comment #5 from eres at il dot ibm dot com  2007-11-30 17:24 -------
(In reply to comment #4)
> That moves the stores
>           pS[i].x += (a[i]+b[i]);
>           pS[i].y += (a[i]-b[i]);
> out of the inner loop, but still none of the loops are vectorized (on x86_64).

Also on ppc64.  It seems to be the same problem as PR32824. Nevertheless lim
can improved performance regardless of vectorization, as was mentioned before.

Taken from the vectorizer dump:
u.c:17: note: vect_is_simple_use: operand pS_I__ypS_I_I_lsm.16_15
u.c:17: note: def_stmt: pS_I__ypS_I_I_lsm.16_15 = PHI
<pS_I__ypS_I_I_lsm.16_23(6), pS_I__ypS_I_I_lsm.16_12(4)>
u.c:17: note: Unsupported pattern.
u.c:17: note: not vectorized: unsupported use in stmt.
u.c:17: note: unexpected pattern.(get_loop_exit_condition



More information about the Gcc-bugs mailing list