[lld] r265512 - Do not allocate MipsReginfo using BumpPtrAllocator.
Rui Ueyama via llvm-commits
llvm-commits at lists.llvm.org
Wed Apr 6 10:48:42 PDT 2016
Probably no because I think MipsReginfo is trivially destructible. But with
the new code you don't have to even think about it.
On Wed, Apr 6, 2016 at 7:44 AM, Rafael EspĂndola <rafael.espindola at gmail.com
> wrote:
> This was showing as a leak in the asan bot?
>
> Cheers,
> Rafael
>
>
> On 5 April 2016 at 22:52, Rui Ueyama via llvm-commits
> <llvm-commits at lists.llvm.org> wrote:
> > Author: ruiu
> > Date: Tue Apr 5 21:52:47 2016
> > New Revision: 265512
> >
> > URL: http://llvm.org/viewvc/llvm-project?rev=265512&view=rev
> > Log:
> > Do not allocate MipsReginfo using BumpPtrAllocator.
> >
> > So that MipsReginfo's destructor will be called.
> >
> > Modified:
> > lld/trunk/ELF/InputFiles.cpp
> > lld/trunk/ELF/InputFiles.h
> >
> > Modified: lld/trunk/ELF/InputFiles.cpp
> > URL:
> http://llvm.org/viewvc/llvm-project/lld/trunk/ELF/InputFiles.cpp?rev=265512&r1=265511&r2=265512&view=diff
> >
> ==============================================================================
> > --- lld/trunk/ELF/InputFiles.cpp (original)
> > +++ lld/trunk/ELF/InputFiles.cpp Tue Apr 5 21:52:47 2016
> > @@ -268,8 +268,8 @@ elf::ObjectFile<ELFT>::createInputSectio
> > // A MIPS object file has a special section that contains register
> > // usage info, which needs to be handled by the linker specially.
> > if (Config->EMachine == EM_MIPS && Name == ".reginfo") {
> > - MipsReginfo = new (Alloc) MipsReginfoInputSection<ELFT>(this, &Sec);
> > - return MipsReginfo;
> > + MipsReginfo.reset(new MipsReginfoInputSection<ELFT>(this, &Sec));
> > + return MipsReginfo.get();
> > }
> >
> > // We dont need special handling of .eh_frame sections if relocatable
> >
> > Modified: lld/trunk/ELF/InputFiles.h
> > URL:
> http://llvm.org/viewvc/llvm-project/lld/trunk/ELF/InputFiles.h?rev=265512&r1=265511&r2=265512&view=diff
> >
> ==============================================================================
> > --- lld/trunk/ELF/InputFiles.h (original)
> > +++ lld/trunk/ELF/InputFiles.h Tue Apr 5 21:52:47 2016
> > @@ -146,7 +146,7 @@ private:
> > std::vector<SymbolBody *> SymbolBodies;
> >
> > // MIPS .reginfo section defined by this file.
> > - MipsReginfoInputSection<ELFT> *MipsReginfo = nullptr;
> > + std::unique_ptr<MipsReginfoInputSection<ELFT>> MipsReginfo;
> >
> > llvm::BumpPtrAllocator Alloc;
> > llvm::SpecificBumpPtrAllocator<InputSection<ELFT>> IAlloc;
> >
> >
> > _______________________________________________
> > llvm-commits mailing list
> > llvm-commits at lists.llvm.org
> > http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-commits
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20160406/8b72861e/attachment.html>
More information about the llvm-commits
mailing list