From 04dc372780e369140b2cc1f44c7822486736311b Mon Sep 17 00:00:00 2001 From: Alejandro Saucedo Date: Thu, 18 Feb 2021 21:51:49 +0000 Subject: [PATCH] Updated to working test utils --- test/TestUtils.cpp | 32 ++++++++++++++++++-------------- 1 file changed, 18 insertions(+), 14 deletions(-) diff --git a/test/TestUtils.cpp b/test/TestUtils.cpp index 4e4aea9f1..a6c854a44 100644 --- a/test/TestUtils.cpp +++ b/test/TestUtils.cpp @@ -5,23 +5,27 @@ #include static std::vector spirv_from_string(const std::string& source, - shaderc_optimization_level optimization = shaderc_optimization_level_size, + shaderc_optimization_level optimization = shaderc_optimization_level_zero, std::vector> definitions = {}) { - shaderc::Compiler compiler; - shaderc::CompileOptions options; + shaderc::Compiler compiler; + shaderc::CompileOptions options; - for (const std::pair& def : definitions) { - options.AddMacroDefinition(def.first, def.second); - } - if (optimization) options.SetOptimizationLevel(optimization); + for (const std::pair& def : definitions) { + options.AddMacroDefinition(def.first, def.second); + } + if (optimization) options.SetOptimizationLevel(optimization); - std::string errorTag = "kompute"; - shaderc::SpvCompilationResult module = - compiler.CompileGlslToSpv(source, shaderc_glsl_compute_shader, errorTag.c_str(), options); + std::string errorTag = "kompute"; + shaderc::SpvCompilationResult module = + compiler.CompileGlslToSpv(source, shaderc_glsl_compute_shader, errorTag.c_str(), options); - if (module.GetCompilationStatus() != shaderc_compilation_status_success) { - throw std::runtime_error("Shader string invalid: " + module.GetErrorMessage()); - } + if (module.GetCompilationStatus() != shaderc_compilation_status_success) { + throw std::runtime_error("Shader string invalid: " + module.GetErrorMessage()); + } - return {module.cbegin(), module.cend()}; + std::vector vi = {module.cbegin(), module.cend()}; + auto p = reinterpret_cast(vi.data()); + std::vector vc{p, p + vi.size() * sizeof(int)}; + + return vc; }