summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRob Clark <[email protected]>2017-03-21 11:35:40 -0400
committerRob Clark <[email protected]>2017-03-24 18:01:47 -0400
commitd87ef8f77c4014902ef05b5caafc66cb36ee56f0 (patch)
tree537e24592519d0f967ba6e235a607584bdc309b3
parente6621746dc71dfa618c0e2518cd0591a13a6c994 (diff)
freedreno: free compiler when screen is destroyed
Drop ir3_compiler_destroy(), since it is only ralloc_free() and we shouldn't really have an ir3 dependency in core. If some future hw has a new compiler, as long as all it's resources are ralloc()d then things will all just work. (In practice, I suppose you never really see this leak, but removing it at least cleans up some noise in valgrind.) Signed-off-by: Rob Clark <[email protected]>
-rw-r--r--src/gallium/drivers/freedreno/freedreno_screen.c2
-rw-r--r--src/gallium/drivers/freedreno/ir3/ir3_compiler.c5
-rw-r--r--src/gallium/drivers/freedreno/ir3/ir3_compiler.h1
3 files changed, 2 insertions, 6 deletions
diff --git a/src/gallium/drivers/freedreno/freedreno_screen.c b/src/gallium/drivers/freedreno/freedreno_screen.c
index f0c9e187d20..5657de59276 100644
--- a/src/gallium/drivers/freedreno/freedreno_screen.c
+++ b/src/gallium/drivers/freedreno/freedreno_screen.c
@@ -144,6 +144,8 @@ fd_screen_destroy(struct pipe_screen *pscreen)
mtx_destroy(&screen->lock);
+ ralloc_free(screen->compiler);
+
free(screen);
}
diff --git a/src/gallium/drivers/freedreno/ir3/ir3_compiler.c b/src/gallium/drivers/freedreno/ir3/ir3_compiler.c
index 37ad73380ab..ff4d1b09ea8 100644
--- a/src/gallium/drivers/freedreno/ir3/ir3_compiler.c
+++ b/src/gallium/drivers/freedreno/ir3/ir3_compiler.c
@@ -38,8 +38,3 @@ struct ir3_compiler * ir3_compiler_create(struct fd_device *dev, uint32_t gpu_id
compiler->set = ir3_ra_alloc_reg_set(compiler);
return compiler;
}
-
-void ir3_compiler_destroy(struct ir3_compiler *compiler)
-{
- ralloc_free(compiler);
-}
diff --git a/src/gallium/drivers/freedreno/ir3/ir3_compiler.h b/src/gallium/drivers/freedreno/ir3/ir3_compiler.h
index 0ad689ca1e7..671332e816d 100644
--- a/src/gallium/drivers/freedreno/ir3/ir3_compiler.h
+++ b/src/gallium/drivers/freedreno/ir3/ir3_compiler.h
@@ -41,7 +41,6 @@ struct ir3_compiler {
};
struct ir3_compiler * ir3_compiler_create(struct fd_device *dev, uint32_t gpu_id);
-void ir3_compiler_destroy(struct ir3_compiler *compiler);
int ir3_compile_shader_nir(struct ir3_compiler *compiler,
struct ir3_shader_variant *so);