mirror of
https://gitlab.winehq.org/wine/vkd3d.git
synced 2025-01-28 13:05:02 -08:00
vkd3d-shader/hlsl: Emit a hlsl_fixme() for unhandled instruction types when writing bytecode.
This was originally left alone in order to allow functions without early return to succeed, since in that case we would already emit the correct bytecode despite not handling the HLSL_IR_JUMP_RETURN instruction. Now that we lower return statements, however, any unhandled instructions are either definitely going to result in invalid bytecode, or rare enough that it's not worth returning success anyway.
This commit is contained in:
parent
8bdee6681b
commit
6177cea31f
Notes:
Alexandre Julliard
2023-02-13 22:20:34 +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/85
@ -919,7 +919,7 @@ static void write_sm1_instructions(struct hlsl_ctx *ctx, struct vkd3d_bytecode_b
|
||||
break;
|
||||
|
||||
default:
|
||||
FIXME("Unhandled instruction type %s.\n", hlsl_node_type_to_string(instr->type));
|
||||
hlsl_fixme(ctx, &instr->loc, "Instruction type %s.", hlsl_node_type_to_string(instr->type));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -2401,7 +2401,7 @@ static void write_sm4_block(struct hlsl_ctx *ctx, struct vkd3d_bytecode_buffer *
|
||||
break;
|
||||
|
||||
default:
|
||||
FIXME("Unhandled instruction type %s.\n", hlsl_node_type_to_string(instr->type));
|
||||
hlsl_fixme(ctx, &instr->loc, "Instruction type %s.", hlsl_node_type_to_string(instr->type));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -146,7 +146,7 @@ void main(out float4 ret : sv_target)
|
||||
todo draw quad
|
||||
todo probe all rgba (0.2, 0.4, 0.6, 0.8)
|
||||
|
||||
[pixel shader]
|
||||
[pixel shader todo]
|
||||
|
||||
uniform float f;
|
||||
|
||||
@ -166,23 +166,23 @@ void main(out float4 ret : sv_target)
|
||||
|
||||
[test]
|
||||
uniform 0 float 0.0
|
||||
draw quad
|
||||
todo draw quad
|
||||
todo probe all rgba (0.1, 0.1, 0.1, 0.1) 1
|
||||
|
||||
uniform 0 float 0.1
|
||||
draw quad
|
||||
todo draw quad
|
||||
todo probe all rgba (0.2, 0.2, 0.2, 0.2) 1
|
||||
|
||||
uniform 0 float 0.3
|
||||
draw quad
|
||||
todo draw quad
|
||||
todo probe all rgba (0.4, 0.4, 0.4, 0.4) 1
|
||||
|
||||
uniform 0 float 0.7
|
||||
draw quad
|
||||
todo draw quad
|
||||
todo probe all rgba (0.8, 0.8, 0.8, 0.8) 1
|
||||
|
||||
uniform 0 float 0.9
|
||||
draw quad
|
||||
todo draw quad
|
||||
todo probe all rgba (0.9, 0.9, 0.9, 0.9) 1
|
||||
|
||||
[pixel shader todo]
|
||||
|
Loading…
x
Reference in New Issue
Block a user