vkd3d-shader/d3dbc: Create vsir descriptor information in the parser.

This commit is contained in:
Elizabeth Figura
2025-10-09 14:52:30 -05:00
committed by Henri Verbeet
parent 781bb10ed0
commit 8d8132b2c7
Notes: Henri Verbeet 2025-10-13 19:31:51 +02:00
Approved-by: Henri Verbeet (@hverbeet)
Merge-Request: https://gitlab.winehq.org/wine/vkd3d/-/merge_requests/1769
4 changed files with 129 additions and 11 deletions

View File

@@ -1589,6 +1589,7 @@ struct vsir_program
struct vkd3d_shader_scan_descriptor_info1 descriptors;
bool has_descriptor_info;
size_t descriptors_size;
unsigned int parameter_count;
const struct vkd3d_shader_parameter1 *parameters;
@@ -1635,6 +1636,10 @@ enum vkd3d_result vsir_allocate_temp_registers(struct vsir_program *program,
enum vkd3d_result vsir_update_dcl_temps(struct vsir_program *program,
struct vkd3d_shader_message_context *message_context);
struct vkd3d_shader_descriptor_info1 *vsir_program_add_descriptor(struct vsir_program *program,
enum vkd3d_shader_descriptor_type type, unsigned int register_id,
const struct vkd3d_shader_register_range *range,
enum vkd3d_shader_resource_type resource_type, enum vsir_data_type resource_data_type);
bool vsir_program_add_icb(struct vsir_program *program, struct vkd3d_shader_immediate_constant_buffer *icb);
void vsir_program_cleanup(struct vsir_program *program);
const struct vkd3d_shader_parameter1 *vsir_program_get_parameter(