[Mlir-commits] [mlir] 51485ab - [mlir][bufferization] Do not access operation after it was replaced (#146860)

llvmlistbot at llvm.org llvmlistbot at llvm.org
Thu Jul 3 04:47:50 PDT 2025


Author: Matthias Springer
Date: 2025-07-03T13:47:46+02:00
New Revision: 51485ab46d33c1fd313a0f4c6df7b1e05c16fdb4

URL: https://github.com/llvm/llvm-project/commit/51485ab46d33c1fd313a0f4c6df7b1e05c16fdb4
DIFF: https://github.com/llvm/llvm-project/commit/51485ab46d33c1fd313a0f4c6df7b1e05c16fdb4.diff

LOG: [mlir][bufferization] Do not access operation after it was replaced (#146860)

Accessing an erased operation will no longer work during a One-Shot
Dialect Conversion.

Added: 
    

Modified: 
    mlir/lib/Conversion/BufferizationToMemRef/BufferizationToMemRef.cpp

Removed: 
    


################################################################################
diff  --git a/mlir/lib/Conversion/BufferizationToMemRef/BufferizationToMemRef.cpp b/mlir/lib/Conversion/BufferizationToMemRef/BufferizationToMemRef.cpp
index 0b5a5d8e71063..1d253632bb5a1 100644
--- a/mlir/lib/Conversion/BufferizationToMemRef/BufferizationToMemRef.cpp
+++ b/mlir/lib/Conversion/BufferizationToMemRef/BufferizationToMemRef.cpp
@@ -111,8 +111,8 @@ struct CloneOpConversion : public OpConversionPattern<bufferization::CloneOp> {
             rewriter.create<memref::CastOp>(op->getLoc(), memrefType, alloc);
     }
 
-    rewriter.replaceOp(op, alloc);
     rewriter.create<memref::CopyOp>(loc, op.getInput(), alloc);
+    rewriter.replaceOp(op, alloc);
     return success();
   }
 };


        


More information about the Mlir-commits mailing list