[Mlir-commits] [mlir] Extend `TilingInterface` to allow more flexible tiling (PR #95422)

llvmlistbot at llvm.org llvmlistbot at llvm.org
Sun Jun 16 20:18:49 PDT 2024


================
@@ -962,13 +965,12 @@ LogicalResult mlir::scf::yieldReplacementForFusedProducer(
                   .getDefiningOp<DestinationStyleOpInterface>()) {
         rewriter.setInsertionPoint(tiledDestStyleOp);
         Value newRegionArg = newRegionIterArgs.back();
-        auto destSlice = rewriter.create<tensor::ExtractSliceOp>(
-            sliceOp.getLoc(), newRegionArg, sliceOp.getMixedOffsets(),
-            sliceOp.getMixedSizes(), sliceOp.getMixedStrides());
         unsigned resultNumber = fusableProducer.getResultNumber();
-        rewriter.modifyOpInPlace(tiledDestStyleOp, [&]() {
-          tiledDestStyleOp.getDpsInitsMutable()[resultNumber].set(destSlice);
-        });
+        auto origSlice = tiledDestStyleOp.getDpsInits()[resultNumber]
----------------
Yun-Fly wrote:

This PR indeed needs this change to ensure the slice ops returned by the `TilingInterfaceOp` would not expire after `yieldReplacementForFusedProducer`. Otherwise, it needs another solution to update the slice ops cached in `SCFFuseProducerOfSliceResult` before to latest one(created in `yieldReplacementForFusedProducer`).

BTW, this change will also affect another [PR](https://github.com/llvm/llvm-project/pull/93144) involving `yieldReplacementForFusedProducer` as well , hopefully merged before this PR.

https://github.com/llvm/llvm-project/pull/95422


More information about the Mlir-commits mailing list