From: Lang Hames Date: Mon, 9 Oct 2017 18:11:04 +0000 (+0000) Subject: [MC] Use a unique_ptr for MCObjectStreamer's Assembler member. X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=2e2586a99afce9fc2a2dd99e100d53d0718148e0;p=llvm [MC] Use a unique_ptr for MCObjectStreamer's Assembler member. Removes manual new/delete. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@315225 91177308-0d34-0410-b5e6-96231b3b80d8 --- diff --git a/include/llvm/MC/MCObjectStreamer.h b/include/llvm/MC/MCObjectStreamer.h index 284af06e1a5..9b7274a8470 100644 --- a/include/llvm/MC/MCObjectStreamer.h +++ b/include/llvm/MC/MCObjectStreamer.h @@ -34,7 +34,7 @@ class raw_pwrite_stream; /// to that file format or custom semantics expected by the object writer /// implementation. class MCObjectStreamer : public MCStreamer { - MCAssembler *Assembler; + std::unique_ptr Assembler; MCSection::iterator CurInsertionPoint; bool EmitEHFrame; bool EmitDebugFrame; diff --git a/lib/MC/MCObjectStreamer.cpp b/lib/MC/MCObjectStreamer.cpp index e9e3133582c..0beaf6b095a 100644 --- a/lib/MC/MCObjectStreamer.cpp +++ b/lib/MC/MCObjectStreamer.cpp @@ -29,15 +29,14 @@ MCObjectStreamer::MCObjectStreamer(MCContext &Context, MCAsmBackend &TAB, raw_pwrite_stream &OS, MCCodeEmitter *Emitter_) : MCStreamer(Context), - Assembler(new MCAssembler(Context, TAB, *Emitter_, - *TAB.createObjectWriter(OS))), + Assembler(llvm::make_unique(Context, TAB, *Emitter_, + *TAB.createObjectWriter(OS))), EmitEHFrame(true), EmitDebugFrame(false) {} MCObjectStreamer::~MCObjectStreamer() { delete &Assembler->getBackend(); delete &Assembler->getEmitter(); delete &Assembler->getWriter(); - delete Assembler; } void MCObjectStreamer::flushPendingLabels(MCFragment *F, uint64_t FOffset) {