summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/gallium/drivers/radeonsi/si_compute.c7
1 files changed, 5 insertions, 2 deletions
diff --git a/src/gallium/drivers/radeonsi/si_compute.c b/src/gallium/drivers/radeonsi/si_compute.c
index 56af2aedbb7..4cadf3e808d 100644
--- a/src/gallium/drivers/radeonsi/si_compute.c
+++ b/src/gallium/drivers/radeonsi/si_compute.c
@@ -208,8 +208,10 @@ static void si_create_compute_state_async(void *job, int thread_index)
simple_mtx_unlock(&sscreen->shader_cache_mutex);
}
- if (program->ir_type == PIPE_SHADER_IR_TGSI)
- FREE(sel->tokens);
+ FREE(sel->tokens);
+ sel->tokens = NULL;
+ ralloc_free(sel->nir);
+ sel->nir = NULL;
}
static void *si_create_compute_state(
@@ -974,6 +976,7 @@ void si_destroy_compute(struct si_compute *program)
FREE(program->global_buffers);
si_shader_destroy(&program->shader);
+ FREE(program->sel.tokens);
ralloc_free(program->sel.nir);
FREE(program);
}