[Mesa-dev] [PATCH 4/4] nvc0: minor cleanups in stream output handling

Emil Velikov emil.l.velikov at gmail.com
Wed Mar 12 10:24:19 PDT 2014


Constify the offsets parameter to silence gcc warning 'assignment
from incompatible pointer type' due to function prototype miss-match.

Use a boolean changed as a shorthand for target != current_target.

Signed-off-by: Emil Velikov <emil.l.velikov at gmail.com>
---
 src/gallium/drivers/nouveau/nvc0/nvc0_state.c | 9 +++++----
 1 file changed, 5 insertions(+), 4 deletions(-)

diff --git a/src/gallium/drivers/nouveau/nvc0/nvc0_state.c b/src/gallium/drivers/nouveau/nvc0/nvc0_state.c
index 88dbaa1..05027a1 100644
--- a/src/gallium/drivers/nouveau/nvc0/nvc0_state.c
+++ b/src/gallium/drivers/nouveau/nvc0/nvc0_state.c
@@ -1031,7 +1031,7 @@ static void
 nvc0_set_transform_feedback_targets(struct pipe_context *pipe,
                                     unsigned num_targets,
                                     struct pipe_stream_output_target **targets,
-                                    unsigned *offsets)
+                                    const unsigned *offsets)
 {
    struct nvc0_context *nvc0 = nvc0_context(pipe);
    unsigned i;
@@ -1040,12 +1040,13 @@ nvc0_set_transform_feedback_targets(struct pipe_context *pipe,
    assert(num_targets <= 4);
 
    for (i = 0; i < num_targets; ++i) {
-      boolean append = (offsets[i] == ((unsigned)-1));
-      if (nvc0->tfbbuf[i] == targets[i] && append)
+      const boolean changed = nvc0->tfbbuf[i] != targets[i];
+      const boolean append = (offsets[i] == ((unsigned)-1));
+      if (!changed && append)
          continue;
       nvc0->tfbbuf_dirty |= 1 << i;
 
-      if (nvc0->tfbbuf[i] && nvc0->tfbbuf[i] != targets[i])
+      if (nvc0->tfbbuf[i] && changed)
          nvc0_so_target_save_offset(pipe, nvc0->tfbbuf[i], i, &serialize);
 
       if (targets[i] && !append)
-- 
1.9.0



More information about the mesa-dev mailing list