summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/mesa/drivers/dri/i965/brw_wm_state.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/src/mesa/drivers/dri/i965/brw_wm_state.c b/src/mesa/drivers/dri/i965/brw_wm_state.c
index 02443c50d0..c273525102 100644
--- a/src/mesa/drivers/dri/i965/brw_wm_state.c
+++ b/src/mesa/drivers/dri/i965/brw_wm_state.c
@@ -63,6 +63,8 @@ wm_unit_populate_key(struct brw_context *brw, struct brw_wm_unit_key *key)
const struct gl_fragment_program *fp = brw->fragment_program;
struct intel_context *intel = &brw->intel;
+ memset(key, 0, sizeof(*key));
+
if (INTEL_DEBUG & DEBUG_SINGLE_THREAD)
key->max_threads = 1;
else
@@ -71,12 +73,16 @@ wm_unit_populate_key(struct brw_context *brw, struct brw_wm_unit_key *key)
/* CACHE_NEW_WM_PROG */
key->total_grf = brw->wm.prog_data->total_grf;
key->urb_entry_read_length = brw->wm.prog_data->urb_read_length;
+ key->curb_entry_read_length = brw->wm.prog_data->curb_read_length;
key->dispatch_grf_start_reg = brw->wm.prog_data->first_curbe_grf;
key->total_scratch = ALIGN(brw->wm.prog_data->total_scratch, 1024);
/* BRW_NEW_URB_FENCE */
key->urb_size = brw->urb.vsize;
+ /* BRW_NEW_CURBE_OFFSETS */
+ key->curbe_offset = brw->curbe.wm_start;
+
/* CACHE_NEW_SURFACE */
key->nr_surfaces = brw->wm.nr_surfaces;