[flang-commits] [clang] [flang] [llvm] [OpenMP][clang][flang] Compare each tied context selector with all th… (PR #233905)

Sairudra More via flang-commits flang-commits at lists.llvm.org
Tue Oct 20 15:53:46 PDT 2026


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


More information about the flang-commits mailing list