[Mlir-commits] [mlir] [AMDGPU] fold `memref.subview` into `amdgpu.gather_to_lds` (PR #149851)

Jakub Kuderski llvmlistbot at llvm.org
Tue Jul 22 07:54:35 PDT 2025


================
@@ -732,6 +733,32 @@ LogicalResult NVGPUAsyncCopyOpSubViewOpFolder::matchAndRewrite(
   return success();
 }
 
+struct FoldSubviewIntoAMDGPUGatherToLDSOp final
+    : OpRewritePattern<amdgpu::GatherToLDSOp> {
+  using OpRewritePattern::OpRewritePattern;
+  LogicalResult matchAndRewrite(amdgpu::GatherToLDSOp op,
+                                PatternRewriter &rewriter) const override {
+    Location loc = op.getLoc();
+
+    // Check if the source is a subview operation:
+    auto subviewOp = dyn_cast<memref::SubViewOp>(op.getSrc().getDefiningOp());
----------------
kuhar wrote:

```suggestion
    auto subviewOp = op.getSrc().getDefiningOp<memref::SubViewOp>();
```

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


More information about the Mlir-commits mailing list