[Mlir-commits] [mlir] [mlir][vector] Drop incorrect calls in vector distribution (PR #71988)

Quinn Dawkins llvmlistbot at llvm.org
Fri Nov 10 13:52:47 PST 2023


https://github.com/qedawkins created https://github.com/llvm/llvm-project/pull/71988

Fixes asan failures in https://lab.llvm.org/buildbot/#/builders/5/builds/38191 introduced by #71964.

>From c5954ad677b24e08a2e6e2d81d87c2764644f681 Mon Sep 17 00:00:00 2001
From: Quinn Dawkins <quinn at nod-labs.com>
Date: Fri, 10 Nov 2023 16:49:33 -0500
Subject: [PATCH] [mlir][vector] Drop incorrect  calls in vector distribution

---
 mlir/lib/Dialect/Vector/Transforms/VectorDistribute.cpp | 9 ---------
 1 file changed, 9 deletions(-)

diff --git a/mlir/lib/Dialect/Vector/Transforms/VectorDistribute.cpp b/mlir/lib/Dialect/Vector/Transforms/VectorDistribute.cpp
index ac73cf07004ded8..049ebcd748781d4 100644
--- a/mlir/lib/Dialect/Vector/Transforms/VectorDistribute.cpp
+++ b/mlir/lib/Dialect/Vector/Transforms/VectorDistribute.cpp
@@ -646,10 +646,6 @@ struct WarpOpElementwise : public OpRewritePattern<WarpExecuteOnLane0Op> {
     if (!yieldOperand)
       return failure();
 
-    // Notify the rewriter that the warp op is changing (see the comment on
-    // the WarpOpTransferRead pattern).
-    rewriter.startRootUpdate(warpOp);
-
     Operation *elementWise = yieldOperand->get().getDefiningOp();
     unsigned operandIndex = yieldOperand->getOperandNumber();
     Value distributedVal = warpOp.getResult(operandIndex);
@@ -688,7 +684,6 @@ struct WarpOpElementwise : public OpRewritePattern<WarpExecuteOnLane0Op> {
         {newWarpOp.getResult(operandIndex).getType()});
     rewriter.replaceAllUsesWith(newWarpOp.getResult(operandIndex),
                                 newOp->getResult(0));
-    rewriter.finalizeRootUpdate(warpOp);
     return success();
   }
 };
@@ -1058,9 +1053,6 @@ struct WarpOpBroadcast : public OpRewritePattern<WarpExecuteOnLane0Op> {
     if (vector::isBroadcastableTo(broadcastSrcType, destVecType) !=
         vector::BroadcastableToResult::Success)
       return failure();
-    // Notify the rewriter that the warp op is changing (see the comment on
-    // the WarpOpTransferRead pattern).
-    rewriter.startRootUpdate(warpOp);
     SmallVector<size_t> newRetIndices;
     WarpExecuteOnLane0Op newWarpOp = moveRegionToNewWarpOpAndAppendReturns(
         rewriter, warpOp, {broadcastSrc}, {broadcastSrcType}, newRetIndices);
@@ -1069,7 +1061,6 @@ struct WarpOpBroadcast : public OpRewritePattern<WarpExecuteOnLane0Op> {
         loc, destVecType, newWarpOp->getResult(newRetIndices[0]));
     rewriter.replaceAllUsesWith(newWarpOp->getResult(operandNumber),
                                 broadcasted);
-    rewriter.finalizeRootUpdate(warpOp);
     return success();
   }
 };



More information about the Mlir-commits mailing list