aboutsummaryrefslogtreecommitdiff
path: root/llvm/tools/llvm-diff/lib
diff options
context:
space:
mode:
authorjeanPerier <jperier@nvidia.com>2025-11-04 01:02:36 +0100
committerGitHub <noreply@github.com>2025-11-04 01:02:36 +0100
commitf7fff18ad09680056f028a99a961d4120063c55b (patch)
treee26c5ffb8e3a246242190d439e1b03e17ea3e9f6 /llvm/tools/llvm-diff/lib
parentc77b614564c69c7e63363859bf9b37427614eabd (diff)
downloadllvm-f7fff18ad09680056f028a99a961d4120063c55b.zip
llvm-f7fff18ad09680056f028a99a961d4120063c55b.tar.gz
llvm-f7fff18ad09680056f028a99a961d4120063c55b.tar.bz2
[mlir][OpenACC] add unstructured attributes for acc.loop with early exits (#164990)
"!$acc loop" directive may be placed above loops with early exits. Currently flang lowers loop with early exits to explicit control flow (this may be revisited when MLIR allows early exits in structured region). The acc loop directive cannot simply be ignored in such case in lowering because it may hold data clauses that should be applied when reaching that point. This patch adds an "unstructured" attribute to acc.loop to support that case. An acc.loop with such attributes may hold data operands but must have no controls. It is expected that the loop logic is implemented in its body in a way that the acc dialect may not understand. Such acc.loop is just a container and the loop with early exit will be executed sequentially.
Diffstat (limited to 'llvm/tools/llvm-diff/lib')
0 files changed, 0 insertions, 0 deletions