| ! { dg-do run } | |
| subroutine foo (BETA, C) | |
| real :: C(100,100) | |
| integer :: i, j, l | |
| real, parameter :: one = 1.0 | |
| real :: beta | |
| !$acc parallel copy(c(1:100,1:100)) num_gangs(2) | |
| !$acc loop gang | |
| do j = 1, 100 | |
| if (beta /= one) then | |
| !$acc loop vector | |
| do i = 1, 100 | |
| C(i,j) = 0.0 | |
| end do | |
| end if | |
| end do | |
| !$acc end parallel | |
| end subroutine foo | |
| program test_foo | |
| real :: c(100,100), beta | |
| beta = 0.0 | |
| c(:,:) = 1.0 | |
| call foo (beta, c) | |
| if (c(1,1) /= 0.0) STOP 1 | |
| end program test_foo |