[Mlir-commits] [mlir] [mlir][amdgpu] Add make_dma_base operation (PR #169086)
Krzysztof Drewniak
llvmlistbot at llvm.org
Wed Nov 26 11:19:02 PST 2025
================
@@ -1192,4 +1223,28 @@ def AMDGPU_ScaledMFMAOp :
}];
let hasCanonicalizer = 1;
}
+
+def AMDGPU_MakeDmaBaseOp :
+ AMDGPU_Op<"make_dma_base", [Pure, AttrSizedOperandSegments]>,
+ Arguments<(ins
+ Arg<AnyMemRef, "buffer to read from">:$src,
+ Variadic<Index>:$srcIndices,
+ Arg<AnyMemRef, "buffer to write to">:$dst,
+ Variadic<Index>:$dstIndices)>,
+ Results<(outs AMDGPU_TDMBaseType: $base)> {
+
+ let summary = "Pair of based addresses used when moving tiles between LDS and global memory.";
+ let description = [{
+ This operation creates a pair of addresses that will be used by tensor_load_to_lds
+ and tensor_store_from_lds.
+
+ This operation creates a value corresponding roughly to the descriptor group 0
+ found in TensorLoadToLDSOp and TensorStoreFromLDSOp in the rocdl dialect.
+ }];
+
+ let assemblyFormat = [{
+ $src `[` $srcIndices `]` `,` $dst `[` $dstIndices `]` attr-dict `:` type($src) `,` type($dst) `to` type(results)
+ }];
+}
+
----------------
krzysz00 wrote:
Ok, so, are we making a separate type and op pair for gather mode DMA? Is that a future PR?
(I ask because the gather flag lives in group 0)
https://github.com/llvm/llvm-project/pull/169086
More information about the Mlir-commits
mailing list