Skip to content

Commit d480359

Browse files
[mlir][sparse] Do not access operation after it was replaced (#146546)
Accessing an erased operation will no longer work during a One-Shot Dialect Conversion.
1 parent 119292c commit d480359

File tree

1 file changed

+1
-1
lines changed

1 file changed

+1
-1
lines changed

mlir/lib/Dialect/SparseTensor/Transforms/SparseTensorConversion.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -729,9 +729,9 @@ class SparseTensorCompressConverter : public OpConversionPattern<CompressOp> {
729729
createFuncCall(rewriter, loc, name, {},
730730
{tensor, lvlCoords, values, filled, added, count},
731731
EmitCInterface::On);
732+
Operation *parent = getTop(op);
732733
rewriter.replaceOp(op, adaptor.getTensor());
733734
// Deallocate the buffers on exit of the loop nest.
734-
Operation *parent = getTop(op);
735735
rewriter.setInsertionPointAfter(parent);
736736
rewriter.create<memref::DeallocOp>(loc, values);
737737
rewriter.create<memref::DeallocOp>(loc, filled);

0 commit comments

Comments
 (0)