Mesa (master): v3d: Drop foreach_bit() macro

GitLab Mirror gitlab-mirror at kemper.freedesktop.org
Wed Feb 24 17:40:27 UTC 2021


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

Author: Rob Clark <robdclark at chromium.org>
Date:   Mon Feb 22 07:57:49 2021 -0800

v3d: Drop foreach_bit() macro

Now that we have a global one.

Signed-off-by: Rob Clark <robdclark at chromium.org>

Reviewed-By: Mike Blumenkrantz <michael.blumenkrantz at gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/9191>

---

 src/gallium/drivers/v3d/v3d_context.h |  3 ---
 src/gallium/drivers/v3d/v3dx_draw.c   | 22 +++++++++++-----------
 2 files changed, 11 insertions(+), 14 deletions(-)

diff --git a/src/gallium/drivers/v3d/v3d_context.h b/src/gallium/drivers/v3d/v3d_context.h
index 89b70fcc0e1..6a0dd9aa1fb 100644
--- a/src/gallium/drivers/v3d/v3d_context.h
+++ b/src/gallium/drivers/v3d/v3d_context.h
@@ -585,9 +585,6 @@ struct v3d_blend_state {
                 pipe_debug_message(&v3d->debug, PERF_INFO, __VA_ARGS__);    \
 } while (0)
 
-#define foreach_bit(b, mask)                                            \
-        for (uint32_t _m = (mask), b; _m && ({(b) = u_bit_scan(&_m); 1;});)
-
 static inline struct v3d_context *
 v3d_context(struct pipe_context *pcontext)
 {
diff --git a/src/gallium/drivers/v3d/v3dx_draw.c b/src/gallium/drivers/v3d/v3dx_draw.c
index 0b63b1b43c8..0b76ef89449 100644
--- a/src/gallium/drivers/v3d/v3dx_draw.c
+++ b/src/gallium/drivers/v3d/v3dx_draw.c
@@ -184,7 +184,7 @@ v3d_predraw_check_stage_inputs(struct pipe_context *pctx,
         }
 
         /* Flush writes to UBOs. */
-        foreach_bit(i, v3d->constbuf[s].enabled_mask) {
+        u_foreach_bit(i, v3d->constbuf[s].enabled_mask) {
                 struct pipe_constant_buffer *cb = &v3d->constbuf[s].cb[i];
                 if (cb->buffer) {
                         v3d_flush_jobs_writing_resource(v3d, cb->buffer,
@@ -194,7 +194,7 @@ v3d_predraw_check_stage_inputs(struct pipe_context *pctx,
         }
 
         /* Flush reads/writes to our SSBOs */
-        foreach_bit(i, v3d->ssbo[s].enabled_mask) {
+        u_foreach_bit(i, v3d->ssbo[s].enabled_mask) {
                 struct pipe_shader_buffer *sb = &v3d->ssbo[s].sb[i];
                 if (sb->buffer) {
                         v3d_flush_jobs_reading_resource(v3d, sb->buffer,
@@ -204,7 +204,7 @@ v3d_predraw_check_stage_inputs(struct pipe_context *pctx,
         }
 
         /* Flush reads/writes to our image views */
-        foreach_bit(i, v3d->shaderimg[s].enabled_mask) {
+        u_foreach_bit(i, v3d->shaderimg[s].enabled_mask) {
                 struct v3d_image_view *view = &v3d->shaderimg[s].si[i];
 
                 v3d_flush_jobs_reading_resource(v3d, view->base.resource,
@@ -214,7 +214,7 @@ v3d_predraw_check_stage_inputs(struct pipe_context *pctx,
 
         /* Flush writes to our vertex buffers (i.e. from transform feedback) */
         if (s == PIPE_SHADER_VERTEX) {
-                foreach_bit(i, v3d->vertexbuf.enabled_mask) {
+                u_foreach_bit(i, v3d->vertexbuf.enabled_mask) {
                         struct pipe_vertex_buffer *vb = &v3d->vertexbuf.vb[i];
 
                         v3d_flush_jobs_writing_resource(v3d, vb->buffer.resource,
@@ -259,7 +259,7 @@ v3d_state_reads_resource(struct v3d_context *v3d,
 
         /* Vertex buffers */
         if (s == PIPE_SHADER_VERTEX) {
-                foreach_bit(i, v3d->vertexbuf.enabled_mask) {
+                u_foreach_bit(i, v3d->vertexbuf.enabled_mask) {
                         struct pipe_vertex_buffer *vb = &v3d->vertexbuf.vb[i];
                         if (!vb->buffer.resource)
                                 continue;
@@ -272,7 +272,7 @@ v3d_state_reads_resource(struct v3d_context *v3d,
         }
 
         /* Constant buffers */
-        foreach_bit(i, v3d->constbuf[s].enabled_mask) {
+        u_foreach_bit(i, v3d->constbuf[s].enabled_mask) {
                 struct pipe_constant_buffer *cb = &v3d->constbuf[s].cb[i];
                 if (!cb->buffer)
                         continue;
@@ -283,7 +283,7 @@ v3d_state_reads_resource(struct v3d_context *v3d,
         }
 
         /* Shader storage buffers */
-        foreach_bit(i, v3d->ssbo[s].enabled_mask) {
+        u_foreach_bit(i, v3d->ssbo[s].enabled_mask) {
                 struct pipe_shader_buffer *sb = &v3d->ssbo[s].sb[i];
                 if (!sb->buffer)
                         continue;
@@ -1198,13 +1198,13 @@ v3d_draw_vbo(struct pipe_context *pctx, const struct pipe_draw_info *info,
          * which ones are read vs written, so just assume the worst.
          */
         for (int s = 0; s < PIPE_SHADER_COMPUTE; s++) {
-                foreach_bit(i, v3d->ssbo[s].enabled_mask) {
+                u_foreach_bit(i, v3d->ssbo[s].enabled_mask) {
                         v3d_job_add_write_resource(job,
                                                    v3d->ssbo[s].sb[i].buffer);
                         job->tmu_dirty_rcl = true;
                 }
 
-                foreach_bit(i, v3d->shaderimg[s].enabled_mask) {
+                u_foreach_bit(i, v3d->shaderimg[s].enabled_mask) {
                         v3d_job_add_write_resource(job,
                                                    v3d->shaderimg[s].si[i].base.resource);
                         job->tmu_dirty_rcl = true;
@@ -1616,14 +1616,14 @@ v3d_launch_grid(struct pipe_context *pctx, const struct pipe_grid_info *info)
         /* Mark SSBOs as being written.. we don't actually know which ones are
          * read vs written, so just assume the worst
          */
-        foreach_bit(i, v3d->ssbo[PIPE_SHADER_COMPUTE].enabled_mask) {
+        u_foreach_bit(i, v3d->ssbo[PIPE_SHADER_COMPUTE].enabled_mask) {
                 struct v3d_resource *rsc = v3d_resource(
                         v3d->ssbo[PIPE_SHADER_COMPUTE].sb[i].buffer);
                 rsc->writes++;
                 rsc->compute_written = true;
         }
 
-        foreach_bit(i, v3d->shaderimg[PIPE_SHADER_COMPUTE].enabled_mask) {
+        u_foreach_bit(i, v3d->shaderimg[PIPE_SHADER_COMPUTE].enabled_mask) {
                 struct v3d_resource *rsc = v3d_resource(
                         v3d->shaderimg[PIPE_SHADER_COMPUTE].si[i].base.resource);
                 rsc->writes++;



More information about the mesa-commit mailing list