From d54c21d27943550e5743779081de299fbcaca311 Mon Sep 17 00:00:00 2001 From: Mike Blumenkrantz Date: Thu, 1 Apr 2021 15:18:16 -0400 Subject: [PATCH] zink: replace has_descriptors program member with a util function Reviewed-by: Dave Airlie Part-of: --- src/gallium/drivers/zink/zink_draw.c | 4 ++-- src/gallium/drivers/zink/zink_program.h | 7 ++++++- 2 files changed, 8 insertions(+), 3 deletions(-) diff --git a/src/gallium/drivers/zink/zink_draw.c b/src/gallium/drivers/zink/zink_draw.c index 34136ef6693..436977e1de9 100644 --- a/src/gallium/drivers/zink/zink_draw.c +++ b/src/gallium/drivers/zink/zink_draw.c @@ -478,7 +478,7 @@ zink_draw_vbo(struct pipe_context *pctx, } } - if (gfx_program->base.has_descriptors) + if (zink_program_has_descriptors(&gfx_program->base)) zink_descriptors_update(ctx, false); struct zink_batch *batch = zink_batch_rp(ctx); @@ -730,7 +730,7 @@ zink_launch_grid(struct pipe_context *pctx, const struct pipe_grid_info *info) VkPipeline pipeline = zink_get_compute_pipeline(screen, comp_program, &ctx->compute_pipeline_state); - if (comp_program->base.has_descriptors) + if (zink_program_has_descriptors(&comp_program->base)) zink_descriptors_update(ctx, true); diff --git a/src/gallium/drivers/zink/zink_program.h b/src/gallium/drivers/zink/zink_program.h index a11ae76cd4b..43199c3ab7d 100644 --- a/src/gallium/drivers/zink/zink_program.h +++ b/src/gallium/drivers/zink/zink_program.h @@ -77,7 +77,6 @@ struct zink_program { bool is_compute; struct zink_program_descriptor_data *dd; - bool has_descriptors; VkPipelineLayout layout; VkDescriptorSetLayout dsl[ZINK_DESCRIPTOR_TYPES]; @@ -218,4 +217,10 @@ zink_get_compute_pipeline(struct zink_screen *screen, struct zink_compute_program *comp, struct zink_compute_pipeline_state *state); +static inline bool +zink_program_has_descriptors(const struct zink_program *pg) +{ + return pg->dsl[0] || pg->dsl[1] || pg->dsl[2] || pg->dsl[3]; +} + #endif