[Mlir-commits] [llvm] [mlir] [MLIR][OpenMP] add interchange operation in the OpenMP mlir dialect (PR #186381)

Michael Kruse llvmlistbot at llvm.org
Fri Mar 27 05:03:30 PDT 2026


================
@@ -3786,6 +3709,30 @@ CanonicalLoopOp::getGenerateesODSOperandIndexAndLength() {
   return getODSOperandIndexAndLength(odsIndex_cli);
 }
 
+/// Canonical loop must be perfectly nested, i.e. the body of the parent must
+/// only contain the omp.canonical_loop of the nested loops, and
+/// omp.terminator
+bool isPerfectlyNested(CanonicalLoopOp parentLoop, CanonicalLoopOp loop) {
----------------
Meinersbur wrote:

I extracted `checkApplyeesNesting` out of `TileOp::verify()` for common use. It currently still has a `TileOp` argument, but could take an `LoopTransformationInterface` or a template.

https://github.com/llvm/llvm-project/pull/186381


More information about the Mlir-commits mailing list