[Mlir-commits] [mlir] [MLIR] `remove-dead-values` and RegionBranchOp canononicalizations fixes around the `IsolatedFromAbove` ops (PR #224831)

Ivan Butygin llvmlistbot at llvm.org
Sun Sep 20 11:16:48 PDT 2026


================
@@ -48,6 +48,15 @@ ChangeResult Liveness::meet(const AbstractSparseLattice &other) {
 // LivenessAnalysis
 //===----------------------------------------------------------------------===//
 
+LogicalResult LivenessAnalysis::initialize(Operation *top) {
+  // Users outside the analysis root are not visited. Mark all root results live
----------------
Hardcode84 wrote:

You need following conditions:
* Op is `IsolatedFromAbove`, `RegionBranchOp` and yields values outside.
* `remove-dead-values` and subsequently, `LivenessAnalysys` must be rooted on such op.

In this case, op results are never visited by the analysys, and as non-visited ops considered non-live, yield args are also considered non-live.

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


More information about the Mlir-commits mailing list