On 08/20/2013 11:30 AM, Paul Berry wrote:
The arguments to brw_urb_WRITE() were getting pretty unwieldy, and we
have to add more flags to support geometry shaders anyhow.

Also plumb these flags through brw_clip_emit_vue(),
brw_set_urb_message(), and the vec4_instruction class.
---
  src/mesa/drivers/dri/i965/brw_clip.h           |  3 +-
  src/mesa/drivers/dri/i965/brw_clip_line.c      |  4 +--
  src/mesa/drivers/dri/i965/brw_clip_tri.c       |  6 ++--
  src/mesa/drivers/dri/i965/brw_clip_unfilled.c  |  6 ++--
  src/mesa/drivers/dri/i965/brw_clip_util.c      | 19 +++++-------
  src/mesa/drivers/dri/i965/brw_eu.h             | 42 +++++++++++++++++++++++---
  src/mesa/drivers/dri/i965/brw_eu_emit.c        | 32 ++++++++------------
  src/mesa/drivers/dri/i965/brw_gs_emit.c        |  6 ++--
  src/mesa/drivers/dri/i965/brw_sf_emit.c        | 20 +++---------
  src/mesa/drivers/dri/i965/brw_vec4.h           |  2 +-
  src/mesa/drivers/dri/i965/brw_vec4_emit.cpp    |  5 +--
  src/mesa/drivers/dri/i965/brw_vec4_visitor.cpp |  2 +-
  12 files changed, 76 insertions(+), 71 deletions(-)

diff --git a/src/mesa/drivers/dri/i965/brw_clip.h 
b/src/mesa/drivers/dri/i965/brw_clip.h
index f26d75d..5af0ad3 100644
--- a/src/mesa/drivers/dri/i965/brw_clip.h
+++ b/src/mesa/drivers/dri/i965/brw_clip.h
@@ -173,8 +173,7 @@ void brw_clip_init_planes( struct brw_clip_compile *c );

  void brw_clip_emit_vue(struct brw_clip_compile *c,
                       struct brw_indirect vert,
-                      bool allocate,
-                      bool eot,
+                       unsigned flags,
                       GLuint header);

  void brw_clip_kill_thread(struct brw_clip_compile *c);
diff --git a/src/mesa/drivers/dri/i965/brw_clip_line.c 
b/src/mesa/drivers/dri/i965/brw_clip_line.c
index 8466b1c..5238598 100644
--- a/src/mesa/drivers/dri/i965/brw_clip_line.c
+++ b/src/mesa/drivers/dri/i965/brw_clip_line.c
@@ -282,10 +282,10 @@ static void clip_and_emit_line( struct brw_clip_compile 
*c )
        brw_clip_interp_vertex(c, newvtx0, vtx0, vtx1, c->reg.t0, false);
        brw_clip_interp_vertex(c, newvtx1, vtx1, vtx0, c->reg.t1, false);

-      brw_clip_emit_vue(c, newvtx0, 1, 0,
+      brw_clip_emit_vue(c, newvtx0, BRW_URB_WRITE_ALLOCATE_COMPLETE,

For anyone reviewing: the reason this is ALLOCATE_COMPLETE rather than ALLOCATE is because brw_clip_emit_vue always used to set "complete", and now is relying on the callers to pass that as part of flags.
_______________________________________________
mesa-dev mailing list
mesa-dev@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/mesa-dev

Reply via email to