summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Target/Mips/MCTargetDesc/MipsELFObjectWriter.cpp
diff options
context:
space:
mode:
authorLang Hames <lhames@gmail.com>2017-10-09 23:53:15 +0000
committerLang Hames <lhames@gmail.com>2017-10-09 23:53:15 +0000
commitdcb312bdb9616c19f1e58afc9d06b49f81f648e8 (patch)
treede7480f6ee4c774a8e93f1d0bad5a229ebd33b63 /llvm/lib/Target/Mips/MCTargetDesc/MipsELFObjectWriter.cpp
parente0f1541f41625124926b951b88b70c5d9429c54b (diff)
downloadbcm5719-llvm-dcb312bdb9616c19f1e58afc9d06b49f81f648e8.tar.gz
bcm5719-llvm-dcb312bdb9616c19f1e58afc9d06b49f81f648e8.zip
[MC] Plumb unique_ptr<MCELFObjectTargetWriter> through createELFObjectWriter to
ELFObjectWriter's constructor. Fixes the same ownership issue for ELF that r315245 did for MachO: ELFObjectWriter takes ownership of its MCELFObjectTargetWriter, so we want to pass this through to the constructor via a unique_ptr, rather than a raw ptr. llvm-svn: 315254
Diffstat (limited to 'llvm/lib/Target/Mips/MCTargetDesc/MipsELFObjectWriter.cpp')
-rw-r--r--llvm/lib/Target/Mips/MCTargetDesc/MipsELFObjectWriter.cpp6
1 files changed, 3 insertions, 3 deletions
diff --git a/llvm/lib/Target/Mips/MCTargetDesc/MipsELFObjectWriter.cpp b/llvm/lib/Target/Mips/MCTargetDesc/MipsELFObjectWriter.cpp
index 4339eca93f1..7ea3505fcdb 100644
--- a/llvm/lib/Target/Mips/MCTargetDesc/MipsELFObjectWriter.cpp
+++ b/llvm/lib/Target/Mips/MCTargetDesc/MipsELFObjectWriter.cpp
@@ -660,7 +660,7 @@ MCObjectWriter *llvm::createMipsELFObjectWriter(raw_pwrite_stream &OS,
uint8_t OSABI = MCELFObjectTargetWriter::getOSABI(TT.getOS());
bool IsN64 = TT.isArch64Bit() && !IsN32;
bool HasRelocationAddend = TT.isArch64Bit();
- auto *MOTW = new MipsELFObjectWriter(OSABI, HasRelocationAddend, IsN64,
- TT.isLittleEndian());
- return createELFObjectWriter(MOTW, OS, TT.isLittleEndian());
+ auto MOTW = llvm::make_unique<MipsELFObjectWriter>(
+ OSABI, HasRelocationAddend, IsN64, TT.isLittleEndian());
+ return createELFObjectWriter(std::move(MOTW), OS, TT.isLittleEndian());
}
OpenPOWER on IntegriCloud