Tom Stellard <thomas.stell...@amd.com> writes: > From: Michel Dänzer <michel.daen...@amd.com> > > v2: Tom Stellard > - Properly destroy the Module
Thanks, Reviewed-by: Francisco Jerez <curroje...@riseup.net> > --- > src/gallium/state_trackers/clover/llvm/invocation.cpp | 16 ++++++++++++++-- > 1 file changed, 14 insertions(+), 2 deletions(-) > > diff --git a/src/gallium/state_trackers/clover/llvm/invocation.cpp > b/src/gallium/state_trackers/clover/llvm/invocation.cpp > index 5d2efc4..d351bc5 100644 > --- a/src/gallium/state_trackers/clover/llvm/invocation.cpp > +++ b/src/gallium/state_trackers/clover/llvm/invocation.cpp > @@ -234,7 +234,11 @@ namespace { > memcpy(address_spaces, c.getTarget().getAddressSpaceMap(), > > sizeof(address_spaces)); > > +#if HAVE_LLVM >= 0x0306 > + return act.takeModule().release(); > +#else > return act.takeModule(); > +#endif > } > > void > @@ -415,13 +419,21 @@ clover::compile_program_llvm(const compat::string > &source, > > internalize_functions(mod, kernels); > > + module m; > // Build the clover::module > switch (ir) { > case PIPE_SHADER_IR_TGSI: > //XXX: Handle TGSI > assert(0); > - return module(); > + m = module(); > + break; > default: > - return build_module_llvm(mod, kernels, address_spaces); > + m = build_module_llvm(mod, kernels, address_spaces); > + break; > } > +#if HAVE_LLVM >= 0x0306 > + // LLVM 3.6 and newer, the user takes ownership of the module. > + delete mod; > +#endif > + return m; > } > -- > 1.8.5.5
pgpkEE9Up7FEi.pgp
Description: PGP signature
_______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/mesa-dev