------- 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 -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=34195