Skip to content
Snippets Groups Projects

vkd3d-shader: Add more TPF validations.

Merged Conor McCarthy requested to merge cmccarthy/vkd3d:validate_tpf into master
2 unresolved threads
+ 2
8
@@ -295,7 +295,7 @@ static struct vkd3d_shader_src_param *shader_normaliser_create_outpointid_param(
return rel_addr;
}
static bool shader_dst_param_normalise_outpointid(struct vkd3d_shader_dst_param *dst_param,
static void shader_dst_param_normalise_outpointid(struct vkd3d_shader_dst_param *dst_param,
struct vkd3d_shader_normaliser *normaliser)
{
struct vkd3d_shader_register *reg = &dst_param->reg;
@@ -310,8 +310,6 @@ static bool shader_dst_param_normalise_outpointid(struct vkd3d_shader_dst_param
reg->idx[0].rel_addr = normaliser->outpointid_param;
++reg->idx_count;
}
return true;
}
static void shader_dst_param_io_init(struct vkd3d_shader_dst_param *param, const struct signature_element *e,
@@ -404,11 +402,7 @@ enum vkd3d_result shader_normaliser_normalise_hull_shader_control_point_io(struc
if (shader_instruction_is_dcl(ins))
break;
for (j = 0; j < ins->dst_count; ++j)
{
if (!shader_dst_param_normalise_outpointid((struct vkd3d_shader_dst_param *)&ins->dst[j],
normaliser))
return VKD3D_ERROR_INVALID_ARGUMENT;
}
shader_dst_param_normalise_outpointid((struct vkd3d_shader_dst_param *)&ins->dst[j], normaliser);
break;
}
}
Loading