From e4e5acc833d607bdf5cdd728f8a8c5064ea38838 Mon Sep 17 00:00:00 2001 From: Corbin Simpson Date: Tue, 12 Jan 2010 22:22:22 -0800 Subject: [PATCH] r300g: Lower the immd mode threshold. --- src/gallium/drivers/r300/r300_render.c | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/src/gallium/drivers/r300/r300_render.c b/src/gallium/drivers/r300/r300_render.c index d28931f0376..2edb9c6030c 100644 --- a/src/gallium/drivers/r300/r300_render.c +++ b/src/gallium/drivers/r300/r300_render.c @@ -138,9 +138,14 @@ static void r300_emit_draw_immediate(struct r300_context *r300, OUT_CS_PKT3(R300_PACKET3_3D_DRAW_IMMD_2, count * vertex_size); OUT_CS(R300_VAP_VF_CNTL__PRIM_WALK_VERTEX_EMBEDDED | (count << 16) | r300_translate_primitive(mode)); + //debug_printf("r300: Immd %d verts, %d attrs\n", count, vertex_size); for (i = 0; i < count * vertex_size; i++) { - OUT_CS(*map); - map++; + if (i % vertex_size == 0) { + //debug_printf("r300: -- vert --\n"); + } + //debug_printf("r300: 0x%08x\n", *map); + OUT_CS(*map); + map++; } END_CS; @@ -320,7 +325,7 @@ void r300_draw_arrays(struct pipe_context* pipe, unsigned mode, r300_emit_dirty_state(r300); - if (count < 10 && r300->vertex_buffer_count == 1) { + if (count <= 4 && r300->vertex_buffer_count == 1) { r300_emit_draw_immediate(r300, mode, start, count); } else { r300_emit_aos(r300, start); -- 2.30.2