! { dg-do run } | |
! | |
program foo | |
implicit none | |
integer, parameter :: n = 100 | |
integer, dimension(n,n) :: a | |
integer :: i, j, sum = 0 | |
a = 1 | |
!$acc parallel copyin(a(1:n,1:n)) firstprivate (sum) | |
!$acc loop gang reduction(+:sum) | |
do i=1, n | |
!$acc loop vector reduction(+:sum) | |
do j=1, n | |
sum = sum + a(i, j) | |
enddo | |
enddo | |
!$acc end parallel | |
end program foo |