[Mlir-commits] [mlir] aaea206 - [ROCDL] Added `wave.id` to ROCDL (#176028)
llvmlistbot at llvm.org
llvmlistbot at llvm.org
Thu Jan 15 12:12:41 PST 2026
Author: Ravil Dorozhinskii
Date: 2026-01-15T21:12:36+01:00
New Revision: aaea20692f8b8e68b05ed141935dca3221246def
URL: https://github.com/llvm/llvm-project/commit/aaea20692f8b8e68b05ed141935dca3221246def
DIFF: https://github.com/llvm/llvm-project/commit/aaea20692f8b8e68b05ed141935dca3221246def.diff
LOG: [ROCDL] Added `wave.id` to ROCDL (#176028)
Added:
Modified:
mlir/include/mlir/Dialect/LLVMIR/ROCDLOps.td
mlir/test/Dialect/LLVMIR/rocdl.mlir
mlir/test/Target/LLVMIR/rocdl.mlir
Removed:
################################################################################
diff --git a/mlir/include/mlir/Dialect/LLVMIR/ROCDLOps.td b/mlir/include/mlir/Dialect/LLVMIR/ROCDLOps.td
index 9f2350763f328..8f6676ded713c 100644
--- a/mlir/include/mlir/Dialect/LLVMIR/ROCDLOps.td
+++ b/mlir/include/mlir/Dialect/LLVMIR/ROCDLOps.td
@@ -351,6 +351,7 @@ def ROCDL_ClusterIdXOp : ROCDL_SpecialIdRegisterOp<"cluster.id.x">;
def ROCDL_ClusterIdYOp : ROCDL_SpecialIdRegisterOp<"cluster.id.y">;
def ROCDL_ClusterIdZOp : ROCDL_SpecialIdRegisterOp<"cluster.id.z">;
+def ROCDL_WaveId : ROCDL_SpecialIdRegisterOp<"wave.id">;
def ROCDL_WavefrontSizeOp : ROCDL_SpecialIdRegisterOp<"wavefrontsize">;
//===----------------------------------------------------------------------===//
diff --git a/mlir/test/Dialect/LLVMIR/rocdl.mlir b/mlir/test/Dialect/LLVMIR/rocdl.mlir
index d519145afa6b4..9e7fb70a4a6cf 100644
--- a/mlir/test/Dialect/LLVMIR/rocdl.mlir
+++ b/mlir/test/Dialect/LLVMIR/rocdl.mlir
@@ -32,6 +32,8 @@ func.func @rocdl_special_regs() -> i32 {
%13 = rocdl.grid.dim.y : i32
// CHECK: rocdl.grid.dim.z : i32
%14 = rocdl.grid.dim.z : i32
+ // CHECK: rocdl.wave.id : i32
+ %15 = rocdl.wave.id : i32
llvm.return %0 : i32
}
diff --git a/mlir/test/Target/LLVMIR/rocdl.mlir b/mlir/test/Target/LLVMIR/rocdl.mlir
index 8496823b5850a..a4bdf06d34807 100644
--- a/mlir/test/Target/LLVMIR/rocdl.mlir
+++ b/mlir/test/Target/LLVMIR/rocdl.mlir
@@ -39,11 +39,17 @@ llvm.func @rocdl_special_regs() -> i32 {
// CHECK: call range(i64 1, 65) i64 @__ockl_get_local_size(i32 0)
%17 = rocdl.workgroup.dim.x range <i32, 1, 65> : i64
+ // CHECK: call i32 @llvm.amdgcn.wave.id()
+ %18 = rocdl.wave.id : i32
+
+ // CHECK: call range(i32 32, 65) i32 @llvm.amdgcn.wave.id()
+ %19 = rocdl.wave.id range <i32, 32, 65> : i32
+
// CHECK: call i32 @llvm.amdgcn.wavefrontsize()
- %18 = rocdl.wavefrontsize : i32
+ %20 = rocdl.wavefrontsize : i32
// CHECK: call range(i32 32, 65) i32 @llvm.amdgcn.wavefrontsize()
- %19 = rocdl.wavefrontsize range <i32, 32, 65> : i32
+ %21 = rocdl.wavefrontsize range <i32, 32, 65> : i32
llvm.return %1 : i32
}
More information about the Mlir-commits
mailing list