summaryrefslogtreecommitdiffstats
path: root/src/mesa/drivers/dri/i965/intel_buffers.c
diff options
context:
space:
mode:
authorKeith Whitwell <keith@tungstengraphics.com>2006-10-23 08:43:26 +0000
committerKeith Whitwell <keith@tungstengraphics.com>2006-10-23 08:43:26 +0000
commit759facb4d87843f6368fad9c5f20a5b1b3d95055 (patch)
tree434ca5e820db551267789c3de8c9a3a155c9e021 /src/mesa/drivers/dri/i965/intel_buffers.c
parentb9786cfaae3bd58d8e487846cfa9c251e1246abd (diff)
downloadexternal_mesa3d-759facb4d87843f6368fad9c5f20a5b1b3d95055.zip
external_mesa3d-759facb4d87843f6368fad9c5f20a5b1b3d95055.tar.gz
external_mesa3d-759facb4d87843f6368fad9c5f20a5b1b3d95055.tar.bz2
Emit cliprects in the userspace driver as required, rather than
passing them to the kernel. This works because all drawing commands in the 965 driver are emitted with the lock held and the batchbuffer is always flushed prior to releasing the lock. This allows multiple cliprects to be dealt with, without replaying entire batchbuffers and redundantly re-emitting state.
Diffstat (limited to 'src/mesa/drivers/dri/i965/intel_buffers.c')
-rw-r--r--src/mesa/drivers/dri/i965/intel_buffers.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/src/mesa/drivers/dri/i965/intel_buffers.c b/src/mesa/drivers/dri/i965/intel_buffers.c
index 9c98571..dc5b9c0 100644
--- a/src/mesa/drivers/dri/i965/intel_buffers.c
+++ b/src/mesa/drivers/dri/i965/intel_buffers.c
@@ -210,6 +210,12 @@ void intelWindowMoved( struct intel_context *intel )
intel->NewGLState |= _NEW_SCISSOR;
}
+
+ /* This works because the lock is always grabbed before emitting
+ * commands and commands are always flushed prior to releasing
+ * the lock.
+ */
+ intel->NewGLState |= _NEW_WINDOW_POS;
}