Skip to content

Commit 3d90c81

Browse files
[mlir][sparse] Fix incorrect API usage in RewritePatterns
Incorrect API usage was detected by `MLIR_ENABLE_EXPENSIVE_PATTERN_API_CHECKS`. Differential Revision: https://reviews.llvm.org/D151302
1 parent e369577 commit 3d90c81

File tree

1 file changed

+3
-1
lines changed

1 file changed

+3
-1
lines changed

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

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -367,7 +367,9 @@ struct FuseTensorCast : public OpRewritePattern<tensor::CastOp> {
367367
if (tensor::isSameTypeWithoutEncoding(srcType, dstType)) {
368368
if (Operation *def = op.getSource().getDefiningOp()) {
369369
if (def->hasOneUse() && isa<tensor::ExtractSliceOp>(def)) {
370-
def->getResult(0).setType(op->getResultTypes()[0]);
370+
rewriter.updateRootInPlace(def, [&]() {
371+
def->getResult(0).setType(op->getResultTypes()[0]);
372+
});
371373
rewriter.replaceOp(op, def->getResult(0));
372374
return success();
373375
}

0 commit comments

Comments
 (0)