diff options
author | Eric Anholt <[email protected]> | 2010-09-21 10:53:34 -0700 |
---|---|---|
committer | Eric Anholt <[email protected]> | 2010-09-22 13:45:50 -0700 |
commit | 8f4c99a9af876494cb9a0f4e804a7b0ba7f1db90 (patch) | |
tree | 01f54ae8dcc8bc540d65727a2393640a44a7fc33 | |
parent | 5285100502ad991ba5b012f499726c2dd46a8fe4 (diff) |
i965: Also enable CC statistics when doing OQs.
This is required by the spec, so respect that.
(oh, and it was required to actually fix occlusion-query-discard,
though I didn't know at the time of the commit since o-q-discard was
hanging the GPU)
(cherry picked from commit 4a0bc4716db7bbcbcd65c0f993704733f47d41f7)
-rw-r--r-- | src/mesa/drivers/dri/i965/brw_cc.c | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/src/mesa/drivers/dri/i965/brw_cc.c b/src/mesa/drivers/dri/i965/brw_cc.c index cfce5d31405..8430ee0cfa0 100644 --- a/src/mesa/drivers/dri/i965/brw_cc.c +++ b/src/mesa/drivers/dri/i965/brw_cc.c @@ -90,6 +90,7 @@ static void prepare_cc_unit(struct brw_context *brw) */ static void upload_cc_unit(struct brw_context *brw) { + struct intel_context *intel = &brw->intel; GLcontext *ctx = &brw->intel.ctx; struct brw_cc_unit_state cc; void *map; @@ -203,12 +204,12 @@ static void upload_cc_unit(struct brw_context *brw) cc.cc2.depth_write_enable = ctx->Depth.Mask; } + if (intel->stats_wm || (INTEL_DEBUG & DEBUG_STATS)) + cc.cc5.statistics_enable = 1; + /* CACHE_NEW_CC_VP */ cc.cc4.cc_viewport_state_offset = brw->cc.vp_bo->offset >> 5; /* reloc */ - if (INTEL_DEBUG & DEBUG_STATS) - cc.cc5.statistics_enable = 1; - map = brw_state_batch(brw, sizeof(cc), 64, &brw->cc.state_bo, &brw->cc.state_offset); memcpy(map, &cc, sizeof(cc)); |