[llvm] [DirectX][NFC] Leverage LLVM and DirectX intrinsic description in DXIL Op records (PR #83193)

S. Bharadwaj Yadavalli via llvm-commits llvm-commits at lists.llvm.org
Wed Feb 28 07:15:14 PST 2024


================
@@ -18,7 +18,7 @@ entry:
 ; Function Attrs: noinline nounwind optnone
 define i32 @test_group_id(i32 %a) #0 {
 entry:
-; CHECK: call i32 @dx.op.groupId.i32(i32 94, i32 %{{.*}})
+; CHECK: call i32 @dx.op.unary.i32(i32 94, i32 %{{.*}})
----------------
bharadwajy wrote:

> The code is in https://github.com/microsoft/DirectXShaderCompiler/blob/main/lib/DXIL/DxilOperations.cpp#L2693 ConstructOverloadName is used when create a DXIL op function.

Thanks!

> It is not in any doc I guess :(

If it is not documented (and consequently, as it appears to me, would not provide a standard to follow for any consumer of the generated DXIL code), which runtime/execution component considers `dx.op.groupId.i32(i32 94, ...)` as legal  but `dx.op.unary.i32(i32 94, ...)` as illegal?

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


More information about the llvm-commits mailing list