Files
clang-p2996/flang/test/Semantics/OpenMP/do-collapse.f90
Thirumalai Shaktivel b340310067 [NFC][Flang][Test] Add some missing tests (#110468)
- At most one Collapse clause in SIMD construct
- A DO loop must follow the SIMD directive
2024-10-18 10:12:50 +05:30

41 lines
1.1 KiB
Fortran

!RUN: %python %S/../test_errors.py %s %flang -fopenmp
! OpenMP Version 4.5
! 2.7.1 Collapse Clause
program omp_doCollapse
integer:: i,j
!ERROR: The value of the parameter in the COLLAPSE or ORDERED clause must not be larger than the number of nested loops following the construct.
!$omp do collapse(3)
do i = 1,10
do j = 1, 10
print *, "hello"
end do
end do
!$omp end do
do i = 1,10
do j = 1, 10
!ERROR: The value of the parameter in the COLLAPSE or ORDERED clause must not be larger than the number of nested loops following the construct.
!$omp do collapse(2)
do k = 1, 10
print *, "hello"
end do
!$omp end do
end do
end do
!$omp parallel do collapse(2)
do i = 1, 3
!ERROR: Loop control is not present in the DO LOOP
!ERROR: The associated loop of a loop-associated directive cannot be a DO without control.
do
end do
end do
!ERROR: At most one COLLAPSE clause can appear on the SIMD directive
!$omp simd collapse(2) collapse(1)
do i = 1, 4
j = j + i + 1
end do
!$omp end simd
end program omp_doCollapse