diff options
author | Mike Blumenkrantz <michael.blumenkrantz@gmail.com> | 2021-02-17 09:51:43 -0500 |
---|---|---|
committer | Marge Bot <eric+marge@anholt.net> | 2021-02-24 23:25:01 +0000 |
commit | b9676976d033b97a43b541293baf2324d4a4449b (patch) | |
tree | 1fb119afab11aa15ac311ce3a10b44edc2f47d00 | |
parent | 2e60929b477c1e187131c71e2bad389097521d04 (diff) |
zink: store prim mode to context during draw
we need to be able to access this for shader rewrites
Reviewed-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/9115>
-rw-r--r-- | src/gallium/drivers/zink/zink_context.h | 1 | ||||
-rw-r--r-- | src/gallium/drivers/zink/zink_draw.c | 1 |
2 files changed, 2 insertions, 0 deletions
diff --git a/src/gallium/drivers/zink/zink_context.h b/src/gallium/drivers/zink/zink_context.h index 0b1b3c94cb5..9b5868e0bbf 100644 --- a/src/gallium/drivers/zink/zink_context.h +++ b/src/gallium/drivers/zink/zink_context.h @@ -132,6 +132,7 @@ struct zink_context { struct zink_shader *gfx_stages[ZINK_SHADER_COUNT]; struct zink_gfx_pipeline_state gfx_pipeline_state; + enum pipe_prim_type gfx_prim_mode; struct hash_table *program_cache; struct zink_gfx_program *curr_program; diff --git a/src/gallium/drivers/zink/zink_draw.c b/src/gallium/drivers/zink/zink_draw.c index 70d1fd6673b..76e3d18898e 100644 --- a/src/gallium/drivers/zink/zink_draw.c +++ b/src/gallium/drivers/zink/zink_draw.c @@ -664,6 +664,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 = dinfo->vertices_per_patch; + ctx->gfx_prim_mode = dinfo->mode; struct zink_gfx_program *gfx_program = get_gfx_program(ctx); if (!gfx_program) return; |