From 02091e0f9c041250ea5abea6a5aa739d8e19c852 Mon Sep 17 00:00:00 2001 From: José Fonseca Date: Mon, 29 Oct 2007 10:25:02 +0000 Subject: Reserve the accurate number of dwords in the batch buffer. --- src/mesa/pipe/i915simple/i915_prim_emit.c | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) (limited to 'src/mesa') diff --git a/src/mesa/pipe/i915simple/i915_prim_emit.c b/src/mesa/pipe/i915simple/i915_prim_emit.c index fcf3c99cac..40e33e6e09 100644 --- a/src/mesa/pipe/i915simple/i915_prim_emit.c +++ b/src/mesa/pipe/i915simple/i915_prim_emit.c @@ -134,7 +134,7 @@ emit_prim( struct draw_stage *stage, if (i915->hardware_dirty) i915_emit_hardware_state( i915 ); - ptr = BEGIN_BATCH( nr * vertex_size, 0 ); + ptr = BEGIN_BATCH( 1 + nr * vertex_size / 4, 0 ); if (ptr == 0) { FLUSH_BATCH(); @@ -143,7 +143,7 @@ emit_prim( struct draw_stage *stage, i915_update_derived( i915 ); i915_emit_hardware_state( i915 ); - ptr = BEGIN_BATCH( nr * vertex_size, 0 ); + ptr = BEGIN_BATCH( 1 + nr * vertex_size / 4, 0 ); if (ptr == 0) { assert(0); return; @@ -157,10 +157,8 @@ emit_prim( struct draw_stage *stage, hwprim | ((4 + vertex_size * nr)/4 - 2)); - for (i = 0; i < nr; i++) { + for (i = 0; i < nr; i++) emit_hw_vertex(i915, prim->v[i]); - ptr += vertex_size / sizeof(int); - } } -- cgit v1.2.3