radeonsi: don't update dependent states if it has no effect (v2)
authorMarek Olšák <marek.olsak@amd.com>
Mon, 5 Jun 2017 00:00:52 +0000 (02:00 +0200)
committerMarek Olšák <marek.olsak@amd.com>
Thu, 8 Jun 2017 21:29:07 +0000 (23:29 +0200)
commit4b8d0c2b1d25c2cf1b3ce57c9c1d997bff1b9408
tree98fbcce6274dbd837227b910643bbea0263d2120
parentf804e0672ea56f4757b5e8d679798fa0e8132352
radeonsi: don't update dependent states if it has no effect (v2)

This and the previous clip_regs commit decrease IB sizes and the number of
si_update_shaders invocations as follows:

                 IB size   si_update_shaders calls
Borderlands 2      -10%            -27%
Deus Ex: MD         -5%            -11%
Talos Principle     -8%            -30%

v2: always dirty cb_render_state in set_framebuffer_state

Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
src/gallium/drivers/radeonsi/si_state.c
src/gallium/drivers/radeonsi/si_state.h
src/gallium/drivers/radeonsi/si_state_shaders.c