Mesa (master): mesa: pass indirect buffer to sw primitive restart

Chris Forbes chrisf at kemper.freedesktop.org
Mon Nov 25 09:01:33 UTC 2013


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

Author: Chris Forbes <chrisf at ijw.co.nz>
Date:   Sun Oct 13 20:56:42 2013 +1300

mesa: pass indirect buffer to sw primitive restart

Reviewed-by: Kenneth Graunke <kenneth at whitecape.org>
Reviewed-by: Eric Anholt <eric at anholt.net>

---

 src/mesa/drivers/dri/i965/brw_primitive_restart.c |    2 +-
 src/mesa/vbo/vbo.h                                |    3 ++-
 src/mesa/vbo/vbo_exec_array.c                     |    2 +-
 src/mesa/vbo/vbo_primitive_restart.c              |    3 ++-
 4 files changed, 6 insertions(+), 4 deletions(-)

diff --git a/src/mesa/drivers/dri/i965/brw_primitive_restart.c b/src/mesa/drivers/dri/i965/brw_primitive_restart.c
index 3748e74..f014b60 100644
--- a/src/mesa/drivers/dri/i965/brw_primitive_restart.c
+++ b/src/mesa/drivers/dri/i965/brw_primitive_restart.c
@@ -176,7 +176,7 @@ brw_handle_primitive_restart(struct gl_context *ctx,
       /* Not all the primitive draw modes are supported by the cut index,
        * so take the software path
        */
-      vbo_sw_primitive_restart(ctx, prims, nr_prims, ib);
+      vbo_sw_primitive_restart(ctx, prims, nr_prims, ib, indirect);
    }
 
    brw->prim_restart.in_progress = false;
diff --git a/src/mesa/vbo/vbo.h b/src/mesa/vbo/vbo.h
index f58fa0b..6e1a4aa 100644
--- a/src/mesa/vbo/vbo.h
+++ b/src/mesa/vbo/vbo.h
@@ -186,7 +186,8 @@ void
 vbo_sw_primitive_restart(struct gl_context *ctx,
                          const struct _mesa_prim *prim,
                          GLuint nr_prims,
-                         const struct _mesa_index_buffer *ib);
+                         const struct _mesa_index_buffer *ib,
+                         struct gl_buffer_object *indirect);
 
 void GLAPIENTRY
 _es_Color4f(GLfloat r, GLfloat g, GLfloat b, GLfloat a);
diff --git a/src/mesa/vbo/vbo_exec_array.c b/src/mesa/vbo/vbo_exec_array.c
index db7da69..8152fa1 100644
--- a/src/mesa/vbo/vbo_exec_array.c
+++ b/src/mesa/vbo/vbo_exec_array.c
@@ -579,7 +579,7 @@ vbo_handle_primitive_restart(struct gl_context *ctx,
        ctx->Const.PrimitiveRestartInSoftware &&
        ctx->Array._PrimitiveRestart) {
       /* Handle primitive restart in software */
-      vbo_sw_primitive_restart(ctx, prim, nr_prims, ib);
+      vbo_sw_primitive_restart(ctx, prim, nr_prims, ib, NULL);
    } else {
       /* Call driver directly for draw_prims */
       vbo->draw_prims(ctx, prim, nr_prims, ib,
diff --git a/src/mesa/vbo/vbo_primitive_restart.c b/src/mesa/vbo/vbo_primitive_restart.c
index e5c93ac..75e760f 100644
--- a/src/mesa/vbo/vbo_primitive_restart.c
+++ b/src/mesa/vbo/vbo_primitive_restart.c
@@ -163,7 +163,8 @@ void
 vbo_sw_primitive_restart(struct gl_context *ctx,
                          const struct _mesa_prim *prims,
                          GLuint nr_prims,
-                         const struct _mesa_index_buffer *ib)
+                         const struct _mesa_index_buffer *ib,
+                         struct gl_buffer_object *indirect)
 {
    GLuint prim_num;
    struct sub_primitive *sub_prims;




More information about the mesa-commit mailing list