[clang] [llvm] [HLSL] Implementation of dot intrinsic (PR #81190)

Farzon Lotfi via llvm-commits llvm-commits at lists.llvm.org
Fri Feb 9 13:42:35 PST 2024


================
@@ -19,4 +19,9 @@ def int_dx_flattened_thread_id_in_group : Intrinsic<[llvm_i32_ty], [], [IntrNoMe
 
 def int_dx_create_handle : ClangBuiltin<"__builtin_hlsl_create_handle">,
     Intrinsic<[ llvm_ptr_ty ], [llvm_i8_ty], [IntrWillReturn]>;
-}
+
+def int_dx_dot : 
+    Intrinsic<[LLVMVectorElementType<0>], 
+    [llvm_anyvector_ty, LLVMScalarOrSameVectorWidth<0, LLVMVectorElementType<0>>],
----------------
farzonl wrote:

Thats a good question. What I was afraid of is that `LLVMMatchType<0>`  would do its match on the type enum like FixedVector since arg0 is `llvm_anyvector_ty` or if it would also consider match on vector width and element type so I thought to be more explicit. 

for example what I don't want is 

float2 and int2 to match.


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


More information about the llvm-commits mailing list