blob: 1cb8b9cc512f4a6f8c393116e00dc8d5adddf454 [file] [log] [blame]
! { dg-do compile }
! { dg-additional-options "-fdump-tree-original" }
subroutine par
integer i, j, k
!$acc parallel
!$acc loop tile (1)
do i = 1, 10
end do
!$acc loop tile (*)
do i = 1, 10
end do
!$acc loop tile (1,2)
do i = 1, 10
do j = 1, 10
end do
end do
!$acc loop tile (*,2)
do i = 1, 10
do j = 1, 10
end do
end do
!$acc loop tile (1,*)
do i = 1, 10
do j = 1, 10
end do
end do
!$acc loop tile (*,*)
do i = 1, 10
do j = 1, 10
end do
end do
!$acc loop tile (1,2,3)
do i = 1, 10
do j = 1, 10
do k = 1, 10
end do
end do
end do
!$acc loop tile (*,2,3)
do i = 1, 10
do j = 1, 10
do k = 1, 10
end do
end do
end do
!$acc loop tile (1,*,3)
do i = 1, 10
do j = 1, 10
do k = 1, 10
end do
end do
end do
!$acc loop tile (1,2,*)
do i = 1, 10
do j = 1, 10
do k = 1, 10
end do
end do
end do
!$acc end parallel
end subroutine par
subroutine kerns
integer i, j, k
!$acc kernels
!$acc loop tile (1)
do i = 1, 10
end do
!$acc loop tile (*)
do i = 1, 10
end do
!$acc loop tile (1,2)
do i = 1, 10
do j = 1, 10
end do
end do
!$acc loop tile (*,2)
do i = 1, 10
do j = 1, 10
end do
end do
!$acc loop tile (1,*)
do i = 1, 10
do j = 1, 10
end do
end do
!$acc loop tile (*,*)
do i = 1, 10
do j = 1, 10
end do
end do
!$acc loop tile (1,2,3)
do i = 1, 10
do j = 1, 10
do k = 1, 10
end do
end do
end do
!$acc loop tile (*,2,3)
do i = 1, 10
do j = 1, 10
do k = 1, 10
end do
end do
end do
!$acc loop tile (1,*,3)
do i = 1, 10
do j = 1, 10
do k = 1, 10
end do
end do
end do
!$acc loop tile (1,2,*)
do i = 1, 10
do j = 1, 10
do k = 1, 10
end do
end do
end do
!$acc end kernels
end subroutine kerns
subroutine parloop
integer i, j, k
!$acc parallel loop tile (1)
do i = 1, 10
end do
!$acc parallel loop tile (*)
do i = 1, 10
end do
!$acc parallel loop tile (1,2)
do i = 1, 10
do j = 1, 10
end do
end do
!$acc parallel loop tile (*,2)
do i = 1, 10
do j = 1, 10
end do
end do
!$acc parallel loop tile (1,*)
do i = 1, 10
do j = 1, 10
end do
end do
!$acc parallel loop tile (*,*)
do i = 1, 10
do j = 1, 10
end do
end do
!$acc parallel loop tile (1,2,3)
do i = 1, 10
do j = 1, 10
do k = 1, 10
end do
end do
end do
!$acc parallel loop tile (*,2,3)
do i = 1, 10
do j = 1, 10
do k = 1, 10
end do
end do
end do
!$acc parallel loop tile (1,*,3)
do i = 1, 10
do j = 1, 10
do k = 1, 10
end do
end do
end do
!$acc parallel loop tile (1,2,*)
do i = 1, 10
do j = 1, 10
do k = 1, 10
end do
end do
end do
end subroutine parloop
subroutine kernloop
integer i, j, k
!$acc kernels loop tile (1)
do i = 1, 10
end do
!$acc kernels loop tile (*)
do i = 1, 10
end do
!$acc kernels loop tile (1,2)
do i = 1, 10
do j = 1, 10
end do
end do
!$acc kernels loop tile (*,2)
do i = 1, 10
do j = 1, 10
end do
end do
!$acc kernels loop tile (1,*)
do i = 1, 10
do j = 1, 10
end do
end do
!$acc kernels loop tile (*,*)
do i = 1, 10
do j = 1, 10
end do
end do
!$acc kernels loop tile (1,2,3)
do i = 1, 10
do j = 1, 10
do k = 1, 10
end do
end do
end do
!$acc kernels loop tile (*,2,3)
do i = 1, 10
do j = 1, 10
do k = 1, 10
end do
end do
end do
!$acc kernels loop tile (1,*,3)
do i = 1, 10
do j = 1, 10
do k = 1, 10
end do
end do
end do
!$acc kernels loop tile (1,2,*)
do i = 1, 10
do j = 1, 10
do k = 1, 10
end do
end do
end do
end subroutine kernloop
! { dg-final { scan-tree-dump-times "tile\\(1\\)" 4 "original" } }
! { dg-final { scan-tree-dump-times "tile\\(0\\)" 4 "original" } }
! { dg-final { scan-tree-dump-times "tile\\(1, 2\\)" 4 "original" } }
! { dg-final { scan-tree-dump-times "tile\\(0, 2\\)" 4 "original" } }
! { dg-final { scan-tree-dump-times "tile\\(1, 0\\)" 4 "original" } }
! { dg-final { scan-tree-dump-times "tile\\(0, 0\\)" 4 "original" } }
! { dg-final { scan-tree-dump-times "tile\\(1, 2, 3\\)" 4 "original" } }
! { dg-final { scan-tree-dump-times "tile\\(0, 2, 3\\)" 4 "original" } }
! { dg-final { scan-tree-dump-times "tile\\(1, 0, 3\\)" 4 "original" } }
! { dg-final { scan-tree-dump-times "tile\\(1, 2, 0\\)" 4 "original" } }
! { dg-final { scan-tree-dump-times "for \\(" 88 "original" } }
! { dg-final { scan-tree-dump-times "while \\(" 0 "original" } }