mirror of
https://gitlab.winehq.org/wine/vkd3d.git
synced 2025-01-28 13:05:02 -08:00
vkd3d-shader/ir: Simplify the control flow in shader_instruction_normalise_io_params().
This commit is contained in:
parent
5220125c9f
commit
9487cc6ab5
Notes:
Alexandre Julliard
2023-09-22 22:46:19 +02:00
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/317
@ -1010,7 +1010,6 @@ static void shader_instruction_normalise_io_params(struct vkd3d_shader_instructi
|
||||
struct io_normaliser *normaliser)
|
||||
{
|
||||
struct vkd3d_shader_register *reg;
|
||||
bool keep = true;
|
||||
unsigned int i;
|
||||
|
||||
switch (ins->handler_idx)
|
||||
@ -1029,15 +1028,16 @@ static void shader_instruction_normalise_io_params(struct vkd3d_shader_instructi
|
||||
/* fall through */
|
||||
case VKD3DSIH_DCL_INPUT_PS:
|
||||
case VKD3DSIH_DCL_OUTPUT:
|
||||
keep = shader_dst_param_io_normalise(&ins->declaration.dst, true, normaliser);
|
||||
if (!shader_dst_param_io_normalise(&ins->declaration.dst, true, normaliser))
|
||||
vkd3d_shader_instruction_make_nop(ins);
|
||||
break;
|
||||
case VKD3DSIH_DCL_INPUT_SGV:
|
||||
case VKD3DSIH_DCL_INPUT_SIV:
|
||||
case VKD3DSIH_DCL_INPUT_PS_SGV:
|
||||
case VKD3DSIH_DCL_INPUT_PS_SIV:
|
||||
case VKD3DSIH_DCL_OUTPUT_SIV:
|
||||
keep = shader_dst_param_io_normalise(&ins->declaration.register_semantic.reg, true,
|
||||
normaliser);
|
||||
if (!shader_dst_param_io_normalise(&ins->declaration.register_semantic.reg, true, normaliser))
|
||||
vkd3d_shader_instruction_make_nop(ins);
|
||||
break;
|
||||
case VKD3DSIH_HS_CONTROL_POINT_PHASE:
|
||||
case VKD3DSIH_HS_FORK_PHASE:
|
||||
@ -1056,9 +1056,6 @@ static void shader_instruction_normalise_io_params(struct vkd3d_shader_instructi
|
||||
shader_src_param_io_normalise((struct vkd3d_shader_src_param *)&ins->src[i], normaliser);
|
||||
break;
|
||||
}
|
||||
|
||||
if (!keep)
|
||||
vsir_instruction_init(ins, VKD3DSIH_NOP);
|
||||
}
|
||||
|
||||
static enum vkd3d_result instruction_array_normalise_io_registers(struct vkd3d_shader_instruction_array *instructions,
|
||||
|
Loading…
x
Reference in New Issue
Block a user