radv: declare new argument for the TCS epilog PC

To jump to the TCS epilog.

Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24404>
This commit is contained in:
Samuel Pitoiset
2023-07-31 16:15:27 +02:00
committed by Marge Bot
parent c12ab8af96
commit f950eae10f
3 changed files with 10 additions and 0 deletions
+1
View File
@@ -188,6 +188,7 @@ enum radv_ud_index {
AC_UD_CS_MAX_UD,
AC_UD_GS_MAX_UD,
AC_UD_TCS_OFFCHIP_LAYOUT = AC_UD_VS_MAX_UD,
AC_UD_TCS_EPILOG_PC,
AC_UD_TCS_MAX_UD,
AC_UD_TES_STATE = AC_UD_SHADER_START,
AC_UD_TES_MAX_UD,
+8
View File
@@ -530,6 +530,10 @@ declare_shader_args(const struct radv_device *device, const struct radv_pipeline
add_ud_arg(args, 1, AC_ARG_INT, &args->tcs_offchip_layout, AC_UD_TCS_OFFCHIP_LAYOUT);
}
if (info->has_epilog) {
add_ud_arg(args, 1, AC_ARG_INT, &args->tcs_epilog_pc, AC_UD_TCS_EPILOG_PC);
}
ac_add_arg(&args->ac, AC_ARG_VGPR, 1, AC_ARG_INT, &args->ac.tcs_patch_id);
ac_add_arg(&args->ac, AC_ARG_VGPR, 1, AC_ARG_INT, &args->ac.tcs_rel_ids);
@@ -545,6 +549,10 @@ declare_shader_args(const struct radv_device *device, const struct radv_pipeline
add_ud_arg(args, 1, AC_ARG_INT, &args->tcs_offchip_layout, AC_UD_TCS_OFFCHIP_LAYOUT);
}
if (info->has_epilog) {
add_ud_arg(args, 1, AC_ARG_INT, &args->tcs_epilog_pc, AC_UD_TCS_EPILOG_PC);
}
ac_add_arg(&args->ac, AC_ARG_SGPR, 1, AC_ARG_INT, &args->ac.tess_offchip_offset);
ac_add_arg(&args->ac, AC_ARG_SGPR, 1, AC_ARG_INT, &args->ac.tcs_factor_offset);
if (args->explicit_scratch_args) {
+1
View File
@@ -68,6 +68,7 @@ struct radv_shader_args {
* # [6:13] = the number of tessellation patches
*/
struct ac_arg tcs_offchip_layout;
struct ac_arg tcs_epilog_pc;
/* TES */
/* # [0:7] = the number of tessellation patches