glsl: set last_vert_prog in the nir linker

Another step to removing the GLSL IR linker

Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22846>
This commit is contained in:
Timothy Arceri
2023-06-21 13:09:51 +10:00
committed by Marge Bot
parent 0d7b5f8b30
commit ee68c633e9
2 changed files with 9 additions and 9 deletions

View File

@@ -1302,6 +1302,15 @@ gl_nir_link_glsl(const struct gl_constants *consts,
MESA_TRACE_FUNC();
prog->last_vert_prog = NULL;
for (int i = MESA_SHADER_GEOMETRY; i >= MESA_SHADER_VERTEX; i--) {
if (prog->_LinkedShaders[i] == NULL)
continue;
prog->last_vert_prog = prog->_LinkedShaders[i]->Program;
break;
}
if (prog->SeparateShader)
disable_varying_optimizations_for_sso(prog);

View File

@@ -3795,15 +3795,6 @@ link_shaders(struct gl_context *ctx, struct gl_shader_program *prog)
}
}
prog->last_vert_prog = NULL;
for (int i = MESA_SHADER_GEOMETRY; i >= MESA_SHADER_VERTEX; i--) {
if (prog->_LinkedShaders[i] == NULL)
continue;
prog->last_vert_prog = prog->_LinkedShaders[i]->Program;
break;
}
for (unsigned i = 0; i < MESA_SHADER_STAGES; i++) {
if (prog->_LinkedShaders[i] == NULL)
continue;