radeonsi: handle draw user SGPRs as tracked registers
authorMarek Olšák <marek.olsak@amd.com>
Tue, 11 Jul 2023 09:38:50 +0000 (05:38 -0400)
committerMarge Bot <emma+marge@anholt.net>
Thu, 17 Aug 2023 15:34:06 +0000 (15:34 +0000)
commitcb7dcdcea02d776431d1e1b614523deeb2dda781
tree9fd85d12e1b37adfc67bd02cde1881cb14761e60
parent3f34bd5f3f5c5b86df0e98328c60fd1626387889
radeonsi: handle draw user SGPRs as tracked registers

instead of this custom code doing the same thing. This tracks changes to LS,
ES, and VS user SGPRs separately, so that we can skip more redundant register
changes when enabling/disabling GS and tess. The perf impact should be neutral.

Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24732>
src/gallium/drivers/radeonsi/si_gfx_cs.c
src/gallium/drivers/radeonsi/si_pipe.h
src/gallium/drivers/radeonsi/si_state.h
src/gallium/drivers/radeonsi/si_state_draw.cpp