summaryrefslogtreecommitdiffstats
path: root/src/mesa/drivers/dri/i965/intel_buffer_objects.c
diff options
context:
space:
mode:
authorChris Forbes <chrisf@ijw.co.nz>2014-10-01 19:29:25 +1300
committerChris Forbes <chrisf@ijw.co.nz>2014-10-16 22:31:43 +1300
commit1655f6fc61a2502d8c1fb87344f5e8b25bff8081 (patch)
treed6751294f9090e6a49b5d2e4da02ffbffa99df05 /src/mesa/drivers/dri/i965/intel_buffer_objects.c
parentc442745981ff307c7d45db4f059728912cda8220 (diff)
downloadexternal_mesa3d-1655f6fc61a2502d8c1fb87344f5e8b25bff8081.zip
external_mesa3d-1655f6fc61a2502d8c1fb87344f5e8b25bff8081.tar.gz
external_mesa3d-1655f6fc61a2502d8c1fb87344f5e8b25bff8081.tar.bz2
i965: Dirty state in BO reallocation based on usage history
Signed-off-by: Chris Forbes <chrisf@ijw.co.nz> Reviewed-by: Anuj Phogat <anuj.phogat@gmail.com>
Diffstat (limited to 'src/mesa/drivers/dri/i965/intel_buffer_objects.c')
-rw-r--r--src/mesa/drivers/dri/i965/intel_buffer_objects.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/src/mesa/drivers/dri/i965/intel_buffer_objects.c b/src/mesa/drivers/dri/i965/intel_buffer_objects.c
index 82e0744..9298e24 100644
--- a/src/mesa/drivers/dri/i965/intel_buffer_objects.c
+++ b/src/mesa/drivers/dri/i965/intel_buffer_objects.c
@@ -110,7 +110,10 @@ intel_bufferobj_alloc_buffer(struct brw_context *brw,
/* the buffer might be bound as a uniform buffer, need to update it
*/
- brw->state.dirty.brw |= BRW_NEW_UNIFORM_BUFFER;
+ if (intel_obj->Base.UsageHistory & USAGE_UNIFORM_BUFFER)
+ brw->state.dirty.brw |= BRW_NEW_UNIFORM_BUFFER;
+ if (intel_obj->Base.UsageHistory & USAGE_TEXTURE_BUFFER)
+ brw->state.dirty.brw |= BRW_NEW_TEXTURE_BUFFER;
intel_bufferobj_mark_inactive(intel_obj);
}