[Mlir-commits] [mlir] [MLIR][MemRef] Add `alloca` support for `erase_dead_alloc_and_stores` (PR #142131)

Vitalii Shutov llvmlistbot at llvm.org
Mon Jun 2 09:39:57 PDT 2025


================
@@ -156,13 +156,17 @@ static bool resultIsNotRead(Operation *op, std::vector<Operation *> &uses) {
 
 void eraseDeadAllocAndStores(RewriterBase &rewriter, Operation *parentOp) {
   std::vector<Operation *> opToErase;
-  parentOp->walk([&](memref::AllocOp op) {
+  auto collectOpsToErase = [&](Operation *op) {
     std::vector<Operation *> candidates;
     if (resultIsNotRead(op, candidates)) {
       llvm::append_range(opToErase, candidates);
-      opToErase.push_back(op.getOperation());
+      opToErase.push_back(op);
     }
-  });
+  };
+
+  parentOp->walk([&](memref::AllocOp op) { collectOpsToErase(op); });
----------------
Lallapallooza wrote:

Done

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


More information about the Mlir-commits mailing list