iris: move sysvals to their own constant buffer
authorTimur Kristóf <timur.kristof@gmail.com>
Fri, 14 Jun 2019 12:03:28 +0000 (14:03 +0200)
committerTimur Kristóf <timur.kristof@gmail.com>
Sun, 23 Jun 2019 16:33:23 +0000 (18:33 +0200)
commit3b6d787e404181758227e205eda03600b25c1fd9
treea492653d635a0033c43b7649bcb60dfbe5c7ea1d
parentebc8c20b3e688edf7b0157774572251444d33b04
iris: move sysvals to their own constant buffer

This commit moves the sysvals to a separate, new constant buffer
at the end (before the shader constants). It also allows us to
remove the special handling we had for cbuf0, and enables all
constant buffers to support user-specified resources and user
buffers.

v2: (by Kenneth Graunke)
- Rebase on the previous patch to fix system value uploading.
- Fix disk cache num_cbufs calculation
- Fix passthrough TCS to report num_cbufs = 1 so upload actually occurs
- Change upload_sysvals to assert that num_cbufs > 0 when
  num_system_values > 0.

Signed-off-by: Timur Kristóf <timur.kristof@gmail.com>
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
src/gallium/drivers/iris/iris_context.h
src/gallium/drivers/iris/iris_disk_cache.c
src/gallium/drivers/iris/iris_draw.c
src/gallium/drivers/iris/iris_program.c
src/gallium/drivers/iris/iris_state.c