vkd3d-shader/hlsl: Emit a hlsl_fixme() for HLSL_IR_CALL instructions.

Avoid outputting invalid shaders.
This commit is contained in:
Zebediah Figura
2023-01-30 13:29:17 -06:00
committed by Alexandre Julliard
parent f9e7cb6345
commit aa3badbd9d
Notes: Alexandre Julliard 2023-01-31 22:50:33 +01:00
Approved-by: Giovanni Mascellani (@giomasce)
Approved-by: Francisco Casas (@fcasas)
Approved-by: Henri Verbeet (@hverbeet)
Approved-by: Alexandre Julliard (@julliard)
Merge-Request: https://gitlab.winehq.org/wine/vkd3d/-/merge_requests/65
8 changed files with 39 additions and 31 deletions

View File

@@ -824,6 +824,10 @@ static void write_sm1_instructions(struct hlsl_ctx *ctx, struct vkd3d_bytecode_b
switch (instr->type)
{
case HLSL_IR_CALL:
hlsl_fixme(ctx, &instr->loc, "Inline call instructions.\n");
break;
case HLSL_IR_CONSTANT:
write_sm1_constant(ctx, buffer, instr);
break;

View File

@@ -2360,6 +2360,10 @@ static void write_sm4_block(struct hlsl_ctx *ctx, struct vkd3d_bytecode_buffer *
switch (instr->type)
{
case HLSL_IR_CALL:
hlsl_fixme(ctx, &instr->loc, "Inline call instructions.\n");
break;
case HLSL_IR_CONSTANT:
write_sm4_constant(ctx, buffer, hlsl_ir_constant(instr));
break;