Module: Mesa Branch: main Commit: fdb9c919228bd337ee3d13fdb71163491b75499e URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=fdb9c919228bd337ee3d13fdb71163491b75499e
Author: Mike Blumenkrantz <[email protected]> Date: Tue Mar 28 18:46:02 2023 -0400 zink: pass nir directly to zink_shader_tcs_create() Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22266> --- src/gallium/drivers/zink/zink_compiler.c | 4 ++-- src/gallium/drivers/zink/zink_compiler.h | 2 +- src/gallium/drivers/zink/zink_program.c | 2 +- 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/src/gallium/drivers/zink/zink_compiler.c b/src/gallium/drivers/zink/zink_compiler.c index 4dfde6de1e2..64cd0719966 100644 --- a/src/gallium/drivers/zink/zink_compiler.c +++ b/src/gallium/drivers/zink/zink_compiler.c @@ -5077,7 +5077,7 @@ void main() */ struct zink_shader * -zink_shader_tcs_create(struct zink_screen *screen, struct zink_shader *vs, unsigned vertices_per_patch) +zink_shader_tcs_create(struct zink_screen *screen, nir_shader *vs, unsigned vertices_per_patch) { struct zink_shader *ret = rzalloc(NULL, struct zink_shader); util_queue_fence_init(&ret->precompile.fence); @@ -5096,7 +5096,7 @@ zink_shader_tcs_create(struct zink_screen *screen, struct zink_shader *vs, unsig nir_ssa_def *invocation_id = nir_load_invocation_id(&b); - nir_foreach_shader_out_variable(var, vs->nir) { + nir_foreach_shader_out_variable(var, vs) { const struct glsl_type *type = var->type; const struct glsl_type *in_type = var->type; const struct glsl_type *out_type = var->type; diff --git a/src/gallium/drivers/zink/zink_compiler.h b/src/gallium/drivers/zink/zink_compiler.h index af43f1679d5..bf16e98ed94 100644 --- a/src/gallium/drivers/zink/zink_compiler.h +++ b/src/gallium/drivers/zink/zink_compiler.h @@ -85,7 +85,7 @@ 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); struct zink_shader * -zink_shader_tcs_create(struct zink_screen *screen, struct zink_shader *vs, unsigned vertices_per_patch); +zink_shader_tcs_create(struct zink_screen *screen, nir_shader *vs, unsigned vertices_per_patch); static inline bool zink_shader_descriptor_is_buffer(struct zink_shader *zs, enum zink_descriptor_type type, unsigned i) diff --git a/src/gallium/drivers/zink/zink_program.c b/src/gallium/drivers/zink/zink_program.c index 91797e28c1e..fcf9d807cc7 100644 --- a/src/gallium/drivers/zink/zink_program.c +++ b/src/gallium/drivers/zink/zink_program.c @@ -1050,7 +1050,7 @@ zink_create_gfx_program(struct zink_context *ctx, if (stages[MESA_SHADER_TESS_EVAL] && !stages[MESA_SHADER_TESS_CTRL]) { prog->shaders[MESA_SHADER_TESS_EVAL]->non_fs.generated_tcs = prog->shaders[MESA_SHADER_TESS_CTRL] = - zink_shader_tcs_create(screen, stages[MESA_SHADER_VERTEX], vertices_per_patch); + zink_shader_tcs_create(screen, stages[MESA_SHADER_VERTEX]->nir, vertices_per_patch); prog->stages_present |= BITFIELD_BIT(MESA_SHADER_TESS_CTRL); } prog->stages_remaining = prog->stages_present;
