[flang-commits] [flang] [flang][OpenMP] Lower DO and SIMD variants in metadirectives (PR #210810)
via flang-commits
flang-commits at lists.llvm.org
Mon Aug 17 11:10:23 PDT 2026
chichunchen wrote:
Thanks for your review and patience @MattPD. I've pushed the fix for your last review and here's what the semantic follow-up will cover for the semantic split from this lowering patch:
- Preserve the selected construct context across the sibling loop associated with a standalone metadirective, so discarded replacements do not produce semantic diagnostics.
- Make semantic association and lowering use consistent rules for intervening constructs such as FORMAT, ENTRY, and OpenACC constructs.
- Maintain replacement-specific data-environment state so a lower-ranked candidate cannot overwrite the selected arm’s default(none).
- Check implicit captures and loop-variable data-sharing attributes for block replacements, including nested DO, SIMD, SINGLE, and BLOCK constructs.
- Identify firstprivate, copyin, and related clauses that require variant-local host association, diagnosing unsupported cases before lowering.
The current PR remains focused on DO/SIMD lowering. Full support that requires constructing variant-local symbols may require a separate implementation change after the semantic checks define the required contract.
https://github.com/llvm/llvm-project/pull/210810
More information about the flang-commits
mailing list