tests/shader_runner: Set the SPIR-V feature flags based on the runner caps.

This commit is contained in:
Henri Verbeet
2024-03-04 15:29:05 +01:00
committed by Alexandre Julliard
parent 015fde5e23
commit 5c637d68da
Notes: Alexandre Julliard 2024-03-04 23:20:00 +01:00
Approved-by: Giovanni Mascellani (@giomasce)
Approved-by: Henri Verbeet (@hverbeet)
Approved-by: Alexandre Julliard (@julliard)
Merge-Request: https://gitlab.winehq.org/wine/vkd3d/-/merge_requests/688
3 changed files with 20 additions and 4 deletions

View File

@ -24,7 +24,6 @@
#define VKD3D_TEST_NO_DEFS
#include "config.h"
#include "vulkan/vulkan.h"
#include "vkd3d_shader.h"
#include "vkd3d.h"
#include "vkd3d_d3dcompiler.h"
#include "shader_runner.h"
@ -420,7 +419,7 @@ static bool compile_shader(struct vulkan_shader_runner *runner, const char *sour
struct vkd3d_shader_resource_binding bindings[MAX_RESOURCES + MAX_SAMPLERS];
struct vkd3d_shader_push_constant_buffer push_constants;
struct vkd3d_shader_resource_binding *binding;
struct vkd3d_shader_compile_option options[2];
struct vkd3d_shader_compile_option options[3];
struct vkd3d_shader_compile_option *option;
unsigned int i, compile_options;
char profile[7];
@ -499,6 +498,10 @@ static bool compile_shader(struct vulkan_shader_runner *runner, const char *sour
info.source_type = VKD3D_SHADER_SOURCE_DXBC_TPF;
info.target_type = VKD3D_SHADER_TARGET_SPIRV_BINARY;
option = &options[info.option_count++];
option->name = VKD3D_SHADER_COMPILE_OPTION_FEATURE;
option->value = shader_runner_caps_get_feature_flags(&runner->caps);
spirv_info.next = &interface_info;
spirv_info.environment = VKD3D_SHADER_SPIRV_ENVIRONMENT_VULKAN_1_0;