[Mlir-commits] [mlir] [MLIR][NVVM] Add tensormap.replace NVVM Op (PR #174926)
Srinivasa Ravi
llvmlistbot at llvm.org
Mon Jan 19 02:07:31 PST 2026
================
@@ -0,0 +1,186 @@
+// RUN: mlir-translate -mlir-to-llvmir %s | FileCheck %s
+
+// CHECK-LABEL: define void @tensormap_replace_global_address(ptr addrspace(1) %0, i64 %1) {
+llvm.func @tensormap_replace_global_address(%addr : !llvm.ptr<1>, %new_val : i64) {
+ // CHECK-NEXT: call void @llvm.nvvm.tensormap.replace.global.address.p1(ptr addrspace(1) %0, i64 %1)
+ nvvm.tensormap.replace field = global_address, new_value = %new_val in %addr : !llvm.ptr<1>, i64
+
+ // CHECK-NEXT: ret void
+ llvm.return
+ // CHECK-NEXT: }
+}
+
+// CHECK-LABEL: define void @tensormap_replace_rank(ptr addrspace(1) %0, i32 %1) {
+llvm.func @tensormap_replace_rank(%addr : !llvm.ptr<1>, %new_val : i32) {
+ // CHECK-NEXT: call void @llvm.nvvm.tensormap.replace.rank.p1(ptr addrspace(1) %0, i32 %1)
+ nvvm.tensormap.replace field = rank, new_value = %new_val in %addr : !llvm.ptr<1>, i32
+
+ // CHECK-NEXT: ret void
+ llvm.return
+ // CHECK-NEXT: }
+}
+
+// CHECK-LABEL: define void @tensormap_replace_box_dim(ptr addrspace(1) %0, i32 %1) {
+llvm.func @tensormap_replace_box_dim(%addr : !llvm.ptr<1>, %new_val : i32) {
+ // CHECK-NEXT: call void @llvm.nvvm.tensormap.replace.box.dim.p1(ptr addrspace(1) %0, i32 0, i32 %1)
+ nvvm.tensormap.replace field = box_dim, new_value = %new_val in %addr, ordinal = 0 : !llvm.ptr<1>, i32
+
+ // CHECK-NEXT: ret void
+ llvm.return
+ // CHECK-NEXT: }
+}
+
+// CHECK-LABEL: define void @tensormap_replace_global_dim(ptr addrspace(1) %0, i32 %1) {
+llvm.func @tensormap_replace_global_dim(%addr : !llvm.ptr<1>, %new_val : i32) {
+ // CHECK-NEXT: call void @llvm.nvvm.tensormap.replace.global.dim.p1(ptr addrspace(1) %0, i32 0, i32 %1)
+ nvvm.tensormap.replace field = global_dim, new_value = %new_val in %addr, ordinal = 0 : !llvm.ptr<1>, i32
----------------
Wolfram70 wrote:
That sounds like a neater way to do this. Updated the syntax to `[...]`. Thanks!
https://github.com/llvm/llvm-project/pull/174926
More information about the Mlir-commits
mailing list