diff --git a/src/gallium/drivers/zink/nir_to_spirv/nir_to_spirv.c b/src/gallium/drivers/zink/nir_to_spirv/nir_to_spirv.c index fd95acb09a1..16e5ff89eb7 100644 --- a/src/gallium/drivers/zink/nir_to_spirv/nir_to_spirv.c +++ b/src/gallium/drivers/zink/nir_to_spirv/nir_to_spirv.c @@ -4395,8 +4395,9 @@ get_spacing(enum gl_tess_spacing spacing) } struct spirv_shader * -nir_to_spirv(struct nir_shader *s, const struct zink_shader_info *sinfo, uint32_t spirv_version) +nir_to_spirv(struct nir_shader *s, const struct zink_shader_info *sinfo, const struct zink_screen *screen) { + const uint32_t spirv_version = screen->spirv_version; struct spirv_shader *ret = NULL; struct ntv_context ctx = {0}; diff --git a/src/gallium/drivers/zink/nir_to_spirv/nir_to_spirv.h b/src/gallium/drivers/zink/nir_to_spirv/nir_to_spirv.h index 67a56464d19..20ef2c07596 100644 --- a/src/gallium/drivers/zink/nir_to_spirv/nir_to_spirv.h +++ b/src/gallium/drivers/zink/nir_to_spirv/nir_to_spirv.h @@ -47,7 +47,7 @@ struct pipe_stream_output_info; struct spirv_shader * nir_to_spirv(struct nir_shader *s, const struct zink_shader_info *so_info, - uint32_t spirv_version); + const struct zink_screen *screen); void spirv_shader_delete(struct spirv_shader *s); diff --git a/src/gallium/drivers/zink/zink_compiler.c b/src/gallium/drivers/zink/zink_compiler.c index 8086119c856..9f6ea6adba7 100644 --- a/src/gallium/drivers/zink/zink_compiler.c +++ b/src/gallium/drivers/zink/zink_compiler.c @@ -3977,7 +3977,7 @@ compile_module(struct zink_screen *screen, struct zink_shader *zs, nir_shader *n } struct zink_shader_object obj = {0}; - struct spirv_shader *spirv = nir_to_spirv(nir, sinfo, screen->spirv_version); + struct spirv_shader *spirv = nir_to_spirv(nir, sinfo, screen); if (spirv) obj = zink_shader_spirv_compile(screen, zs, spirv, can_shobj, pg);