================
@@ -18176,12 +18177,30 @@ Intrinsic::ID getDotProductIntrinsic(QualType QT, int 
elementCount) {
   return Intrinsic::dx_udot;
 }
 
+Intrinsic::ID getAllIntrinsic(const llvm::Triple::ArchType Arch) {
----------------
farzonl wrote:

this is a simple memchanism since we are only doing one intrinsic. 
Long term EmitHLSLBuiltinExpr may need to invoke a map using 
`llvm::Triple::ArchType Arch`  ie a arch map of  intrinsic maps. righting the 
same switch statement over and over again to pick the right intrinsics could 
become tedious.

```
spv_intrinsic = 
archMap[llvm::Triple::spirv][Builtin::BI__builtin_hlsl_elementwise_all] -->  
Intrinsic::spv_all;
dx_intrinsic  = 
archMap[llvm::Triple::dxil][Builtin::BI__builtin_hlsl_elementwise_all] -->  
Intrinsic::dx_all;
```

https://github.com/llvm/llvm-project/pull/87171
_______________________________________________
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to