HLSL: Report an error if SPIR-V for Vulkan wasn't selected.
authorJohn Kessenich <cepheus@frii.com>
Fri, 9 Sep 2016 17:43:11 +0000 (11:43 -0600)
committerJohn Kessenich <cepheus@frii.com>
Fri, 9 Sep 2016 17:43:11 +0000 (11:43 -0600)
glslang/Include/revision.h
glslang/MachineIndependent/ShaderLang.cpp
hlsl/hlslParseHelper.cpp

index a9c1f10..85fd262 100644 (file)
@@ -2,5 +2,5 @@
 // For the version, it uses the latest git tag followed by the number of commits.
 // For the date, it uses the current date (when then script is run).
 
-#define GLSLANG_REVISION "Overload400-PrecQual.1474"
+#define GLSLANG_REVISION "Overload400-PrecQual.1477"
 #define GLSLANG_DATE "09-Sep-2016"
index 97c3940..c0510c7 100644 (file)
@@ -695,9 +695,8 @@ bool ProcessDeferred(
     TParseContextBase* parseContext;
     if (source == EShSourceHlsl) {
         parseContext = new HlslParseContext(symbolTable, intermediate, false, version, profile, spvVersion,
-                                             compiler->getLanguage(), compiler->infoSink, forwardCompatible, messages);
-    }
-    else {
+                                            compiler->getLanguage(), compiler->infoSink, forwardCompatible, messages);
+    } else {
         intermediate.setEntryPoint("main");
         parseContext = new TParseContext(symbolTable, intermediate, false, version, profile, spvVersion,
                                          compiler->getLanguage(), compiler->infoSink, forwardCompatible, messages);
index 282fabd..7c4a83f 100755 (executable)
@@ -82,6 +82,9 @@ HlslParseContext::HlslParseContext(TSymbolTable& symbolTable, TIntermediate& int
 
     if (language == EShLangGeometry)
         globalOutputDefaults.layoutStream = 0;
+
+    if (spvVersion.spv == 0 || spvVersion.vulkan == 0)
+        infoSink.info << "ERROR: HLSL currently only supported when requesting SPIR-V for Vulkan.\n";
 }
 
 HlslParseContext::~HlslParseContext()