summaryrefslogtreecommitdiffstats
path: root/src/gallium/drivers/r300/r300_render.c
diff options
context:
space:
mode:
authorDave Airlie <[email protected]>2010-01-23 19:35:42 +1000
committerDave Airlie <[email protected]>2010-01-23 19:35:42 +1000
commit76bc66b664c7e135aa9c06cedd94ee1961d68c70 (patch)
tree4867fa9e10d00409842c03cf8e5f1471fa99fbdf /src/gallium/drivers/r300/r300_render.c
parent9a62f0ce3bffd37bad101552b57347e0855d1df1 (diff)
r300g: fix up buffer emission ordering.
This fixes the code space checking VBOs, then resetting the space list and space checking other buffers. it fixes demos/ipers Signed-off-by: Dave Airlie <[email protected]>
Diffstat (limited to 'src/gallium/drivers/r300/r300_render.c')
-rw-r--r--src/gallium/drivers/r300/r300_render.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/src/gallium/drivers/r300/r300_render.c b/src/gallium/drivers/r300/r300_render.c
index 90de062bcda..68abfbe208b 100644
--- a/src/gallium/drivers/r300/r300_render.c
+++ b/src/gallium/drivers/r300/r300_render.c
@@ -311,6 +311,8 @@ void r300_draw_range_elements(struct pipe_context* pipe,
indexSize = 2;
}
+ r300_emit_buffer_validate(r300->winsys);
+
if (!r300->winsys->add_buffer(r300->winsys, indexBuffer,
RADEON_GEM_DOMAIN_GTT, 0)) {
goto cleanup;
@@ -361,6 +363,8 @@ void r300_draw_arrays(struct pipe_context* pipe, unsigned mode,
r300_update_derived_state(r300);
+ r300_emit_buffer_validate(r300);
+
if (!r300_setup_vertex_buffers(r300)) {
return;
}