[all-commits] [llvm/llvm-project] 857dd4: [flang][OpenMP] Canonicalize loops with intervenin...
Krzysztof Parzyszek via All-commits
all-commits at lists.llvm.org
Sat Nov 22 14:32:41 PST 2025
Branch: refs/heads/users/kparzysz/label-do-fix
Home: https://github.com/llvm/llvm-project
Commit: 857dd4da7187c9d345d0913b73601e65ed5f06da
https://github.com/llvm/llvm-project/commit/857dd4da7187c9d345d0913b73601e65ed5f06da
Author: Krzysztof Parzyszek <Krzysztof.Parzyszek at amd.com>
Date: 2025-11-22 (Sat, 22 Nov 2025)
Changed paths:
M flang/include/flang/Parser/openmp-utils.h
M flang/lib/Parser/openmp-utils.cpp
M flang/lib/Semantics/canonicalize-do.cpp
A flang/test/Parser/OpenMP/atomic-label-do.f90
A flang/test/Parser/OpenMP/cross-label-do.f90
Log Message:
-----------
[flang][OpenMP] Canonicalize loops with intervening OpenMP constructs
Example based on the gfortran test a.6.1.f90
```
do 100 i = 1,10
!$omp do
do 100 j = 1,10
call work(i,j)
100 continue
```
During canonicalization of label-DO loops, if the body of an OpenMP
construct ends with a label, treat the label as ending the construct
itself.
This will also allow handling of cases like
```
do 100 i = 1, 10
!$omp atomic write
100 x = i
```
which we were unable to before.
To unsubscribe from these emails, change your notification settings at https://github.com/llvm/llvm-project/settings/notifications
More information about the All-commits
mailing list