+2017-10-04 Richard Biener <rguenther@suse.de>
+
+ * gfortran.dg/graphite/id-17.f: For ilp32 allow graphite codegen
+ errors and scan for one.
+ * gfortran.dg/graphite/id-19.f: Likewise.
+ * gfortran.dg/graphite/pr29832.f90: Likewise.
+ * gfortran.dg/graphite/pr42326-1.f90: Likewise.
+ * gfortran.dg/graphite/pr42326.f90: Likewise.
+ * gfortran.dg/graphite/pr68550-2.f90: Likewise.
+ * gfortran.dg/graphite/run-id-2.f90: Likewise.
+ * gfortran.dg/graphite/run-id-3.f90: Likewise.
+ * gfortran.dg/graphite/pr42393-1.f90: Dump graphite.
+
2017-10-03 Michael Meissner <meissner@linux.vnet.ibm.com>
* gcc.target/powerpc/float128-odd.c: New test.
+! { dg-additional-options "-fdump-tree-graphite-details --param graphite-allow-codegen-errors=1" { target ilp32 } }
SUBROUTINE SPECTOP(Dr,N)
DIMENSION d1(0:32,0:32) , Dr(0:32,0:32) , x(0:32)
DO k = 0 , N
ENDDO
ENDDO
END
+! { dg-final { scan-tree-dump-times "code generation error" 1 " graphite" { target ilp32 } } }
+! { dg-additional-options "-fdump-tree-graphite-details --param graphite-allow-codegen-errors=1" { target ilp32 } }
SUBROUTINE ECCODR(FPQR)
DIMENSION FPQR(25,25,25)
INTEGER P,Q,R
140 QM2= QM2+TWO
150 PM2= PM2+TWO
END
+! { dg-final { scan-tree-dump-times "code generation error" 1 " graphite" { target ilp32 } } }
! { dg-do run }
! { dg-options "-O2 -ftree-loop-linear" }
+! { dg-additional-options "-fdump-tree-graphite-details --param graphite-allow-codegen-errors=1" { target ilp32 } }
! Program to test the scalarizer
program testarray
end do
end program
+! { dg-final { scan-tree-dump-times "code generation error" 1 " graphite" { target ilp32 } } }
! { dg-do compile { target i?86-*-* x86_64-*-* } }
! { dg-require-effective-target ilp32 }
! { dg-require-effective-target sse2 }
-! { dg-options "-O2 -floop-parallelize-all -fprefetch-loop-arrays -msse2" }
+! { dg-options "-O2 -floop-parallelize-all -fprefetch-loop-arrays -msse2 -fdump-tree-graphite-details --param graphite-allow-codegen-errors=1" }
subroutine phasad(t,i,ium)
implicit none
return
end subroutine phasad
+! { dg-final { scan-tree-dump-times "code generation error" 1 " graphite" } }
! { dg-do compile { target i?86-*-* x86_64-*-* } }
! { dg-require-effective-target ilp32 }
! { dg-require-effective-target sse2 }
-! { dg-options "-O2 -floop-strip-mine -fprefetch-loop-arrays -msse2" }
+! { dg-options "-O2 -floop-strip-mine -fprefetch-loop-arrays -msse2 -fdump-tree-graphite-details --param graphite-allow-codegen-errors=1" }
subroutine blts ( ldmx, ldmy, v, tmp1, i, j, k)
implicit none
return
end subroutine phasad
+! { dg-final { scan-tree-dump-times "code generation error" 1 " graphite" } }
-! { dg-options "-O2 -fgraphite-identity -fno-loop-block -fno-loop-interchange -fno-loop-strip-mine --param graphite-allow-codegen-errors=1" }
+! { dg-options "-O2 -fgraphite-identity -fno-loop-block -fno-loop-interchange -fno-loop-strip-mine -fdump-tree-graphite-details --param graphite-allow-codegen-errors=1" }
MODULE beta_gamma_psi
INTEGER, PARAMETER :: dp=KIND(0.0D0)
! { dg-do compile }
! { dg-options "-floop-nest-optimize -fcheck=bounds -O1" }
+! { dg-additional-options "-fdump-tree-graphite-details --param graphite-allow-codegen-errors=1" { target ilp32 } }
SUBROUTINE PD2VAL(RES,NDERIV,TG1,TG2,C0)
INTEGER, PARAMETER :: dp=8
RES(K)=RES(K)+DOT_PRODUCT(T1(0:3),C0(96:99,K))*T2(10)
ENDDO
END SUBROUTINE PD2VAL
+
+! { dg-final { scan-tree-dump-times "code generation error" 1 " graphite" { target ilp32 } } }
+! { dg-additional-options "-fdump-tree-graphite-details --param graphite-allow-codegen-errors=1" { target ilp32 } }
IMPLICIT NONE
INTEGER, PARAMETER :: dp=KIND(0.0D0)
REAL(KIND=dp) :: res
END FUNCTION exp_radius_very_extended
END
+! { dg-final { scan-tree-dump-times "code generation error" 1 " graphite" { target ilp32 } } }
! { dg-do run }
! { dg-options "-ffrontend-optimize -floop-nest-optimize" }
+! { dg-additional-options "-fdump-tree-graphite-details --param graphite-allow-codegen-errors=1" { target ilp32 } }
! PR 56872 - wrong front-end optimization with a single constructor.
! Original bug report by Rich Townsend.
integer :: k
res = SUM([(s**(REAL(k-1)/REAL(m-1)),k=1,m)])
if (abs(res - 5.84732246) > 1e-6) call abort
end
+! { dg-final { scan-tree-dump-times "code generation error" 1 " graphite" { target ilp32 } } }