Conor McCarthy : vkd3d: Calculate shader visibility once per root signature table.
Alexandre Julliard
julliard at winehq.org
Thu Aug 19 15:57:49 CDT 2021
Module: vkd3d
Branch: master
Commit: 04a08088ec54317dd0ccf13e7a39fdb9349fb31a
URL: https://source.winehq.org/git/vkd3d.git/?a=commit;h=04a08088ec54317dd0ccf13e7a39fdb9349fb31a
Author: Conor McCarthy <cmccarthy at codeweavers.com>
Date: Sat Aug 14 00:55:40 2021 +1000
vkd3d: Calculate shader visibility once per root signature table.
Signed-off-by: Conor McCarthy <cmccarthy at codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet at codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard at winehq.org>
---
libs/vkd3d/state.c | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
diff --git a/libs/vkd3d/state.c b/libs/vkd3d/state.c
index f9efeee..58463e5 100644
--- a/libs/vkd3d/state.c
+++ b/libs/vkd3d/state.c
@@ -664,6 +664,7 @@ static HRESULT d3d12_root_signature_init_root_descriptor_tables(struct d3d12_roo
for (i = 0; i < desc->NumParameters; ++i)
{
const D3D12_ROOT_PARAMETER *p = &desc->pParameters[i];
+ enum vkd3d_shader_visibility shader_visibility;
unsigned int offset = 0;
if (p->ParameterType != D3D12_ROOT_PARAMETER_TYPE_DESCRIPTOR_TABLE)
@@ -673,6 +674,7 @@ static HRESULT d3d12_root_signature_init_root_descriptor_tables(struct d3d12_roo
table = &root_signature->parameters[i].u.descriptor_table;
range_count = p->u.DescriptorTable.NumDescriptorRanges;
+ shader_visibility = vkd3d_shader_visibility_from_d3d12(p->ShaderVisibility);
root_signature->parameters[i].parameter_type = p->ParameterType;
table->range_count = range_count;
@@ -723,7 +725,7 @@ static HRESULT d3d12_root_signature_init_root_descriptor_tables(struct d3d12_roo
vk_binding = d3d12_root_signature_assign_vk_bindings(root_signature,
range->type, range->register_space, range->base_register_idx, range->descriptor_count, false, true,
- vkd3d_shader_visibility_from_d3d12(p->ShaderVisibility), context);
+ shader_visibility, context);
/* Unroll descriptor range. */
for (k = 0; k < range->descriptor_count; ++k)
More information about the wine-cvs
mailing list