[clang] [llvm] Add cross builtins and cross HLSL function to DirectX and SPIR-V backend (PR #109180)
    Damyan Pepper via llvm-commits 
    llvm-commits at lists.llvm.org
       
    Wed Oct  2 13:15:03 PDT 2024
    
    
  
================
@@ -1704,6 +1704,20 @@ bool SemaHLSL::CheckBuiltinFunctionCall(unsigned BuiltinID, CallExpr *TheCall) {
       return true;
     break;
   }
+  case Builtin::BI__builtin_hlsl_cross: {
+    if (SemaRef.checkArgCount(TheCall, 2))
+      return true;
+    if (CheckVectorElementCallArgs(&SemaRef, TheCall))
+      return true;
+    if (CheckFloatOrHalfRepresentations(&SemaRef, TheCall))
+      return true;
+
----------------
damyanp wrote:
I can't find a `float4 builtin_cross_float4(float4  p1, float4  p2)` case?  Do `float4`s implicitly truncate to `float3` perhaps?
https://github.com/llvm/llvm-project/pull/109180
    
    
More information about the llvm-commits
mailing list