https://github.com/Saieiei approved this pull request.
Could this land after #233480? With the example below, Flang emits BARRIER at
the merge base 918b725cab35 and TASKWAIT at this head. This reaches the
repeated-construct subset issue tracked in #233036. A local subset fix restores
BARRIER while keeping this PR’s new tests passing.
```fortran
subroutine repeated_construct_tie()
integer :: i
!$omp parallel
!$omp do
do i = 1, 1
!$omp parallel
!$omp metadirective &
!$omp& when(construct={parallel do, parallel}: taskyield) &
!$omp& when(construct={parallel do}, implementation={vendor(score(4):
llvm)}: taskwait) &
!$omp& when(construct={parallel do, parallel},
implementation={vendor(score(0): llvm)}: barrier)
!$omp end parallel
end do
!$omp end do
!$omp end parallel
end subroutine
```
Compiled with `flang -fc1 -fopenmp -fopenmp-version=52 -emit-hlfir`.
https://github.com/llvm/llvm-project/pull/233905
_______________________________________________
cfe-commits mailing list
[email protected]
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits