[Mlir-commits] [mlir] [MLIR][ROCDL] Add conversion for gpu.subgroup_id to ROCDL (PR #136405)
Krzysztof Drewniak
llvmlistbot at llvm.org
Tue Apr 22 12:11:14 PDT 2025
================
@@ -204,6 +204,15 @@ def ROCDL_ReadlaneOp : ROCDL_IntrOp<"readlane", [], [0], [AllTypesMatch<["res",
}];
}
+// The LLVM intrinsic function name is rather mouthful,
+// so here we opt to use a shorter rocdl name.
+def ROCDL_WaveIdOp : LLVM_IntrOpBase<ROCDL_Dialect, "wave_id",
+ "amdgcn_s_get_waveid_in_workgroup", [], [], [], 1>,
----------------
krzysz00 wrote:
One thing I'd want to get a sense of is _why_ the LLVM-side intrinsic is marked as having side effects - I suspect it's for internal reasons about needing to fetch dimensions from some memory, but I'd want to look into that.
Conceptually, "wave ID in subgroup" should have the same purity as `gpu.thread_id`
https://github.com/llvm/llvm-project/pull/136405
More information about the Mlir-commits
mailing list