From 8fb0ecd0cf4a4d672c0744abb4a9f030b3a17527 Mon Sep 17 00:00:00 2001 From: Jakob Bornecrantz Date: Tue, 22 Feb 2011 23:12:08 +0000 Subject: i915g: Lazy emit dynamic state --- src/gallium/drivers/i915/i915_state_emit.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) (limited to 'src/gallium/drivers/i915/i915_state_emit.c') diff --git a/src/gallium/drivers/i915/i915_state_emit.c b/src/gallium/drivers/i915/i915_state_emit.c index fcbe299ec2..509d487b49 100644 --- a/src/gallium/drivers/i915/i915_state_emit.c +++ b/src/gallium/drivers/i915/i915_state_emit.c @@ -223,7 +223,8 @@ i915_emit_hardware_state(struct i915_context *i915 ) { int i; for (i = 0; i < I915_MAX_DYNAMIC; i++) { - OUT_BATCH(i915->current.dynamic[i]); + if (i915->dynamic_dirty & (1 << i)); + OUT_BATCH(i915->current.dynamic[i]); } } #endif @@ -444,4 +445,5 @@ i915_emit_hardware_state(struct i915_context *i915 ) i915->hardware_dirty = 0; i915->immediate_dirty = 0; + i915->dynamic_dirty = 0; } -- cgit v1.2.3