SPV: Further refine OpenGL vs. Vulkan differences for SPIR-V.
Includes adding test cases to verify the differences.
diff --git a/StandAlone/StandAlone.cpp b/StandAlone/StandAlone.cpp
index 3fd7e7d..0e4e738 100644
--- a/StandAlone/StandAlone.cpp
+++ b/StandAlone/StandAlone.cpp
@@ -222,7 +222,13 @@
switch (argv[0][1]) {
case 'H':
Options |= EOptionHumanReadableSpv;
- // fall through to -V
+ if ((Options & EOptionSpv) == 0) {
+ // default to Vulkan
+ Options |= EOptionSpv;
+ Options |= EOptionVulkanRules;
+ Options |= EOptionLinkProgram;
+ }
+ break;
case 'V':
Options |= EOptionSpv;
Options |= EOptionVulkanRules;
@@ -231,6 +237,8 @@
case 'G':
Options |= EOptionSpv;
Options |= EOptionLinkProgram;
+ // undo a -H default to Vulkan
+ Options &= ~EOptionVulkanRules;
break;
case 'E':
Options |= EOptionOutputPreprocessed;