aboutsummaryrefslogtreecommitdiff
path: root/llvm/lib/CodeGen/CodeGenPrepare.cpp
diff options
context:
space:
mode:
authorSergio Afonso <safonsof@amd.com>2024-07-08 11:21:23 +0100
committerGitHub <noreply@github.com>2024-07-08 11:21:23 +0100
commitd6fb89903409c7977f90b9f2f6a557f04d3f7e35 (patch)
treeeda66acbfd83289d21f9c479432c7790636fc477 /llvm/lib/CodeGen/CodeGenPrepare.cpp
parent4c23625357b0b6091bc97478a79d522a832c2b21 (diff)
downloadllvm-d6fb89903409c7977f90b9f2f6a557f04d3f7e35.zip
llvm-d6fb89903409c7977f90b9f2f6a557f04d3f7e35.tar.gz
llvm-d6fb89903409c7977f90b9f2f6a557f04d3f7e35.tar.bz2
[MLIR][OpenMP] Improve loop wrapper representation (#97706)
This patch replaces the `SingleBlockImplicitTerminator<"TerminatorOp">` trait of loop wrapper operations for the `SingleBlock` trait. This enables a more robust implementation of the `LoopWrapperInterface::isWrapper()` method, since it does no longer have to deal with the potentially missing (implicit) terminator. The `LoopWrapperInterface::isWrapper()` method is also extended to not identify as wrappers those operations which have a loop wrapper operation inside that is not taking a wrapper role. This is important for cases where `omp.parallel` is nested, which can but is not required to work as a loop wrapper. Tests are updated to integrate these representation and validation changes.
Diffstat (limited to 'llvm/lib/CodeGen/CodeGenPrepare.cpp')
0 files changed, 0 insertions, 0 deletions