[Mlir-commits] [mlir] da93537 - NFC. Improve isInnermostAffineForOp - drop unnecessary check

Uday Bondhugula llvmlistbot at llvm.org
Mon Mar 7 21:16:04 PST 2022


Author: Uday Bondhugula
Date: 2022-03-08T10:44:54+05:30
New Revision: da93537bf843538061646bc57f3dd54c44f73236

URL: https://github.com/llvm/llvm-project/commit/da93537bf843538061646bc57f3dd54c44f73236
DIFF: https://github.com/llvm/llvm-project/commit/da93537bf843538061646bc57f3dd54c44f73236.diff

LOG: NFC. Improve isInnermostAffineForOp - drop unnecessary check

Rewrite isInnermostAffineForOp utility to make it more direct/efficient.
Drop unnecessary check. NFC.

Differential Revision: https://reviews.llvm.org/D121170

Added: 
    

Modified: 
    mlir/lib/Dialect/Affine/Transforms/LoopUnroll.cpp

Removed: 
    


################################################################################
diff  --git a/mlir/lib/Dialect/Affine/Transforms/LoopUnroll.cpp b/mlir/lib/Dialect/Affine/Transforms/LoopUnroll.cpp
index 702319f8ffd38..00dc64a0d54c4 100644
--- a/mlir/lib/Dialect/Affine/Transforms/LoopUnroll.cpp
+++ b/mlir/lib/Dialect/Affine/Transforms/LoopUnroll.cpp
@@ -61,16 +61,13 @@ struct LoopUnroll : public AffineLoopUnrollBase<LoopUnroll> {
 };
 } // namespace
 
-/// Returns true if no other affine.for ops are nested within.
-static bool isInnermostAffineForOp(AffineForOp forOp) {
-  // Only for the innermost affine.for op's.
-  bool isInnermost = true;
-  forOp.walk([&](AffineForOp thisForOp) {
-    // Since this is a post order walk, we are able to conclude here.
-    isInnermost = (thisForOp == forOp);
-    return WalkResult::interrupt();
-  });
-  return isInnermost;
+/// Returns true if no other affine.for ops are nested within `op`.
+static bool isInnermostAffineForOp(AffineForOp op) {
+  return !op.getBody()
+              ->walk([&](AffineForOp nestedForOp) {
+                return WalkResult::interrupt();
+              })
+              .wasInterrupted();
 }
 
 /// Gathers loops that have no affine.for's nested within.


        


More information about the Mlir-commits mailing list