radeonsi: turn sh_base[PIPE_SHADER_VERTEX] into a constant in emit_draw_packets

HAS_TESS will also be used in the next commit

Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24732>
This commit is contained in:
Marek Olšák 2023-07-11 05:19:09 -04:00 committed by Marge Bot
parent f34f740b64
commit c30aed0002

View file

@ -1543,8 +1543,8 @@ void gfx11_emit_buffered_compute_sh_regs(struct si_context *sctx)
} \
} while (0)
template <amd_gfx_level GFX_VERSION, si_has_ngg NGG, si_is_draw_vertex_state IS_DRAW_VERTEX_STATE,
si_has_pairs HAS_PAIRS> ALWAYS_INLINE
template <amd_gfx_level GFX_VERSION, si_has_tess HAS_TESS, si_has_gs HAS_GS, si_has_ngg NGG,
si_is_draw_vertex_state IS_DRAW_VERTEX_STATE, si_has_pairs HAS_PAIRS> ALWAYS_INLINE
static void si_emit_draw_packets(struct si_context *sctx, const struct pipe_draw_info *info,
unsigned drawid_base,
const struct pipe_draw_indirect_info *indirect,
@ -1675,7 +1675,8 @@ static void si_emit_draw_packets(struct si_context *sctx, const struct pipe_draw
}
}
unsigned sh_base_reg = sctx->shader_pointers.sh_base[PIPE_SHADER_VERTEX];
unsigned sh_base_reg = si_get_user_data_base(GFX_VERSION, HAS_TESS, HAS_GS, NGG,
PIPE_SHADER_VERTEX);
bool render_cond_bit = sctx->render_cond_enabled;
if (!IS_DRAW_VERTEX_STATE && indirect) {
@ -2657,7 +2658,7 @@ static void si_draw(struct pipe_context *ctx,
return;
}
si_emit_draw_packets<GFX_VERSION, NGG, IS_DRAW_VERTEX_STATE, HAS_PAIRS>
si_emit_draw_packets<GFX_VERSION, HAS_TESS, HAS_GS, NGG, IS_DRAW_VERTEX_STATE, HAS_PAIRS>
(sctx, info, drawid_offset, indirect, draws, num_draws, indexbuf,
index_size, index_offset, instance_count);
/* <-- CUs start to get busy here if we waited. */