Mesa (main): zink: flatten descriptor_refs_dirty into BATCH_CHANGED template
GitLab Mirror
gitlab-mirror at kemper.freedesktop.org
Tue Jul 20 00:37:34 UTC 2021
Module: Mesa
Branch: main
Commit: 405d45f00963b142d56ab3d2c9c1e5405cbace2d
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=405d45f00963b142d56ab3d2c9c1e5405cbace2d
Author: Mike Blumenkrantz <michael.blumenkrantz at gmail.com>
Date: Tue May 11 16:20:09 2021 -0400
zink: flatten descriptor_refs_dirty into BATCH_CHANGED template
that's all this is now
Reviewed-by: Dave Airlie <airlied at redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/11964>
---
src/gallium/drivers/zink/zink_context.c | 2 --
src/gallium/drivers/zink/zink_context.h | 1 -
src/gallium/drivers/zink/zink_draw.cpp | 4 ++--
3 files changed, 2 insertions(+), 5 deletions(-)
diff --git a/src/gallium/drivers/zink/zink_context.c b/src/gallium/drivers/zink/zink_context.c
index 7b87a14df1a..600c26bb03c 100644
--- a/src/gallium/drivers/zink/zink_context.c
+++ b/src/gallium/drivers/zink/zink_context.c
@@ -1853,7 +1853,6 @@ zink_update_descriptor_refs(struct zink_context *ctx, bool compute)
if (ctx->curr_program)
zink_batch_reference_program(batch, &ctx->curr_program->base);
}
- ctx->descriptor_refs_dirty[compute] = false;
}
static void
@@ -1876,7 +1875,6 @@ flush_batch(struct zink_context *ctx, bool sync)
zink_start_batch(ctx, batch);
if (zink_screen(ctx->base.screen)->info.have_EXT_transform_feedback && ctx->num_so_targets)
ctx->dirty_so_targets = true;
- ctx->descriptor_refs_dirty[0] = ctx->descriptor_refs_dirty[1] = true;
ctx->pipeline_changed[0] = ctx->pipeline_changed[1] = true;
zink_select_draw_vbo(ctx);
zink_select_launch_grid(ctx);
diff --git a/src/gallium/drivers/zink/zink_context.h b/src/gallium/drivers/zink/zink_context.h
index 2202b9ee6dc..ded384a32dc 100644
--- a/src/gallium/drivers/zink/zink_context.h
+++ b/src/gallium/drivers/zink/zink_context.h
@@ -288,7 +288,6 @@ struct zink_context {
struct zink_descriptor_surface sampler_surfaces[PIPE_SHADER_TYPES][PIPE_MAX_SAMPLERS];
struct zink_descriptor_surface image_surfaces[PIPE_SHADER_TYPES][PIPE_MAX_SHADER_IMAGES];
} di;
- bool descriptor_refs_dirty[2];
struct set *need_barriers[2]; //gfx, compute
struct set update_barriers[2][2]; //[gfx, compute][current, next]
uint8_t barrier_set_idx[2];
diff --git a/src/gallium/drivers/zink/zink_draw.cpp b/src/gallium/drivers/zink/zink_draw.cpp
index 253a7dfeb65..30b8c6d7d34 100644
--- a/src/gallium/drivers/zink/zink_draw.cpp
+++ b/src/gallium/drivers/zink/zink_draw.cpp
@@ -491,7 +491,7 @@ zink_draw_vbo(struct pipe_context *pctx,
barrier_draw_buffers(ctx, dinfo, dindirect, index_buffer);
- if (ctx->descriptor_refs_dirty[0])
+ if (BATCH_CHANGED)
zink_update_descriptor_refs(ctx, false);
batch = zink_batch_rp(ctx);
@@ -776,7 +776,7 @@ zink_launch_grid(struct pipe_context *pctx, const struct pipe_grid_info *info)
VkPipeline pipeline = zink_get_compute_pipeline(screen, ctx->curr_compute,
&ctx->compute_pipeline_state);
- if (ctx->descriptor_refs_dirty[1])
+ if (BATCH_CHANGED)
zink_update_descriptor_refs(ctx, true);
if (prev_pipeline != pipeline || BATCH_CHANGED)
More information about the mesa-commit
mailing list