[Mlir-commits] [mlir] 2e11538 - [mlir] Use isPure and skipRegions to print region op (NFC) (#163422)

llvmlistbot at llvm.org llvmlistbot at llvm.org
Tue Oct 14 10:30:57 PDT 2025


Author: lonely eagle
Date: 2025-10-15T01:30:53+08:00
New Revision: 2e11538ab9d81d36257cdcfa37a8cef250946742

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

LOG: [mlir] Use isPure and skipRegions to print region op (NFC) (#163422)

Added: 
    

Modified: 
    mlir/lib/Transforms/Utils/LoopInvariantCodeMotionUtils.cpp

Removed: 
    


################################################################################
diff  --git a/mlir/lib/Transforms/Utils/LoopInvariantCodeMotionUtils.cpp b/mlir/lib/Transforms/Utils/LoopInvariantCodeMotionUtils.cpp
index 111f58ef92f51..5f3b04a6d8bce 100644
--- a/mlir/lib/Transforms/Utils/LoopInvariantCodeMotionUtils.cpp
+++ b/mlir/lib/Transforms/Utils/LoopInvariantCodeMotionUtils.cpp
@@ -66,7 +66,9 @@ size_t mlir::moveLoopInvariantCode(
   size_t numMoved = 0;
 
   for (Region *region : regions) {
-    LDBG() << "Original loop:\n" << *region->getParentOp();
+    LDBG() << "Original loop:\n"
+           << OpWithFlags(region->getParentOp(),
+                          OpPrintingFlags().skipRegions());
 
     std::queue<Operation *> worklist;
     // Add top-level operations in the loop body to the worklist.
@@ -90,7 +92,8 @@ size_t mlir::moveLoopInvariantCode(
           !canBeHoisted(op, definedOutside))
         continue;
 
-      LDBG() << "Moving loop-invariant op: " << *op;
+      LDBG() << "Moving loop-invariant op: "
+             << OpWithFlags(op, OpPrintingFlags().skipRegions());
       moveOutOfRegion(op, region);
       ++numMoved;
 
@@ -111,9 +114,7 @@ size_t mlir::moveLoopInvariantCode(LoopLikeOpInterface loopLike) {
       [&](Value value, Region *) {
         return loopLike.isDefinedOutsideOfLoop(value);
       },
-      [&](Operation *op, Region *) {
-        return isMemoryEffectFree(op) && isSpeculatable(op);
-      },
+      [&](Operation *op, Region *) { return isPure(op); },
       [&](Operation *op, Region *) { loopLike.moveOutOfLoop(op); });
 }
 


        


More information about the Mlir-commits mailing list