From b8dfe1348a66689f36329bcba77da1b1c0537e57 Mon Sep 17 00:00:00 2001 From: Hai Nguyen Date: Tue, 30 Nov 2021 04:55:25 -0500 Subject: [PATCH] Vulkan rules relaxed for glslang C interface - Added vulkan_rules_relaxed flag to glslang_input_t to turn on Vulkan rules relaxed during shader creation. --- glslang/CInterface/glslang_c_interface.cpp | 4 ++++ glslang/Include/glslang_c_interface.h | 1 + 2 files changed, 5 insertions(+) diff --git a/glslang/CInterface/glslang_c_interface.cpp b/glslang/CInterface/glslang_c_interface.cpp index 43bb7896..b7d34dcc 100644 --- a/glslang/CInterface/glslang_c_interface.cpp +++ b/glslang/CInterface/glslang_c_interface.cpp @@ -343,6 +343,10 @@ GLSLANG_EXPORT glslang_shader_t* glslang_shader_create(const glslang_input_t* in shader->shader->setEnvTarget(c_shader_target_language(input->target_language), c_shader_target_language_version(input->target_language_version)); + if (input->vulkan_rules_relaxed) { + shader->shader->setEnvInputVulkanRulesRelaxed(); + } + return shader; } diff --git a/glslang/Include/glslang_c_interface.h b/glslang/Include/glslang_c_interface.h index 14ab6acb..11315969 100644 --- a/glslang/Include/glslang_c_interface.h +++ b/glslang/Include/glslang_c_interface.h @@ -166,6 +166,7 @@ typedef struct glslang_input_s { glslang_profile_t default_profile; int force_default_version_and_profile; int forward_compatible; + int vulkan_rules_relaxed; glslang_messages_t messages; const glslang_resource_t* resource; } glslang_input_t;