================
@@ -4779,6 +4739,18 @@ void Driver::BuildActions(Compilation &C, DerivedArgList 
&Args,
     }
   }
 
+  if (C.getDefaultToolChain().getTriple().isSPIRV()) {
+    const auto &TC =
+        static_cast<const toolchains::HLSLToolChain 
&>(C.getDefaultToolChain());
+
+    // Call spirv-val for SPIR-V when -Vd not in Args.
+    if (TC.requiresValidation(Args)) {
+      Action *LastAction = Actions.back();
+      Actions.push_back(
+          C.MakeAction<BinaryAnalyzeJobAction>(LastAction, types::TY_Object));
----------------
bob80905 wrote:

It doesn't look like D:\llvm-project\clang\include\clang\Driver\Types.def has 
anything more specific than object. It seems like the closest match since SPIRV 
output is effectively a binary blob. Though there is a case to be made that we 
could add a new type. Not sure. @bogner ?
For context, Xiang did add a new type DX_CONTAINER for dxv back in early 2023: 
https://reviews.llvm.org/D141705.
So perhaps the right move is to make a new type.

https://github.com/llvm/llvm-project/pull/188150
_______________________________________________
cfe-commits mailing list
[email protected]
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to