Merge current set of OpenACC changes from gomp-4_0-branch.
[gcc.git] / libgomp / testsuite / libgomp.oacc-fortran / collapse-2.f90
1 ! { dg-do run }
2
3 program collapse2
4 integer :: i, j, k, a(1:3, 4:6, 5:7)
5 logical :: l
6 l = .false.
7 a(:, :, :) = 0
8 !$acc parallel
9 !$acc loop collapse(4 - 1)
10 do 164 i = 1, 3
11 do 164 j = 4, 6
12 do 164 k = 5, 7
13 a(i, j, k) = i + j + k
14 164 end do
15 !$acc loop collapse(2) reduction(.or.:l)
16 firstdo: do i = 1, 3
17 do j = 4, 6
18 do k = 5, 7
19 if (a(i, j, k) .ne. (i + j + k)) l = .true.
20 end do
21 end do
22 end do firstdo
23 !$acc end parallel
24 if (l) call abort
25 end program collapse2