From ce873004120c9c43e3bdf5ec9c78be927abc6c95 Mon Sep 17 00:00:00 2001 From: Mike Blumenkrantz Date: Fri, 11 Jun 2021 09:50:09 -0400 Subject: [PATCH] zink: use ctx gfx prim mode for draw comparisons just being consistent Reviewed-by: Dave Airlie Part-of: --- src/gallium/drivers/zink/zink_draw.cpp | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/src/gallium/drivers/zink/zink_draw.cpp b/src/gallium/drivers/zink/zink_draw.cpp index 15d2010af28..315d882cd74 100644 --- a/src/gallium/drivers/zink/zink_draw.cpp +++ b/src/gallium/drivers/zink/zink_draw.cpp @@ -424,7 +424,7 @@ zink_draw_vbo(struct pipe_context *pctx, VkBuffer counter_buffers[PIPE_MAX_SO_OUTPUTS]; VkDeviceSize counter_buffer_offsets[PIPE_MAX_SO_OUTPUTS]; bool need_index_buffer_unref = false; - bool mode_changed = ctx->gfx_pipeline_state.mode != dinfo->mode; + bool mode_changed = ctx->gfx_prim_mode != dinfo->mode; bool reads_drawid = ctx->shader_reads_drawid; bool reads_basevertex = ctx->shader_reads_basevertex; unsigned work_count = ctx->batch.work_count; @@ -447,8 +447,7 @@ zink_draw_vbo(struct pipe_context *pctx, if (drawid_broken != ctx->drawid_broken) ctx->dirty_shader_stages |= BITFIELD_BIT(PIPE_SHADER_VERTEX); ctx->gfx_pipeline_state.vertices_per_patch = ctx->gfx_pipeline_state.patch_vertices; - if (ctx->rast_state->base.point_quad_rasterization && - ctx->gfx_prim_mode != mode) { + if (ctx->rast_state->base.point_quad_rasterization && mode_changed) { if (ctx->gfx_prim_mode == PIPE_PRIM_POINTS || mode == PIPE_PRIM_POINTS) ctx->dirty_shader_stages |= BITFIELD_BIT(PIPE_SHADER_FRAGMENT); }