[all-commits] [llvm/llvm-project] 6f761a: [flang][OpenACC] Preserve DO CONCURRENT independen...
nvptm via All-commits
all-commits at lists.llvm.org
Wed Sep 30 21:04:24 PDT 2026
Branch: refs/heads/main
Home: https://github.com/llvm/llvm-project
Commit: 6f761a90eb9e344ae9f7a1534e50400f964a97e3
https://github.com/llvm/llvm-project/commit/6f761a90eb9e344ae9f7a1534e50400f964a97e3
Author: nvptm <pmathew at nvidia.com>
Date: 2026-09-30 (Wed, 30 Sep 2026)
Changed paths:
M clang/include/clang/Options/FlangOptions.td
M flang/docs/OpenACC-extensions.md
M flang/include/flang/Lower/LoweringOptions.def
M flang/lib/Frontend/CompilerInvocation.cpp
M flang/lib/Lower/OpenACC.cpp
M flang/test/Lower/OpenACC/acc-do-concurrent-locality.f90
A flang/test/Lower/OpenACC/acc-kernels-do-concurrent-independent-flag.f90
Log Message:
-----------
[flang][OpenACC] Preserve DO CONCURRENT independence in kernels loops (#227775)
`DO CONCURRENT` asserts that its iterations may execute independently.
When it is directly associated with a combined OpenACC `KERNELS LOOP`,
Flang currently lowers the loop as `auto`, unless an explicit `seq`,
`auto`, or `independent` clause is present. This patch adds a
default-enabled extension that preserves the `DO CONCURRENT`
independence assertion by lowering the loop as `independent`. This
behavior is OpenACC-conforming. Explicit loop parallelism clauses
continue to take precedence.
The extension can be disabled with:
`-fno-openacc-acc-kernels-do-concurrent-independent`
This patch also documents the extension and adds lowering tests for its
enabled and disabled behavior.
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