Module: Mesa Branch: master Commit: a4a5045d59adc8f7bac56b3828551c94b23f3617 URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=a4a5045d59adc8f7bac56b3828551c94b23f3617
Author: Eric Anholt <e...@anholt.net> Date: Mon Jan 11 11:09:12 2021 -0800 mesa/st: Free the ARB_vp/fp nir-to-tgsi temporary tokens. The driver interface doesn't take ownership of the TGSI tokens, so free our temporary. Fixes: cf3fc79cd0ab ("st/mesa: Replace mesa_to_tgsi() with prog_to_nir() and nir_to_tgsi().") Reviewed-by: Adam Jackson <a...@redhat.com> Reviewed-by: Marek Olšák <marek.ol...@amd.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/8422> --- src/mesa/state_tracker/st_program.c | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/src/mesa/state_tracker/st_program.c b/src/mesa/state_tracker/st_program.c index 7e360d3e676..7b8d27cf101 100644 --- a/src/mesa/state_tracker/st_program.c +++ b/src/mesa/state_tracker/st_program.c @@ -745,6 +745,9 @@ st_create_vp_variant(struct st_context *st, else vpv->base.driver_shader = pipe->create_vs_state(pipe, &state); + if (state.type == PIPE_SHADER_IR_TGSI) + tgsi_free_tokens(state.tokens); + return vpv; } @@ -1351,6 +1354,9 @@ st_create_fp_variant(struct st_context *st, variant->base.driver_shader = pipe->create_fs_state(pipe, &state); variant->key = *key; + if (state.type == PIPE_SHADER_IR_TGSI) + tgsi_free_tokens(state.tokens); + return variant; } _______________________________________________ mesa-commit mailing list mesa-commit@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/mesa-commit