diff --git a/src/gallium/drivers/zink/zink_program.c b/src/gallium/drivers/zink/zink_program.c index 6c5d749f51b..191175baed1 100644 --- a/src/gallium/drivers/zink/zink_program.c +++ b/src/gallium/drivers/zink/zink_program.c @@ -158,11 +158,7 @@ static void shader_key_tcs_gen(struct zink_context *ctx, struct zink_shader *zs, struct zink_shader *shaders[ZINK_SHADER_COUNT], struct zink_shader_key *key) { - struct zink_tcs_key *tcs_key = &key->key.tcs; - key->size = sizeof(struct zink_tcs_key); - - tcs_key->vertices_per_patch = ctx->gfx_pipeline_state.vertices_per_patch + 1; - tcs_key->vs_outputs_written = shaders[PIPE_SHADER_VERTEX]->nir->info.outputs_written; + key->size = 0; } typedef void (*zink_shader_key_gen)(struct zink_context *ctx, struct zink_shader *zs, @@ -206,7 +202,7 @@ get_shader_module_for_stage(struct zink_context *ctx, struct zink_shader *zs, st shader_key_vtbl[stage](ctx, zs, prog->shaders, &key); /* this is default variant if there is no default or it matches the default */ - if (prog->default_variant_key[pstage]) { + if (pstage != PIPE_SHADER_TESS_CTRL && prog->default_variant_key[pstage]) { const struct keybox *tmp = prog->default_variant_key[pstage]; /* if comparing against the existing default, use the base variant key size since * we're only checking the stage-specific data diff --git a/src/gallium/drivers/zink/zink_shader_keys.h b/src/gallium/drivers/zink/zink_shader_keys.h index 110c6624642..f0dc1447e46 100644 --- a/src/gallium/drivers/zink/zink_shader_keys.h +++ b/src/gallium/drivers/zink/zink_shader_keys.h @@ -39,11 +39,6 @@ struct zink_fs_key { bool force_dual_color_blend; }; -struct zink_tcs_key { - unsigned vertices_per_patch; - uint64_t vs_outputs_written; -}; - struct zink_shader_key_base { uint32_t inlined_uniform_values[MAX_INLINABLE_UNIFORMS]; }; @@ -58,7 +53,6 @@ struct zink_shader_key { /* reuse vs key for now with tes/gs since we only use clip_halfz */ struct zink_vs_key vs; struct zink_fs_key fs; - struct zink_tcs_key tcs; } key; struct zink_shader_key_base base; unsigned inline_uniforms:1;