[clang] [Clang] diagnosing missing Vulkan environment when using SPIR-V triple (PR #190840)

Aaron Ballman via cfe-commits cfe-commits at lists.llvm.org
Mon Apr 13 06:09:43 PDT 2026


================
@@ -112,6 +112,18 @@ void CompilerInstance::setTarget(TargetInfo *Value) { Target = Value; }
 void CompilerInstance::setAuxTarget(TargetInfo *Value) { AuxTarget = Value; }
 
 bool CompilerInstance::createTarget() {
+
+  // SPIR-V targeting requires a fully specified Vulkan environment.
+  // Validate here before CreateTargetInfo() to emit a proper diagnostic
+  llvm::Triple Triple(getInvocation().getTargetOpts().Triple);
----------------
AaronBallman wrote:

I think the correct place for this logic is actually `BaseSPIRTargetInfo::validateTarget()` as that's where per-target validation typically occurs.

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


More information about the cfe-commits mailing list