summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJordan Justen <jordan.l.justen@intel.com>2015-09-24 00:25:27 -0700
committerJordan Justen <jordan.l.justen@intel.com>2015-09-29 08:23:47 -0700
commit2ec5f3e1d5616f9e5c223a9f48d4b1a0d2568225 (patch)
treefea93ff4dd874a363220b3f7d62f94bc23261db9
parent1665d29ee3125743fd6daf3c43fc715f543d5669 (diff)
downloadexternal_mesa3d-2ec5f3e1d5616f9e5c223a9f48d4b1a0d2568225.zip
external_mesa3d-2ec5f3e1d5616f9e5c223a9f48d4b1a0d2568225.tar.gz
external_mesa3d-2ec5f3e1d5616f9e5c223a9f48d4b1a0d2568225.tar.bz2
i965/cs: Re-emit push constants and cs_state on new batches
We need to re-emit push constansts when a new batch is started since the push constants are stored in the batch. We also need to re-emit the MEDIA_INTERFACE_DESCRIPTOR (in brw_cs_state) since it is stored in the batch. Signed-off-by: Jordan Justen <jordan.l.justen@intel.com> Reviewed-by: Kristian Høgsberg <krh@bitplanet.net>
-rw-r--r--src/mesa/drivers/dri/i965/gen7_cs_state.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/src/mesa/drivers/dri/i965/gen7_cs_state.c b/src/mesa/drivers/dri/i965/gen7_cs_state.c
index d9561cf..c53aa23 100644
--- a/src/mesa/drivers/dri/i965/gen7_cs_state.c
+++ b/src/mesa/drivers/dri/i965/gen7_cs_state.c
@@ -181,7 +181,8 @@ brw_upload_cs_state(struct brw_context *brw)
const struct brw_tracked_state brw_cs_state = {
.dirty = {
.mesa = _NEW_PROGRAM_CONSTANTS,
- .brw = BRW_NEW_CS_PROG_DATA |
+ .brw = BRW_NEW_BATCH |
+ BRW_NEW_CS_PROG_DATA |
BRW_NEW_PUSH_CONSTANT_ALLOCATION,
},
.emit = brw_upload_cs_state
@@ -340,7 +341,8 @@ gen7_upload_cs_push_constants(struct brw_context *brw)
const struct brw_tracked_state gen7_cs_push_constants = {
.dirty = {
.mesa = _NEW_PROGRAM_CONSTANTS,
- .brw = BRW_NEW_COMPUTE_PROGRAM |
+ .brw = BRW_NEW_BATCH |
+ BRW_NEW_COMPUTE_PROGRAM |
BRW_NEW_PUSH_CONSTANT_ALLOCATION,
},
.emit = gen7_upload_cs_push_constants,