radv: declare a new user SGPR for the dynamic line rasterization mode

Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21587>
This commit is contained in:
Samuel Pitoiset 2023-02-28 09:24:51 +01:00 committed by Marge Bot
parent fcfdb1bb6c
commit 9b2e59abc5
3 changed files with 5 additions and 0 deletions

View file

@ -169,6 +169,7 @@ enum radv_ud_index {
AC_UD_VS_MAX_UD,
AC_UD_PS_EPILOG_PC,
AC_UD_PS_NUM_SAMPLES,
AC_UD_PS_LINE_RAST_MODE,
AC_UD_PS_MAX_UD,
AC_UD_CS_GRID_SIZE = AC_UD_SHADER_START,
AC_UD_CS_SBT_DESCRIPTORS,

View file

@ -644,6 +644,9 @@ declare_shader_args(const struct radv_device *device, const struct radv_pipeline
add_ud_arg(args, 1, AC_ARG_INT, &args->ps_num_samples, AC_UD_PS_NUM_SAMPLES);
}
if (key->dynamic_line_rast_mode)
add_ud_arg(args, 1, AC_ARG_INT, &args->ps_line_rast_mode, AC_UD_PS_LINE_RAST_MODE);
ac_add_arg(&args->ac, AC_ARG_SGPR, 1, AC_ARG_INT, &args->ac.prim_mask);
if (args->explicit_scratch_args && gfx_level < GFX11) {
ac_add_arg(&args->ac, AC_ARG_SGPR, 1, AC_ARG_INT, &args->ac.scratch_offset);

View file

@ -60,6 +60,7 @@ struct radv_shader_args {
/* Fragment shaders */
struct ac_arg ps_epilog_pc;
struct ac_arg ps_num_samples;
struct ac_arg ps_line_rast_mode;
struct ac_arg prolog_inputs;
struct ac_arg vs_inputs[MAX_VERTEX_ATTRIBS];