Revert "i965: Reinstate max-index paranoia"
authorChris Wilson <chris@chris-wilson.co.uk>
Tue, 12 Apr 2011 18:13:22 +0000 (19:13 +0100)
committerChris Wilson <chris@chris-wilson.co.uk>
Tue, 12 Apr 2011 18:14:27 +0000 (19:14 +0100)
This reverts commit b4cbd2b312d53a50603e2cda925711bc9def4517.

It looked like a safe sanity check. It missed the issue of the start of
the buffer not being at 0, but even that was not enough to explain why
setting the max vertex index caused glyphs to be dropped from the game
'Achron'.

Instead, the issue appears to be related to the use of the vertex bias
and so we would need to re-emit the max-index every time we adjusted the
bias, so re-emitting the relocations and defeating the original
optimisation.

Reported-and-tested-by: Thomas Jones <thomas.jones@utoronto.ca>
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=35163
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/mesa/drivers/dri/i965/brw_draw_upload.c

index f1d00693168932d89915db3c21c933f69ffa155b..9389eb6733f29dcd5a48eb02321b3dc0a72bfed1 100644 (file)
@@ -575,7 +575,7 @@ static void brw_emit_vertices(struct brw_context *brw)
         if (intel->gen >= 5) {
            OUT_RELOC(buffer->bo, I915_GEM_DOMAIN_VERTEX, 0, buffer->bo->size - 1);
         } else
-           OUT_BATCH(buffer->bo->size / buffer->stride);
+           OUT_BATCH(0);
         OUT_BATCH(0); /* Instance data step rate */
 
         brw->vb.current_buffers[i].handle = buffer->bo->handle;