Move ir3_compiler_destroy() into ir3_screen_fini(). This gives us a
good place to cleanup an sync compile queue.
Signed-off-by: Rob Clark <robdclark@chromium.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/8795>
#include "common/freedreno_uuid.h"
#include "ir3/ir3_nir.h"
-#include "ir3/ir3_compiler.h"
+#include "ir3/ir3_gallium.h"
#include "a2xx/ir2.h"
static const struct debug_named_value fd_debug_options[] = {
u_transfer_helper_destroy(pscreen->transfer_helper);
if (screen->compiler)
- ir3_compiler_destroy(screen->compiler);
+ ir3_screen_fini(pscreen);
ralloc_free(screen->live_batches);
pscreen->finalize_nir = ir3_screen_finalize_nir;
}
+
+void
+ir3_screen_fini(struct pipe_screen *pscreen)
+{
+ struct fd_screen *screen = fd_screen(pscreen);
+
+ ir3_compiler_destroy(screen->compiler);
+ screen->compiler = NULL;
+}
void ir3_prog_init(struct pipe_context *pctx);
void ir3_screen_init(struct pipe_screen *pscreen);
+void ir3_screen_fini(struct pipe_screen *pscreen);
/**
* A helper to determine if a fs input 'i' is point/sprite coord, given