summaryrefslogtreecommitdiffstats
path: root/src/gallium/drivers/radeonsi/si_shader.c
diff options
context:
space:
mode:
authorMarek Olšák <[email protected]>2014-09-18 23:48:04 +0200
committerMarek Olšák <[email protected]>2014-09-24 14:48:02 +0200
commitdc05a9e4e089d66a2ffe8919857ad9660e108c28 (patch)
treefb6e0af7f7546bf12415ebf01176c5adda14cff8 /src/gallium/drivers/radeonsi/si_shader.c
parent711623f7c8113d43f2d54ebfe5cbed3d406a3c79 (diff)
radeonsi: properly destroy the GS copy shader and scratch_bo for compute
Cc: 10.2 10.3 <[email protected]> Reviewed-by: Michel Dänzer <[email protected]>
Diffstat (limited to 'src/gallium/drivers/radeonsi/si_shader.c')
-rw-r--r--src/gallium/drivers/radeonsi/si_shader.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/src/gallium/drivers/radeonsi/si_shader.c b/src/gallium/drivers/radeonsi/si_shader.c
index 72618852430..9d2cc803c2d 100644
--- a/src/gallium/drivers/radeonsi/si_shader.c
+++ b/src/gallium/drivers/radeonsi/si_shader.c
@@ -2973,5 +2973,9 @@ out:
void si_shader_destroy(struct pipe_context *ctx, struct si_shader *shader)
{
+ if (shader->gs_copy_shader)
+ si_shader_destroy(ctx, shader->gs_copy_shader);
+
r600_resource_reference(&shader->bo, NULL);
+ r600_resource_reference(&shader->scratch_bo, NULL);
}