radv: always declare some arguments for non-monolithic {VS,TES}/GS shaders

When compiling VS/TES and GS separately, we can't know if the GS will
need shader queries, so we have to always declare this argument.
Similar story for the view index.

Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24862>
This commit is contained in:
Samuel Pitoiset 2023-08-24 08:13:26 +02:00 committed by Marge Bot
parent d693027a00
commit c906723009

View file

@ -640,7 +640,7 @@ declare_shader_args(const struct radv_device *device, const struct radv_pipeline
declare_global_input_sgprs(info, user_sgpr_info, args);
if (info->uses_view_index) {
if (!info->is_monolithic || info->uses_view_index) {
add_ud_arg(args, 1, AC_ARG_INT, &args->ac.view_index, AC_UD_VIEW_INDEX);
}
@ -655,7 +655,7 @@ declare_shader_args(const struct radv_device *device, const struct radv_pipeline
add_ud_arg(args, 1, AC_ARG_INT, &args->ac.force_vrs_rates, AC_UD_FORCE_VRS_RATES);
}
if (has_shader_query)
if (!info->is_monolithic || has_shader_query)
add_ud_arg(args, 1, AC_ARG_INT, &args->shader_query_state, AC_UD_SHADER_QUERY_STATE);
if (info->is_ngg) {