https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64207
Joost VandeVondele <Joost.VandeVondele at mat dot ethz.ch> changed: What |Removed |Added ---------------------------------------------------------------------------- Status|UNCONFIRMED |RESOLVED CC| |Joost.VandeVondele at mat dot ethz | |.ch Resolution|--- |FIXED --- Comment #1 from Joost VandeVondele <Joost.VandeVondele at mat dot ethz.ch> --- -fopt-info is the replacement for -ftree-vectorizer-verbose, the latter is deprecated for example try -fopt-info-vec-missed or -fopt-info-all best is to keep the part to analyze rather simple, since it generates a lot of info that isn't always easy to understand: > cat t.f90 subroutine s(a,b,c) real, dimension(1024, 1024) :: a,b,c do i=1,1024 do j=1,1024 c(i,j) = a(j,i)*b(j,i) end do end do end subroutine > gfortran -c -O3 -march=native -ffast-math -fopt-info-vec-missed t.f90 t.f90:3:0: note: not vectorized: complicated access pattern. t.f90:3:0: note: bad data access. t.f90:4:0: note: not consecutive access *c_19(D)[_10] = _18; t.f90:4:0: note: not vectorized: complicated access pattern. t.f90:4:0: note: bad data access. [...] > cat t.f90 subroutine s(a,b,c) real, dimension(1024, 1024) :: a,b,c do i=1,1024 do j=1,1024 c(j,i) = a(j,i)*b(j,i) end do end do end subroutine > gfortran -c -O3 -march=native -ffast-math -fopt-info-vec t.f90 t.f90:4:0: note: loop vectorized t.f90:4:0: note: loop peeled for vectorization to enhance alignment