vkd3d-shader: Introduce struct vkd3d_shader_register_range.

Signed-off-by: Conor McCarthy <cmccarthy@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
This commit is contained in:
Conor McCarthy
2021-06-24 14:03:46 +10:00
committed by Alexandre Julliard
parent 20e0a241b4
commit af2714832b
5 changed files with 33 additions and 23 deletions

View File

@@ -2441,8 +2441,8 @@ static bool vkd3d_dxbc_compiler_has_combined_sampler(const struct vkd3d_dxbc_com
if (!vkd3d_dxbc_compiler_check_shader_visibility(compiler, combined_sampler->shader_visibility))
continue;
if ((!resource || (combined_sampler->resource_space == resource->register_space
&& combined_sampler->resource_index == resource->register_index))
if ((!resource || (combined_sampler->resource_space == resource->range.space
&& combined_sampler->resource_index == resource->range.first))
&& (!sampler || (combined_sampler->sampler_space == sampler->register_space
&& combined_sampler->sampler_index == sampler->register_index)))
return true;
@@ -5554,8 +5554,8 @@ static void vkd3d_dxbc_compiler_emit_resource_declaration(struct vkd3d_dxbc_comp
SpvStorageClass storage_class = SpvStorageClassUniformConstant;
const struct vkd3d_shader_register *reg = &resource->reg.reg;
const struct vkd3d_spirv_resource_type *resource_type_info;
unsigned int register_space = resource->register_space;
unsigned int register_index = resource->register_index;
unsigned int register_space = resource->range.space;
unsigned int register_index = resource->range.first;
enum vkd3d_shader_component_type sampled_type;
struct vkd3d_symbol resource_symbol;
bool is_uav;