v154: Bug 14417 - Added VkShaderStage to VkShaderCreateInfo
diff --git a/include/vulkan.h b/include/vulkan.h
index f8a7e86..010123d 100644
--- a/include/vulkan.h
+++ b/include/vulkan.h
@@ -41,7 +41,7 @@
((major << 22) | (minor << 12) | patch)
// Vulkan API version supported by this file
-#define VK_API_VERSION VK_MAKE_VERSION(0, 153, 0)
+#define VK_API_VERSION VK_MAKE_VERSION(0, 154, 0)
#if defined(__cplusplus) && (_MSC_VER >= 1800 || __cplusplus >= 201103L)
@@ -1566,6 +1566,7 @@
VkShaderModule module;
const char* pName;
VkShaderCreateFlags flags;
+ VkShaderStage stage;
} VkShaderCreateInfo;
typedef struct {
diff --git a/tests/init.cpp b/tests/init.cpp
index 21c50d9..b6f9294 100644
--- a/tests/init.cpp
+++ b/tests/init.cpp
@@ -73,7 +73,7 @@
void CreateCommandBufferTest();
void CreatePipelineTest();
void CreateShaderTest();
- void CreateShader(VkShader *pshader);
+ void CreateShader(VkShader *pshader, VkShaderStage stage);
VkDevice device() {return m_device->handle();}
@@ -528,7 +528,7 @@
CreateCommandBufferTest();
}
-void VkTest::CreateShader(VkShader *pshader)
+void VkTest::CreateShader(VkShader *pshader, VkShaderStage stage)
{
void *code;
uint32_t codeSize;
@@ -564,6 +564,7 @@
createInfo.module = module;
createInfo.pName = "main";
createInfo.flags = 0;
+ createInfo.stage = stage;
err = vkCreateShader(device(), &createInfo, &shader);
ASSERT_VK_SUCCESS(err);
diff --git a/tests/vkrenderframework.cpp b/tests/vkrenderframework.cpp
index 5539541..6962fa0 100644
--- a/tests/vkrenderframework.cpp
+++ b/tests/vkrenderframework.cpp
@@ -1149,6 +1149,7 @@
createInfo.module = module->handle();
createInfo.pName = "main";
createInfo.flags = 0;
+ createInfo.stage = stage;
err = init_try(*m_device, createInfo);
assert(VK_SUCCESS == err);
diff --git a/tests/vktestbinding.h b/tests/vktestbinding.h
index ea0bb06..d1bf56e 100644
--- a/tests/vktestbinding.h
+++ b/tests/vktestbinding.h
@@ -476,7 +476,7 @@
void init(const Device &dev, const VkShaderCreateInfo &info);
VkResult init_try(const Device &dev, const VkShaderCreateInfo &info);
- static VkShaderCreateInfo create_info(VkShaderModule module, const char *pName, VkFlags flags);
+ static VkShaderCreateInfo create_info(VkShaderModule module, const char *pName, VkFlags flags, VkShaderStage stage);
};
class Pipeline : public internal::NonDispHandle<VkPipeline> {
@@ -801,13 +801,14 @@
return info;
}
-inline VkShaderCreateInfo Shader::create_info(VkShaderModule module, const char *pName, VkFlags flags)
+inline VkShaderCreateInfo Shader::create_info(VkShaderModule module, const char *pName, VkFlags flags, VkShaderStage stage)
{
VkShaderCreateInfo info = {};
info.sType = VK_STRUCTURE_TYPE_SHADER_CREATE_INFO;
info.module = module;
info.pName = pName;
info.flags = flags;
+ info.stage = stage;
return info;
}