[Mlir-commits] [mlir] [mlir][dataflow] Add arguemnt print for test-liveness-analysis (PR #169625)
llvmlistbot at llvm.org
llvmlistbot at llvm.org
Wed Nov 26 02:05:47 PST 2025
llvmbot wrote:
<!--LLVM PR SUMMARY COMMENT-->
@llvm/pr-subscribers-mlir
Author: lonely eagle (linuxlonelyeagle)
<details>
<summary>Changes</summary>
Add arguemnt print for test-liveness-analysis to better debug remove-dead-values pass.
---
Full diff: https://github.com/llvm/llvm-project/pull/169625.diff
2 Files Affected:
- (modified) mlir/test/Analysis/DataFlow/test-liveness-analysis.mlir (+12-1)
- (modified) mlir/test/lib/Analysis/DataFlow/TestLivenessAnalysis.cpp (+9)
``````````diff
diff --git a/mlir/test/Analysis/DataFlow/test-liveness-analysis.mlir b/mlir/test/Analysis/DataFlow/test-liveness-analysis.mlir
index 3748be74eb0f33..74a1abfcedb8f3 100644
--- a/mlir/test/Analysis/DataFlow/test-liveness-analysis.mlir
+++ b/mlir/test/Analysis/DataFlow/test-liveness-analysis.mlir
@@ -184,6 +184,17 @@ func.func private @private0(%0 : i32) -> i32 {
// CHECK-NEXT: result #0: live
// CHECK-LABEL: test_tag: y:
// CHECK-NEXT: result #0: not live
+// CHECK-LABEL: test_tag: for:
+// CHECK-NEXT: operand #0: live
+// CHECK-NEXT: operand #1: live
+// CHECK-NEXT: operand #2: live
+// CHECK-NEXT: operand #3: live
+// CHECK-NEXT: operand #4: not live
+// CHECK-NEXT: result #0: live
+// CHECK-NEXT: result #1: not live
+// CHECK-NEXT: argument: #0: live
+// CHECK-NEXT: argument: #1: not live
+// CHECK-NEXT: argument: #2: not live
func.func @test_7_type_3(%arg0: memref<i32>) {
%c0 = arith.constant {tag = "zero"} 0 : index
%c10 = arith.constant {tag = "ten"} 10 : index
@@ -194,7 +205,7 @@ func.func @test_7_type_3(%arg0: memref<i32>) {
%1 = arith.addi %x, %x : i32
%2 = func.call @private0(%1) : (i32) -> i32
scf.yield %2, %arg3 : i32, i32
- }
+ } {tag = "for"}
memref.store %0#0, %arg0[] : memref<i32>
return
}
diff --git a/mlir/test/lib/Analysis/DataFlow/TestLivenessAnalysis.cpp b/mlir/test/lib/Analysis/DataFlow/TestLivenessAnalysis.cpp
index 8e2f03b644e49e..04026008899af5 100644
--- a/mlir/test/lib/Analysis/DataFlow/TestLivenessAnalysis.cpp
+++ b/mlir/test/lib/Analysis/DataFlow/TestLivenessAnalysis.cpp
@@ -56,6 +56,15 @@ struct TestLivenessAnalysisPass
liveness->print(os);
os << "\n";
}
+ for (mlir::Region ®ion : op->getRegions()) {
+ for (auto [index, argument] : llvm::enumerate(region.getArguments())) {
+ const Liveness *liveness = livenessAnalysis.getLiveness(argument);
+ assert(liveness && "expected a sparse lattice");
+ os << " argument: #" << index << ": ";
+ liveness->print(os);
+ os << "\n";
+ }
+ }
});
}
};
``````````
</details>
https://github.com/llvm/llvm-project/pull/169625
More information about the Mlir-commits
mailing list