X-Git-Url: https://git.libre-soc.org/?a=blobdiff_plain;f=src%2Fgallium%2Fdrivers%2Fzink%2Fzink_pipeline.h;h=116ce656405f85cb36cdcfeb26504774ad92182c;hb=06d7648f116b031882ad7ec90c10a8d9ebc83f27;hp=0a448be7b4ecb98b08f4a68c735c6d1e2d8cc4a6;hpb=e234116a96604d787bcc05a3b9ebcf8701682e6f;p=mesa.git diff --git a/src/gallium/drivers/zink/zink_pipeline.h b/src/gallium/drivers/zink/zink_pipeline.h index 0a448be7b4e..116ce656405 100644 --- a/src/gallium/drivers/zink/zink_pipeline.h +++ b/src/gallium/drivers/zink/zink_pipeline.h @@ -33,6 +33,7 @@ struct zink_depth_stencil_alpha_state; struct zink_gfx_program; struct zink_rasterizer_state; struct zink_render_pass; +struct zink_screen; struct zink_vertex_elements_state; struct zink_gfx_pipeline_state { @@ -48,14 +49,19 @@ struct zink_gfx_pipeline_state { struct zink_depth_stencil_alpha_state *depth_stencil_alpha_state; - float line_width; - VkSampleMask sample_mask; uint8_t rast_samples; + + bool primitive_restart; + + /* Pre-hashed value for table lookup, invalid when zero. + * Members after this point are not included in pipeline state hash key */ + uint32_t hash; }; VkPipeline -zink_create_gfx_pipeline(VkDevice dev, struct zink_gfx_program *prog, +zink_create_gfx_pipeline(struct zink_screen *screen, + struct zink_gfx_program *prog, struct zink_gfx_pipeline_state *state, VkPrimitiveTopology primitive_topology);