vkd3d-shader/hlsl: Use vsir_program_append() in sm1_generate_vsir_sampler_dcls().

This commit is contained in:
Francisco Casas
2025-07-30 20:49:17 -04:00
committed by Henri Verbeet
parent 81488ce330
commit be5a9c2ca8
Notes: Henri Verbeet 2025-08-04 15:08:37 +02:00
Approved-by: Henri Verbeet (@hverbeet)
Merge-Request: https://gitlab.winehq.org/wine/vkd3d/-/merge_requests/1666

View File

@@ -8325,7 +8325,6 @@ static void sm1_generate_vsir_constant_defs(struct hlsl_ctx *ctx, struct vsir_pr
static void sm1_generate_vsir_sampler_dcls(struct hlsl_ctx *ctx, static void sm1_generate_vsir_sampler_dcls(struct hlsl_ctx *ctx,
struct vsir_program *program, struct hlsl_block *block) struct vsir_program *program, struct hlsl_block *block)
{ {
struct vkd3d_shader_instruction_array *instructions = &program->instructions;
enum vkd3d_shader_resource_type resource_type; enum vkd3d_shader_resource_type resource_type;
struct vkd3d_shader_register_range *range; struct vkd3d_shader_register_range *range;
struct vkd3d_shader_dst_param *dst_param; struct vkd3d_shader_dst_param *dst_param;
@@ -8372,20 +8371,13 @@ static void sm1_generate_vsir_sampler_dcls(struct hlsl_ctx *ctx,
break; break;
} }
if (!shader_instruction_array_reserve(instructions, instructions->count + 1)) if (!(ins = vsir_program_append(program)))
{ {
ctx->result = VKD3D_ERROR_OUT_OF_MEMORY; ctx->result = VKD3D_ERROR_OUT_OF_MEMORY;
return; return;
} }
ins = &instructions->elements[instructions->count]; vsir_instruction_init(ins, &var->loc, VSIR_OP_DCL);
if (!vsir_instruction_init_with_params(program, ins, &var->loc, VSIR_OP_DCL, 0, 0))
{
ctx->result = VKD3D_ERROR_OUT_OF_MEMORY;
return;
}
++instructions->count;
semantic = &ins->declaration.semantic; semantic = &ins->declaration.semantic;
semantic->resource_type = resource_type; semantic->resource_type = resource_type;