This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [Bug target/32457] [4.3 Regression] Complete program optimized away (i686, -ftree-vectorize)


Hi,

I'm bootstrapping this patch on both amd64-linux and i686-linux.

The patch passed bootstrap and test on both machines with no new regressions. I had to modify the checking line for the testcase, as I used -fdump-vect-all-all to prepare the testcase, and when I checked the vectorizer dump of the checker, it was only two lines long:

/home/pop/gcc/trunk/gcc/testsuite/gfortran.dg/vect/pr32457.f90:6:
note: not vectorized: can't determine dependence between
(*rbound_9(D))[D.137
7_8] and (*rbound_9(D))[D.1375_5]
/home/pop/gcc/trunk/gcc/testsuite/gfortran.dg/vect/pr32457.f90:4:
note: vectorized 0 loops in function.

So I just removed the check for the second pattern:
! { dg-final { scan-tree-dump-times "possible dependence between
data-refs" 1 "vect" } }
and the new version of the testcase is like this:

! { dg-do compile }
! { dg-require-effective-target vect_float }

SUBROUTINE KEEL(RBOUND)
 REAL, DIMENSION(0:100) :: RBOUND
 DO N = 1, NP1
    RBOUND(N) = RBOUND(N-1) + 1
 END DO
 DO N = 1, NS
    WRITE (16,'(I5)') SRAD(N)
 END DO
END SUBROUTINE KEEL

! { dg-final { scan-tree-dump-times "vectorized 0 loops" 1 "vect" } }
! { dg-final { cleanup-tree-dump "vect" } }

Sebastian


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]