i965: Don't bother flushing the batch if it doesn't ref our mt to map.
authorEric Anholt <eric@anholt.net>
Wed, 23 Apr 2014 20:45:22 +0000 (13:45 -0700)
committerEric Anholt <eric@anholt.net>
Sat, 26 Apr 2014 01:19:55 +0000 (18:19 -0700)
-1.1372% +/- 0.858033% effect on cairo runtime on glamor (n=175).

Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
src/mesa/drivers/dri/i965/intel_mipmap_tree.c

index 59700ed8b1705191c409f0646f4dff2139634e24..c24cfcea4bc5b9319d46c212edd838337fad264f 100644 (file)
@@ -1614,7 +1614,8 @@ intel_miptree_map_raw(struct brw_context *brw, struct intel_mipmap_tree *mt)
 
    drm_intel_bo *bo = mt->region->bo;
 
-   intel_batchbuffer_flush(brw);
+   if (drm_intel_bo_references(brw->batch.bo, bo))
+      intel_batchbuffer_flush(brw);
 
    if (mt->region->tiling != I915_TILING_NONE)
       brw_bo_map_gtt(brw, bo, "miptree");