[all-commits] [llvm/llvm-project] cd2277: [flang][OpenMP] Support loop-associated metadirect...
Chi-Chun, Chen via All-commits
all-commits at lists.llvm.org
Fri May 1 13:03:26 PDT 2026
Branch: refs/heads/users/cchen/flang-metadirective-loop
Home: https://github.com/llvm/llvm-project
Commit: cd2277b3b7b0dae01ddbc226d1c5ad6088d5bfe7
https://github.com/llvm/llvm-project/commit/cd2277b3b7b0dae01ddbc226d1c5ad6088d5bfe7
Author: Chi Chun, Chen <chichun.chen at hpe.com>
Date: 2026-05-01 (Fri, 01 May 2026)
Changed paths:
M flang/lib/Lower/OpenMP/DataSharingProcessor.cpp
M flang/lib/Lower/OpenMP/OpenMP.cpp
M flang/lib/Lower/OpenMP/Utils.cpp
M flang/lib/Lower/OpenMP/Utils.h
R flang/test/Lower/OpenMP/Todo/metadirective-loop.f90
A flang/test/Lower/OpenMP/Todo/metadirective-no-loop.f90
A flang/test/Lower/OpenMP/Todo/metadirective-target-loop.f90
A flang/test/Lower/OpenMP/metadirective-loop.f90
Log Message:
-----------
[flang][OpenMP] Support loop-associated metadirective variants
Enable metadirective lowering for loop-associated variants such as
`do`, `simd`, `parallel do`, and `do simd`.
When a metadirective resolves to a loop-associated directive, the
sibling DO evaluation is spliced into the metadirective's evaluation
list so existing loop lowering finds it. Loop IV data-sharing
attributes are marked at lowering time since semantic analysis cannot
know which variant will be selected.
The DataSharingProcessor is extended to handle spliced evaluations:
the symbol visitor walks nested parse trees, symbol collection
includes nested evaluations, scope resolution walks ancestor scopes,
and lastprivate copy-back handles symbols without HostAssocDetails.
Not yet supported:
- Target constructs selected by metadirective (requires host-eval)
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