iris: Skip allocating a null surface when there are 0 color regions.
authorKenneth Graunke <kenneth@whitecape.org>
Tue, 27 Aug 2019 18:32:24 +0000 (11:32 -0700)
committerKenneth Graunke <kenneth@whitecape.org>
Tue, 17 Sep 2019 21:27:51 +0000 (14:27 -0700)
commitf8c44e4ed7886a7c81cbe86521fa6728efd27f5c
tree0188b6c3768f3335bdb5be95a5df2ca794b0fe25
parentf76a724e06842119cbcac83e9c3c938ba9022b02
iris: Skip allocating a null surface when there are 0 color regions.

The compiler now sets the "Null Render Target" bit in the RT write
extended message descriptor, causing it to write to an implicit null
surface without us needing to set one up in the binding table.

Together with the last patch, this improves performance in Car Chase on
an Icelake 8x8 (locked to 700Mhz) by 0.0445526% +/- 0.0132736% (n=832).

Reviewed-by: Caio Marcelo de Oliveira Filho <caio.oliveira@intel.com>
src/gallium/drivers/iris/iris_program.c
src/gallium/drivers/iris/iris_state.c