zink: move vertex_buffers_enabled_mask to non-hashed part of pipeline state

we can use this to optimize pipeline hashing

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/9539>
This commit is contained in:
Mike Blumenkrantz 2020-10-06 16:06:43 -04:00 committed by Marge Bot
parent 1aabfc77d3
commit da08d67364
3 changed files with 2 additions and 2 deletions

View file

@ -716,7 +716,7 @@ zink_set_vertex_buffers(struct pipe_context *pctx,
{
struct zink_context *ctx = zink_context(pctx);
util_set_vertex_buffers_mask(ctx->vertex_buffers, &ctx->vertex_buffers_enabled_mask,
util_set_vertex_buffers_mask(ctx->vertex_buffers, &ctx->gfx_pipeline_state.vertex_buffers_enabled_mask,
buffers, start_slot, num_buffers,
unbind_num_trailing_slots, take_ownership);
}

View file

@ -178,7 +178,6 @@ struct zink_context {
struct zink_framebuffer_clear fb_clears[PIPE_MAX_COLOR_BUFS + 1];
struct pipe_vertex_buffer vertex_buffers[PIPE_MAX_ATTRIBS];
uint32_t vertex_buffers_enabled_mask;
void *sampler_states[PIPE_SHADER_TYPES][PIPE_MAX_SAMPLERS];
VkSampler samplers[PIPE_SHADER_TYPES][PIPE_MAX_SAMPLERS];

View file

@ -66,6 +66,7 @@ struct zink_gfx_pipeline_state {
* Members after this point are not included in pipeline state hash key */
uint32_t hash;
bool dirty;
uint32_t vertex_buffers_enabled_mask;
};
struct zink_compute_pipeline_state {