zink: update gfx pipeline shader module pointer even if the program is unchanged
this is used for pipeline comparisons, so it has to always be accurate cc: mesa-stable Reviewed-by: Dave Airlie <airlied@redhat.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13727>
This commit is contained in:
parent
bfa81c1e8c
commit
4dfb5818ed
|
@ -167,6 +167,7 @@ update_gfx_shader_modules(struct zink_context *ctx,
|
|||
u_foreach_bit(pstage, mask) {
|
||||
assert(prog->shaders[pstage]);
|
||||
struct zink_shader_module *zm = get_shader_module_for_stage(ctx, screen, prog->shaders[pstage], prog, state);
|
||||
state->modules[pstage] = zm->shader;
|
||||
if (prog->modules[pstage] == zm)
|
||||
continue;
|
||||
if (prog->modules[pstage])
|
||||
|
@ -175,7 +176,6 @@ update_gfx_shader_modules(struct zink_context *ctx,
|
|||
default_variants &= zm->default_variant;
|
||||
prog->modules[pstage] = zm;
|
||||
variant_hash ^= prog->modules[pstage]->hash;
|
||||
state->modules[pstage] = zm->shader;
|
||||
}
|
||||
|
||||
if (hash_changed && state) {
|
||||
|
|
Loading…
Reference in New Issue