[Mlir-commits] [mlir] [mlir] Avoid rewriting unreachable blocks in the greedy driver (PR #225814)
Mehdi Amini
llvmlistbot at llvm.org
Wed Sep 30 08:54:50 PDT 2026
================
----------------
joker-eph wrote:
`changedBlocks` is also the pending-update indicator: `isBlockReachable` calls `update()` only when that set is nonempty. An erasure therefore needs to mark the state as changed so stale entries get removed.
`erasedBlocks` distinguishes pointers that must no longer be dereferenced. We temporarily retain their old successor snapshots to recognize reachability-preserving merges, such as `A -> B -> C` becoming `A -> C` when B is merged into A. After validation, the erased entries are removed.
I'll clarify this with some code comments.
https://github.com/llvm/llvm-project/pull/225814
More information about the Mlir-commits
mailing list