Commit 21375f0d by Richard Biener Committed by Richard Biener

id-17.f: For ilp32 allow graphite codegen errors and scan for one.

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.

From-SVN: r253394
parent 86a865a0
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> 2017-10-03 Michael Meissner <meissner@linux.vnet.ibm.com>
* gcc.target/powerpc/float128-odd.c: New test. * 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) SUBROUTINE SPECTOP(Dr,N)
DIMENSION d1(0:32,0:32) , Dr(0:32,0:32) , x(0:32) DIMENSION d1(0:32,0:32) , Dr(0:32,0:32) , x(0:32)
DO k = 0 , N DO k = 0 , N
...@@ -14,3 +15,4 @@ ...@@ -14,3 +15,4 @@
ENDDO ENDDO
ENDDO ENDDO
END 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) SUBROUTINE ECCODR(FPQR)
DIMENSION FPQR(25,25,25) DIMENSION FPQR(25,25,25)
INTEGER P,Q,R INTEGER P,Q,R
...@@ -13,3 +14,4 @@ ...@@ -13,3 +14,4 @@
140 QM2= QM2+TWO 140 QM2= QM2+TWO
150 PM2= PM2+TWO 150 PM2= PM2+TWO
END END
! { dg-final { scan-tree-dump-times "code generation error" 1 " graphite" { target ilp32 } } }
! { dg-do run } ! { dg-do run }
! { dg-options "-O2 -ftree-loop-linear" } ! { 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 to test the scalarizer
program testarray program testarray
...@@ -24,3 +25,4 @@ program testarray ...@@ -24,3 +25,4 @@ program testarray
end do end do
end program end program
! { dg-final { scan-tree-dump-times "code generation error" 1 " graphite" { target ilp32 } } }
! { dg-do compile { target i?86-*-* x86_64-*-* } } ! { dg-do compile { target i?86-*-* x86_64-*-* } }
! { dg-require-effective-target ilp32 } ! { dg-require-effective-target ilp32 }
! { dg-require-effective-target sse2 } ! { 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) subroutine phasad(t,i,ium)
implicit none implicit none
...@@ -17,3 +17,4 @@ subroutine phasad(t,i,ium) ...@@ -17,3 +17,4 @@ subroutine phasad(t,i,ium)
return return
end subroutine phasad end subroutine phasad
! { dg-final { scan-tree-dump-times "code generation error" 1 " graphite" } }
! { dg-do compile { target i?86-*-* x86_64-*-* } } ! { dg-do compile { target i?86-*-* x86_64-*-* } }
! { dg-require-effective-target ilp32 } ! { dg-require-effective-target ilp32 }
! { dg-require-effective-target sse2 } ! { 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) subroutine blts ( ldmx, ldmy, v, tmp1, i, j, k)
implicit none implicit none
...@@ -34,3 +34,4 @@ subroutine phasad(t,i,ium) ...@@ -34,3 +34,4 @@ subroutine phasad(t,i,ium)
return return
end subroutine phasad 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 MODULE beta_gamma_psi
INTEGER, PARAMETER :: dp=KIND(0.0D0) INTEGER, PARAMETER :: dp=KIND(0.0D0)
......
! { dg-do compile } ! { dg-do compile }
! { dg-options "-floop-nest-optimize -fcheck=bounds -O1" } ! { 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) SUBROUTINE PD2VAL(RES,NDERIV,TG1,TG2,C0)
INTEGER, PARAMETER :: dp=8 INTEGER, PARAMETER :: dp=8
...@@ -12,3 +13,5 @@ SUBROUTINE PD2VAL(RES,NDERIV,TG1,TG2,C0) ...@@ -12,3 +13,5 @@ SUBROUTINE PD2VAL(RES,NDERIV,TG1,TG2,C0)
RES(K)=RES(K)+DOT_PRODUCT(T1(0:3),C0(96:99,K))*T2(10) RES(K)=RES(K)+DOT_PRODUCT(T1(0:3),C0(96:99,K))*T2(10)
ENDDO ENDDO
END SUBROUTINE PD2VAL 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 IMPLICIT NONE
INTEGER, PARAMETER :: dp=KIND(0.0D0) INTEGER, PARAMETER :: dp=KIND(0.0D0)
REAL(KIND=dp) :: res REAL(KIND=dp) :: res
...@@ -64,3 +65,4 @@ CONTAINS ...@@ -64,3 +65,4 @@ CONTAINS
END FUNCTION exp_radius_very_extended END FUNCTION exp_radius_very_extended
END END
! { dg-final { scan-tree-dump-times "code generation error" 1 " graphite" { target ilp32 } } }
! { dg-do run } ! { dg-do run }
! { dg-options "-ffrontend-optimize -floop-nest-optimize" } ! { 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. ! PR 56872 - wrong front-end optimization with a single constructor.
! Original bug report by Rich Townsend. ! Original bug report by Rich Townsend.
integer :: k integer :: k
...@@ -10,3 +11,4 @@ ...@@ -10,3 +11,4 @@
res = SUM([(s**(REAL(k-1)/REAL(m-1)),k=1,m)]) res = SUM([(s**(REAL(k-1)/REAL(m-1)),k=1,m)])
if (abs(res - 5.84732246) > 1e-6) call abort if (abs(res - 5.84732246) > 1e-6) call abort
end end
! { dg-final { scan-tree-dump-times "code generation error" 1 " graphite" { target ilp32 } } }
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment