From a589a371e67b6ea153623f4b320ec501cb229428 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Henrik=20Rydg=C3=A5rd?= Date: Mon, 16 Jul 2018 19:51:33 +0200 Subject: [PATCH] Update SPIRV-Cross to a fresher version. --- GPU/Common/ShaderTranslation.cpp | 12 ++++++++---- UWP/SPIRVCross_UWP/SPIRVCross_UWP.vcxproj | 4 +++- android/jni/Android.mk | 1 + ext/SPIRV-Cross | 2 +- ext/SPIRV-Cross-build/CMakeLists.txt | 1 + ext/SPIRV-Cross.vcxproj | 5 ++++- ext/SPIRV-Cross.vcxproj.filters | 2 ++ libretro/Makefile.common | 1 + 8 files changed, 21 insertions(+), 7 deletions(-) diff --git a/GPU/Common/ShaderTranslation.cpp b/GPU/Common/ShaderTranslation.cpp index d0db2f34aca5..b253a96f6b34 100644 --- a/GPU/Common/ShaderTranslation.cpp +++ b/GPU/Common/ShaderTranslation.cpp @@ -261,9 +261,11 @@ bool TranslateShader(std::string *dest, ShaderLanguage destLang, TranslatedShade { spirv_cross::CompilerHLSL hlsl(spirv); spirv_cross::CompilerHLSL::Options options{}; - options.fixup_clipspace = true; options.shader_model = 30; - hlsl.set_options(options); + spirv_cross::CompilerGLSL::Options options_common{}; + options_common.vertex.fixup_clipspace = true; + hlsl.set_hlsl_options(options); + hlsl.set_common_options(options_common); *dest = hlsl.compile(); return true; } @@ -279,9 +281,11 @@ bool TranslateShader(std::string *dest, ShaderLanguage destLang, TranslatedShade i++; } spirv_cross::CompilerHLSL::Options options{}; - options.fixup_clipspace = true; options.shader_model = 50; - hlsl.set_options(options); + spirv_cross::CompilerGLSL::Options options_common{}; + options_common.vertex.fixup_clipspace = true; + hlsl.set_hlsl_options(options); + hlsl.set_common_options(options_common); std::string raw = hlsl.compile(); *dest = Postprocess(raw, destLang, stage); return true; diff --git a/UWP/SPIRVCross_UWP/SPIRVCross_UWP.vcxproj b/UWP/SPIRVCross_UWP/SPIRVCross_UWP.vcxproj index 8e4ac9dfc23d..fe4a09e6a770 100644 --- a/UWP/SPIRVCross_UWP/SPIRVCross_UWP.vcxproj +++ b/UWP/SPIRVCross_UWP/SPIRVCross_UWP.vcxproj @@ -285,6 +285,7 @@ + @@ -294,6 +295,7 @@ + @@ -312,4 +314,4 @@ - \ No newline at end of file + diff --git a/android/jni/Android.mk b/android/jni/Android.mk index 13fc2838c344..2b837a0ef224 100644 --- a/android/jni/Android.mk +++ b/android/jni/Android.mk @@ -149,6 +149,7 @@ VULKAN_FILES := \ SPIRV_CROSS_FILES := \ $(SRC)/ext/SPIRV-Cross/spirv_cfg.cpp \ $(SRC)/ext/SPIRV-Cross/spirv_cross.cpp \ + $(SRC)/ext/SPIRV-Cross/spirv_cross_util.cpp \ $(SRC)/ext/SPIRV-Cross/spirv_glsl.cpp EXEC_AND_LIB_FILES := \ diff --git a/ext/SPIRV-Cross b/ext/SPIRV-Cross index 90966d50f576..be7425ef7023 160000 --- a/ext/SPIRV-Cross +++ b/ext/SPIRV-Cross @@ -1 +1 @@ -Subproject commit 90966d50f57608587bafd95b4e345b02b814754a +Subproject commit be7425ef70231ab82930331959ab487d605d0482 diff --git a/ext/SPIRV-Cross-build/CMakeLists.txt b/ext/SPIRV-Cross-build/CMakeLists.txt index 3c8c628b8e8d..b550bad7d97d 100644 --- a/ext/SPIRV-Cross-build/CMakeLists.txt +++ b/ext/SPIRV-Cross-build/CMakeLists.txt @@ -26,6 +26,7 @@ add_library(spirv-cross-core STATIC ${SRCDIR}/spirv.hpp ${SRCDIR}/spirv_cross.hpp ${SRCDIR}/spirv_cross.cpp + ${SRCDIR}/spirv_cross_util.cpp ${SRCDIR}/spirv_cfg.hpp ${SRCDIR}/spirv_cfg.cpp) diff --git a/ext/SPIRV-Cross.vcxproj b/ext/SPIRV-Cross.vcxproj index d83083d68e16..1211cdd119d1 100644 --- a/ext/SPIRV-Cross.vcxproj +++ b/ext/SPIRV-Cross.vcxproj @@ -22,7 +22,8 @@ {4328A62C-F1E9-47ED-B816-A1A81DAF4363} Win32Proj SPIRVCross - + + @@ -153,6 +154,7 @@ + @@ -161,6 +163,7 @@ + diff --git a/ext/SPIRV-Cross.vcxproj.filters b/ext/SPIRV-Cross.vcxproj.filters index 935004f16652..b2406869d26f 100644 --- a/ext/SPIRV-Cross.vcxproj.filters +++ b/ext/SPIRV-Cross.vcxproj.filters @@ -9,6 +9,7 @@ + @@ -17,5 +18,6 @@ + \ No newline at end of file diff --git a/libretro/Makefile.common b/libretro/Makefile.common index d905f0a57afb..fd6e262e3505 100644 --- a/libretro/Makefile.common +++ b/libretro/Makefile.common @@ -242,6 +242,7 @@ SOURCES_CXX += \ $(EXTDIR)/glslang/SPIRV/SpvBuilder.cpp \ $(EXTDIR)/SPIRV-Cross/spirv_cfg.cpp \ $(EXTDIR)/SPIRV-Cross/spirv_cross.cpp \ + $(EXTDIR)/SPIRV-Cross/spirv_cross_util.cpp \ $(EXTDIR)/SPIRV-Cross/spirv_glsl.cpp \ $(EXTDIR)/SPIRV-Cross/spirv_hlsl.cpp