Mesa (master): r300g: Lower the immd mode threshold.

Corbin Simpson csimpson at kemper.freedesktop.org
Wed Jan 13 06:28:21 UTC 2010


Module: Mesa
Branch: master
Commit: e4e5acc833d607bdf5cdd728f8a8c5064ea38838
URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=e4e5acc833d607bdf5cdd728f8a8c5064ea38838

Author: Corbin Simpson <MostAwesomeDude at gmail.com>
Date:   Tue Jan 12 22:22:22 2010 -0800

r300g: Lower the immd mode threshold.

---

 src/gallium/drivers/r300/r300_render.c |   11 ++++++++---
 1 files changed, 8 insertions(+), 3 deletions(-)

diff --git a/src/gallium/drivers/r300/r300_render.c b/src/gallium/drivers/r300/r300_render.c
index d28931f..2edb9c6 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);




More information about the mesa-commit mailing list