view gcc/testsuite/gfortran.dg/gomp/openmp-simd-4.f90 @ 152:2b5abeee2509

update gcc11
author anatofuz
date Mon, 25 May 2020 07:50:57 +0900
parents
children
line wrap: on
line source

! { dg-do compile }

integer :: i, j, k
integer :: x(5), y(2,5)

!$omp parallel do private(i)
do i = 1, 5
  x(i) = 42
end do

!$omp parallel do lastprivate(i)
do i = 1, 5
  x(i) = 42
end do


!$omp simd private(i)
do i = 1, 5
  x(i) = 42
end do

!$omp simd linear(i)
do i = 1, 5
  x(i) = 42
end do

!$omp simd lastprivate(i)
do i = 1, 5
  x(i) = 42
end do


!$omp simd private(i) lastprivate(j) collapse(2)
do i = 1, 5
  do j = 1, 2
    y(j, i) = 52
  end do
end do

!$omp simd lastprivate(i) private(j) collapse(2)
do i = 1, 5
  do j = 1, 2
    y(j, i) = 52
  end do
end do

!$omp parallel do firstprivate(i)
do i = 1, 5  ! { dg-error "PARALLEL DO iteration variable present on clause other than PRIVATE or LASTPRIVATE" }
  x(i) = 42
end do

!$omp parallel do simd firstprivate(i)
do i = 1, 5  ! { dg-error "PARALLEL DO SIMD iteration variable present on clause other than PRIVATE, LASTPRIVATE or LINEAR" }
  x(i) = 42
end do

!$omp simd linear(i) collapse(2)
do i = 1, 5  ! { dg-error "SIMD iteration variable present on clause other than PRIVATE or LASTPRIVATE" }
  do j = 1, 2
    y(j, i) = 52
  end do
end do


end