diff --git a/src/gallium/drivers/radeonsi/si_state_draw.cpp b/src/gallium/drivers/radeonsi/si_state_draw.cpp index a11d9cf2f25..c74f994232b 100644 --- a/src/gallium/drivers/radeonsi/si_state_draw.cpp +++ b/src/gallium/drivers/radeonsi/si_state_draw.cpp @@ -1543,8 +1543,8 @@ void gfx11_emit_buffered_compute_sh_regs(struct si_context *sctx) } \ } while (0) -template ALWAYS_INLINE +template 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 + si_emit_draw_packets (sctx, info, drawid_offset, indirect, draws, num_draws, indexbuf, index_size, index_offset, instance_count); /* <-- CUs start to get busy here if we waited. */