radv: Declare tess_lvl_in/out args for TCS epilogs.
Signed-off-by: Timur Kristóf <timur.kristof@gmail.com> Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/28371>
This commit is contained in:
@@ -103,6 +103,11 @@ radv_aco_convert_tcs_epilog_key(struct aco_tcs_epilog_info *aco_info, const stru
|
||||
aco_info->rel_patch_id = radv_args->rel_patch_id;
|
||||
aco_info->tcs_out_current_patch_data_offset = radv_args->tcs_out_current_patch_data_offset;
|
||||
aco_info->patch_base = radv_args->patch_base;
|
||||
|
||||
for (unsigned i = 0; i < 4; ++i)
|
||||
aco_info->tess_lvl_out[i] = radv_args->tess_lvl_out[i];
|
||||
for (unsigned i = 0; i < 2; ++i)
|
||||
aco_info->tess_lvl_in[i] = radv_args->tess_lvl_in[i];
|
||||
}
|
||||
|
||||
static inline void
|
||||
|
||||
@@ -937,4 +937,9 @@ radv_declare_tcs_epilog_args(const struct radv_device *device, const struct radv
|
||||
ac_add_arg(&args->ac, AC_ARG_VGPR, 1, AC_ARG_INT, &args->tcs_out_current_patch_data_offset);
|
||||
ac_add_arg(&args->ac, AC_ARG_VGPR, 1, AC_ARG_INT, &args->invocation_id);
|
||||
ac_add_arg(&args->ac, AC_ARG_VGPR, 1, AC_ARG_INT, &args->rel_patch_id);
|
||||
|
||||
for (unsigned i = 0; i < 4; ++i)
|
||||
ac_add_arg(&args->ac, AC_ARG_VGPR, 1, AC_ARG_FLOAT, &args->tess_lvl_out[i]);
|
||||
for (unsigned i = 0; i < 2; ++i)
|
||||
ac_add_arg(&args->ac, AC_ARG_VGPR, 1, AC_ARG_FLOAT, &args->tess_lvl_in[i]);
|
||||
}
|
||||
|
||||
@@ -78,6 +78,8 @@ struct radv_shader_args {
|
||||
struct ac_arg tcs_out_current_patch_data_offset;
|
||||
struct ac_arg invocation_id;
|
||||
struct ac_arg rel_patch_id;
|
||||
struct ac_arg tess_lvl_out[4];
|
||||
struct ac_arg tess_lvl_in[2];
|
||||
|
||||
/* TES */
|
||||
/* # [0:7] = the number of tessellation patches
|
||||
|
||||
Reference in New Issue
Block a user