From 10ed67867e9cf1a7ef01f3adb1478b31280e738e Mon Sep 17 00:00:00 2001 From: Mike Blumenkrantz Date: Tue, 20 Sep 2022 14:28:07 -0400 Subject: [PATCH] zink: use screen param for zink_shader_free() the context is no longer used Reviewed-by: Adam Jackson Part-of: --- src/gallium/drivers/zink/zink_compiler.c | 6 +++--- src/gallium/drivers/zink/zink_compiler.h | 2 +- src/gallium/drivers/zink/zink_program.c | 2 +- 3 files changed, 5 insertions(+), 5 deletions(-) diff --git a/src/gallium/drivers/zink/zink_compiler.c b/src/gallium/drivers/zink/zink_compiler.c index 58bba1db22c..ecefb6fdd3d 100644 --- a/src/gallium/drivers/zink/zink_compiler.c +++ b/src/gallium/drivers/zink/zink_compiler.c @@ -3236,7 +3236,7 @@ zink_shader_finalize(struct pipe_screen *pscreen, void *nirptr) } void -zink_shader_free(struct zink_context *ctx, struct zink_shader *shader) +zink_shader_free(struct zink_screen *screen, struct zink_shader *shader) { assert(shader->nir->info.stage != MESA_SHADER_COMPUTE); set_foreach(shader->programs, entry) { @@ -3264,11 +3264,11 @@ zink_shader_free(struct zink_context *ctx, struct zink_shader *shader) /* only remove generated tcs during parent tes destruction */ if (stage == MESA_SHADER_TESS_EVAL && shader->generated) prog->shaders[MESA_SHADER_TESS_CTRL] = NULL; - zink_gfx_program_reference(zink_screen(ctx->base.screen), &prog, NULL); + zink_gfx_program_reference(screen, &prog, NULL); } if (shader->nir->info.stage == MESA_SHADER_TESS_EVAL && shader->generated) { /* automatically destroy generated tcs shaders when tes is destroyed */ - zink_shader_free(ctx, shader->generated); + zink_shader_free(screen, shader->generated); shader->generated = NULL; } _mesa_set_destroy(shader->programs, NULL); diff --git a/src/gallium/drivers/zink/zink_compiler.h b/src/gallium/drivers/zink/zink_compiler.h index 17171e21814..bc4f30c32ae 100644 --- a/src/gallium/drivers/zink/zink_compiler.h +++ b/src/gallium/drivers/zink/zink_compiler.h @@ -66,7 +66,7 @@ char * zink_shader_finalize(struct pipe_screen *pscreen, void *nirptr); void -zink_shader_free(struct zink_context *ctx, struct zink_shader *shader); +zink_shader_free(struct zink_screen *screen, struct zink_shader *shader); VkShaderModule zink_shader_tcs_compile(struct zink_screen *screen, struct zink_shader *zs, unsigned patch_vertices); diff --git a/src/gallium/drivers/zink/zink_program.c b/src/gallium/drivers/zink/zink_program.c index 16cc6b2eb8e..43324dd69f9 100644 --- a/src/gallium/drivers/zink/zink_program.c +++ b/src/gallium/drivers/zink/zink_program.c @@ -1269,7 +1269,7 @@ zink_delete_cs_shader_state(struct pipe_context *pctx, void *cso) void zink_delete_shader_state(struct pipe_context *pctx, void *cso) { - zink_shader_free(zink_context(pctx), cso); + zink_shader_free(zink_screen(pctx->screen), cso); } void *