Issue 151159
Summary [flang][OpenMP] Lowering crashes for composite distribute simd constructs with private clause
Labels flang
Assignees mrkajetanp
Reporter mrkajetanp
    After recent changes to the lowering of composite do simd constructs, programs like the following no longer ignore the simd information.

```
program main
 integer, allocatable :: tmp
  allocate(tmp)
  !$omp teams distribute simd private(tmp)
  do i=1, 10
    tmp = tmp + 1
  end do
end program
```
Instead, they crash with:

```
error: loc("/repr.f90":4:9): 'omp.distribute' op loop wrapper does not contain exactly one nested op
error: verification of lowering to FIR failed
```
This only happens when the privatised variable needs a non-trivial privatiser, because delayed privatisation is not handled correctly.
_______________________________________________
llvm-bugs mailing list
llvm-bugs@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-bugs

Reply via email to