http://gcc.gnu.org/bugzilla/show_bug.cgi?id=49006
Summary: [4.6/4.7 Regression] Missed vectorization due to revision 167531 Product: gcc Version: 4.6.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: tree-optimization AssignedTo: unassig...@gcc.gnu.org ReportedBy: domi...@lps.ens.fr CC: rgue...@gcc.gnu.org Created attachment 24250 --> http://gcc.gnu.org/bugzilla/attachment.cgi?id=24250 source code On x86_64-apple-darwin10 the attached code (an avatar of the polyhedron test induct.f90) is no longer properly vectorized after revision 167531: [macbook] lin/test% /opt/gcc/gcc4.6p-167530/bin/gfortran -Ofast -ftree-vectorizer-verbose=2 induct_v4.f90 ... induct_v4.f90:1757: note: not vectorized: can't create epilog loop 1. induct_v4.f90:1766: note: LOOP VECTORIZED. induct_v4.f90:1711: note: LOOP VECTORIZED. induct_v4.f90:1633: note: LOOP VECTORIZED. induct_v4.f90:1449: note: vectorized 3 loops in function. induct_v4.f90:2168: note: not vectorized: can't create epilog loop 1. induct_v4.f90:2177: note: LOOP VECTORIZED. induct_v4.f90:2095: note: LOOP VECTORIZED. induct_v4.f90:2018: note: LOOP VECTORIZED. induct_v4.f90:1832: note: vectorized 3 loops in function. ... [macbook] lin/test% time a.out > /dev/null 12.677u 0.027s 0:12.70 99.9% 0+0k 0+1io 0pf+0w [macbook] lin/test% /opt/gcc/gcc4.6p-167531/bin/gfortran -Ofast -ftree-vectorizer-verbose=2 induct_v4.f90 ... induct_v4.f90:1728: note: not vectorized: unsupported use in stmt. induct_v4.f90:1757: note: not vectorized: unsupported use in stmt. induct_v4.f90:1711: note: LOOP VECTORIZED. induct_v4.f90:1633: note: LOOP VECTORIZED. induct_v4.f90:1449: note: vectorized 2 loops in function. induct_v4.f90:2168: note: not vectorized: unsupported use in stmt. induct_v4.f90:2095: note: LOOP VECTORIZED. induct_v4.f90:2018: note: LOOP VECTORIZED. induct_v4.f90:1832: note: vectorized 2 loops in function. ... [macbook] lin/test% time a.out > /dev/null 21.831u 0.031s 0:21.86 100.0% 0+0k 0+0io 0pf+0w