radeonsi: move as_ls/es/ngg setting out of si_shader_selector_key
authorMarek Olšák <marek.olsak@amd.com>
Tue, 10 Aug 2021 04:55:52 +0000 (00:55 -0400)
committerMarge Bot <eric+marge@anholt.net>
Wed, 1 Sep 2021 00:42:57 +0000 (00:42 +0000)
commitc005b2cd4be39a9479dd73f45aff73b5b37438f6
tree68d73a042ef5904bc097bfd66d57e603192d9593
parent5a8a716168b40f0b672fb6572fffa6b8ba9a1b0f
radeonsi: move as_ls/es/ngg setting out of si_shader_selector_key

Do it when we bind shaders.

The advantages are:
- no need to memset the fields when any shader variant state is changed
  (e.g. culling on/off)
- no need to recompute the fields every time that happens

Acked-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/12656>
src/gallium/drivers/radeonsi/si_descriptors.c
src/gallium/drivers/radeonsi/si_pipe.c
src/gallium/drivers/radeonsi/si_pipe.h
src/gallium/drivers/radeonsi/si_shader.h
src/gallium/drivers/radeonsi/si_state_shaders.c