vkd3d: Make some RS related functions non-static.

Signed-off-by: Hans-Kristian Arntzen <post@arntzen-software.no>
This commit is contained in:
Hans-Kristian Arntzen 2021-08-24 20:10:41 +02:00
parent 90d52abe94
commit f605b88e90
2 changed files with 20 additions and 10 deletions

View File

@ -153,7 +153,7 @@ CONST_VTBL struct ID3D12RootSignatureVtbl d3d12_root_signature_vtbl =
d3d12_root_signature_GetDevice,
};
static VkShaderStageFlags stage_flags_from_visibility(D3D12_SHADER_VISIBILITY visibility)
VkShaderStageFlags vkd3d_vk_stage_flags_from_visibility(D3D12_SHADER_VISIBILITY visibility)
{
switch (visibility)
{
@ -174,7 +174,7 @@ static VkShaderStageFlags stage_flags_from_visibility(D3D12_SHADER_VISIBILITY vi
}
}
static enum vkd3d_shader_visibility vkd3d_shader_visibility_from_d3d12(D3D12_SHADER_VISIBILITY visibility)
enum vkd3d_shader_visibility vkd3d_shader_visibility_from_d3d12(D3D12_SHADER_VISIBILITY visibility)
{
switch (visibility)
{
@ -251,7 +251,7 @@ static enum vkd3d_shader_descriptor_type vkd3d_descriptor_type_from_d3d12_root_p
}
}
static HRESULT vkd3d_create_descriptor_set_layout(struct d3d12_device *device,
HRESULT vkd3d_create_descriptor_set_layout(struct d3d12_device *device,
VkDescriptorSetLayoutCreateFlags flags, unsigned int binding_count,
const VkDescriptorSetLayoutBinding *bindings, VkDescriptorSetLayout *set_layout)
{
@ -274,7 +274,7 @@ static HRESULT vkd3d_create_descriptor_set_layout(struct d3d12_device *device,
return S_OK;
}
static HRESULT vkd3d_create_pipeline_layout(struct d3d12_device *device,
HRESULT vkd3d_create_pipeline_layout(struct d3d12_device *device,
unsigned int set_layout_count, const VkDescriptorSetLayout *set_layouts,
unsigned int push_constant_count, const VkPushConstantRange *push_constants,
VkPipelineLayout *pipeline_layout)
@ -537,7 +537,7 @@ static HRESULT d3d12_root_signature_init_push_constants(struct d3d12_root_signat
if (d3d12_root_signature_parameter_is_raw_va(root_signature, p->ParameterType))
{
push_constant_range->stageFlags |= stage_flags_from_visibility(p->ShaderVisibility);
push_constant_range->stageFlags |= vkd3d_vk_stage_flags_from_visibility(p->ShaderVisibility);
push_constant_range->size += sizeof(VkDeviceSize);
}
}
@ -562,7 +562,7 @@ static HRESULT d3d12_root_signature_init_push_constants(struct d3d12_root_signat
root_signature->root_constants[j].offset = push_constant_range->size;
root_signature->root_constants[j].size = p->Constants.Num32BitValues * sizeof(uint32_t);
push_constant_range->stageFlags |= stage_flags_from_visibility(p->ShaderVisibility);
push_constant_range->stageFlags |= vkd3d_vk_stage_flags_from_visibility(p->ShaderVisibility);
push_constant_range->size += p->Constants.Num32BitValues * sizeof(uint32_t);
++j;
@ -582,7 +582,7 @@ static HRESULT d3d12_root_signature_init_push_constants(struct d3d12_root_signat
root_signature->descriptor_table_count += 1;
push_constant_range->stageFlags |= stage_flags_from_visibility(p->ShaderVisibility);
push_constant_range->stageFlags |= vkd3d_vk_stage_flags_from_visibility(p->ShaderVisibility);
push_constant_range->size += sizeof(uint32_t);
}
}
@ -866,7 +866,7 @@ static HRESULT d3d12_root_signature_init_root_descriptors(struct d3d12_root_sign
vk_binding->descriptorType = VK_DESCRIPTOR_TYPE_UNIFORM_BUFFER;
vk_binding->descriptorCount = 1;
vk_binding->stageFlags = stage_flags_from_visibility(p->ShaderVisibility);
vk_binding->stageFlags = vkd3d_vk_stage_flags_from_visibility(p->ShaderVisibility);
vk_binding->pImmutableSamplers = NULL;
root_signature->root_descriptor_push_mask |= 1ull << hoisted_parameter_index;
@ -915,7 +915,7 @@ static HRESULT d3d12_root_signature_init_root_descriptors(struct d3d12_root_sign
vk_binding->binding = context->vk_binding;
vk_binding->descriptorType = vk_descriptor_type_from_d3d12_root_parameter(root_signature->device, p->ParameterType);
vk_binding->descriptorCount = 1;
vk_binding->stageFlags = stage_flags_from_visibility(p->ShaderVisibility);
vk_binding->stageFlags = vkd3d_vk_stage_flags_from_visibility(p->ShaderVisibility);
vk_binding->pImmutableSamplers = NULL;
root_signature->root_descriptor_push_mask |= 1ull << i;
}
@ -1029,7 +1029,7 @@ static HRESULT d3d12_root_signature_init_static_samplers(struct d3d12_root_signa
vk_binding->binding = context->vk_binding;
vk_binding->descriptorType = VK_DESCRIPTOR_TYPE_SAMPLER;
vk_binding->descriptorCount = 1;
vk_binding->stageFlags = stage_flags_from_visibility(s->ShaderVisibility);
vk_binding->stageFlags = vkd3d_vk_stage_flags_from_visibility(s->ShaderVisibility);
vk_binding->pImmutableSamplers = &root_signature->static_samplers[i];
binding = &root_signature->bindings[context->binding_index];

View File

@ -1366,12 +1366,22 @@ static inline struct d3d12_root_signature *impl_from_ID3D12RootSignature(ID3D12R
unsigned int d3d12_root_signature_get_shader_interface_flags(const struct d3d12_root_signature *root_signature);
HRESULT d3d12_root_signature_create_local_static_samplers_layout(struct d3d12_root_signature *root_signature,
VkDescriptorSetLayout vk_set_layout, VkPipelineLayout *vk_pipeline_layout);
HRESULT vkd3d_create_pipeline_layout(struct d3d12_device *device,
unsigned int set_layout_count, const VkDescriptorSetLayout *set_layouts,
unsigned int push_constant_count, const VkPushConstantRange *push_constants,
VkPipelineLayout *pipeline_layout);
int vkd3d_parse_root_signature_v_1_0(const struct vkd3d_shader_code *dxbc,
struct vkd3d_versioned_root_signature_desc *desc);
int vkd3d_parse_root_signature_v_1_1(const struct vkd3d_shader_code *dxbc,
struct vkd3d_versioned_root_signature_desc *desc);
VkShaderStageFlags vkd3d_vk_stage_flags_from_visibility(D3D12_SHADER_VISIBILITY visibility);
enum vkd3d_shader_visibility vkd3d_shader_visibility_from_d3d12(D3D12_SHADER_VISIBILITY visibility);
HRESULT vkd3d_create_descriptor_set_layout(struct d3d12_device *device,
VkDescriptorSetLayoutCreateFlags flags, unsigned int binding_count,
const VkDescriptorSetLayoutBinding *bindings, VkDescriptorSetLayout *set_layout);
#define VKD3D_MAX_DYNAMIC_STATE_COUNT (7)
enum vkd3d_dynamic_state_flag