diff --git a/mlir/lib/Dialect/Vector/VectorTransforms.cpp b/mlir/lib/Dialect/Vector/VectorTransforms.cpp --- a/mlir/lib/Dialect/Vector/VectorTransforms.cpp +++ b/mlir/lib/Dialect/Vector/VectorTransforms.cpp @@ -2556,13 +2556,13 @@ "Expected splitFullAndPartialTransferPrecondition to hold"); auto xferReadOp = dyn_cast(xferOp.getOperation()); - if (xferReadOp.mask()) - return failure(); - // TODO: add support for write case. if (!xferReadOp) return failure(); + if (xferReadOp.mask()) + return failure(); + OpBuilder::InsertionGuard guard(b); if (Operation *sourceOp = xferOp.source().getDefiningOp()) b.setInsertionPointAfter(sourceOp);