mirror of
https://gitlab.winehq.org/wine/vkd3d.git
synced 2025-01-28 13:05:02 -08:00
vkd3d-shader/ir: Remove a redundant assignment.
The hull shader control point normalisation pass already ensures that output registers in the control point phase have two indices (the control point index and the register index).
This commit is contained in:
parent
e8cc288426
commit
3db458697e
Notes:
Henri Verbeet
2024-12-17 16:53:46 +01:00
Approved-by: Giovanni Mascellani (@giomasce) Approved-by: Henri Verbeet (@hverbeet) Merge-Request: https://gitlab.winehq.org/wine/vkd3d/-/merge_requests/1323
@ -1685,11 +1685,6 @@ static bool io_normaliser_is_in_fork_or_join_phase(const struct io_normaliser *n
|
|||||||
return normaliser->phase == VKD3DSIH_HS_FORK_PHASE || normaliser->phase == VKD3DSIH_HS_JOIN_PHASE;
|
return normaliser->phase == VKD3DSIH_HS_FORK_PHASE || normaliser->phase == VKD3DSIH_HS_JOIN_PHASE;
|
||||||
}
|
}
|
||||||
|
|
||||||
static bool io_normaliser_is_in_control_point_phase(const struct io_normaliser *normaliser)
|
|
||||||
{
|
|
||||||
return normaliser->phase == VKD3DSIH_HS_CONTROL_POINT_PHASE;
|
|
||||||
}
|
|
||||||
|
|
||||||
static bool shader_signature_find_element_for_reg(const struct shader_signature *signature,
|
static bool shader_signature_find_element_for_reg(const struct shader_signature *signature,
|
||||||
unsigned int reg_idx, unsigned int write_mask, unsigned int *element_idx)
|
unsigned int reg_idx, unsigned int write_mask, unsigned int *element_idx)
|
||||||
{
|
{
|
||||||
@ -2162,13 +2157,6 @@ static bool shader_dst_param_io_normalise(struct vkd3d_shader_dst_param *dst_par
|
|||||||
vkd3d_unreachable();
|
vkd3d_unreachable();
|
||||||
e = &signature->elements[element_idx];
|
e = &signature->elements[element_idx];
|
||||||
|
|
||||||
if (io_normaliser_is_in_control_point_phase(normaliser) && reg->type == VKD3DSPR_OUTPUT)
|
|
||||||
{
|
|
||||||
/* The control point id param. */
|
|
||||||
VKD3D_ASSERT(reg->idx[0].rel_addr);
|
|
||||||
id_idx = 1;
|
|
||||||
}
|
|
||||||
|
|
||||||
if ((e->register_count > 1 || vsir_sysval_semantic_is_tess_factor(e->sysval_semantic)))
|
if ((e->register_count > 1 || vsir_sysval_semantic_is_tess_factor(e->sysval_semantic)))
|
||||||
id_idx = shader_register_normalise_arrayed_addressing(reg, id_idx, e->register_index);
|
id_idx = shader_register_normalise_arrayed_addressing(reg, id_idx, e->register_index);
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user