[llvm] r204891 - Update MCSymbolizer and its subclasses' constructors to reflect the fact that
Lang Hames
lhames at gmail.com
Wed Mar 26 19:39:01 PDT 2014
Author: lhames
Date: Wed Mar 26 21:39:01 2014
New Revision: 204891
URL: http://llvm.org/viewvc/llvm-project?rev=204891&view=rev
Log:
Update MCSymbolizer and its subclasses' constructors to reflect the fact that
they take ownership of the RelocationInfo they're constructed with.
Modified:
llvm/trunk/include/llvm/MC/MCExternalSymbolizer.h
llvm/trunk/include/llvm/MC/MCObjectSymbolizer.h
llvm/trunk/include/llvm/MC/MCSymbolizer.h
llvm/trunk/lib/MC/MCDisassembler.cpp
llvm/trunk/lib/MC/MCExternalSymbolizer.cpp
llvm/trunk/lib/MC/MCObjectSymbolizer.cpp
llvm/trunk/lib/MC/MCSymbolizer.cpp
llvm/trunk/tools/llvm-objdump/llvm-objdump.cpp
Modified: llvm/trunk/include/llvm/MC/MCExternalSymbolizer.h
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/include/llvm/MC/MCExternalSymbolizer.h?rev=204891&r1=204890&r2=204891&view=diff
==============================================================================
--- llvm/trunk/include/llvm/MC/MCExternalSymbolizer.h (original)
+++ llvm/trunk/include/llvm/MC/MCExternalSymbolizer.h Wed Mar 26 21:39:01 2014
@@ -39,11 +39,11 @@ class MCExternalSymbolizer : public MCSy
public:
MCExternalSymbolizer(MCContext &Ctx,
- std::unique_ptr<MCRelocationInfo> &RelInfo,
+ std::unique_ptr<MCRelocationInfo> RelInfo,
LLVMOpInfoCallback getOpInfo,
LLVMSymbolLookupCallback symbolLookUp, void *disInfo)
- : MCSymbolizer(Ctx, RelInfo), GetOpInfo(getOpInfo),
- SymbolLookUp(symbolLookUp), DisInfo(disInfo) {}
+ : MCSymbolizer(Ctx, std::move(RelInfo)), GetOpInfo(getOpInfo),
+ SymbolLookUp(symbolLookUp), DisInfo(disInfo) {}
bool tryAddingSymbolicOperand(MCInst &MI, raw_ostream &CommentStream,
int64_t Value, uint64_t Address, bool IsBranch,
Modified: llvm/trunk/include/llvm/MC/MCObjectSymbolizer.h
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/include/llvm/MC/MCObjectSymbolizer.h?rev=204891&r1=204890&r2=204891&view=diff
==============================================================================
--- llvm/trunk/include/llvm/MC/MCObjectSymbolizer.h (original)
+++ llvm/trunk/include/llvm/MC/MCObjectSymbolizer.h Wed Mar 26 21:39:01 2014
@@ -41,7 +41,7 @@ protected:
const object::RelocationRef *findRelocationAt(uint64_t Addr);
const object::SectionRef *findSectionContaining(uint64_t Addr);
- MCObjectSymbolizer(MCContext &Ctx, std::unique_ptr<MCRelocationInfo> &RelInfo,
+ MCObjectSymbolizer(MCContext &Ctx, std::unique_ptr<MCRelocationInfo> RelInfo,
const object::ObjectFile *Obj);
public:
@@ -65,7 +65,7 @@ public:
/// \brief Create an object symbolizer for \p Obj.
static MCObjectSymbolizer *
createObjectSymbolizer(MCContext &Ctx,
- std::unique_ptr<MCRelocationInfo> &RelInfo,
+ std::unique_ptr<MCRelocationInfo> RelInfo,
const object::ObjectFile *Obj);
private:
Modified: llvm/trunk/include/llvm/MC/MCSymbolizer.h
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/include/llvm/MC/MCSymbolizer.h?rev=204891&r1=204890&r2=204891&view=diff
==============================================================================
--- llvm/trunk/include/llvm/MC/MCSymbolizer.h (original)
+++ llvm/trunk/include/llvm/MC/MCSymbolizer.h Wed Mar 26 21:39:01 2014
@@ -46,7 +46,7 @@ protected:
public:
/// \brief Construct an MCSymbolizer, taking ownership of \p RelInfo.
- MCSymbolizer(MCContext &Ctx, std::unique_ptr<MCRelocationInfo> &RelInfo);
+ MCSymbolizer(MCContext &Ctx, std::unique_ptr<MCRelocationInfo> RelInfo);
virtual ~MCSymbolizer();
/// \brief Try to add a symbolic operand instead of \p Value to the MCInst.
Modified: llvm/trunk/lib/MC/MCDisassembler.cpp
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/MC/MCDisassembler.cpp?rev=204891&r1=204890&r2=204891&view=diff
==============================================================================
--- llvm/trunk/lib/MC/MCDisassembler.cpp (original)
+++ llvm/trunk/lib/MC/MCDisassembler.cpp Wed Mar 26 21:39:01 2014
@@ -25,8 +25,9 @@ void MCDisassembler::setupForSymbolicDis
this->Ctx = Ctx;
assert(Ctx != 0 && "No MCContext given for symbolic disassembly");
if (!Symbolizer)
- Symbolizer.reset(new MCExternalSymbolizer(*Ctx, RelInfo, GetOpInfo,
- SymbolLookUp, DisInfo));
+ Symbolizer.reset(new MCExternalSymbolizer(*Ctx, std::move(RelInfo),
+ GetOpInfo, SymbolLookUp,
+ DisInfo));
}
void MCDisassembler::setupForSymbolicDisassembly(
Modified: llvm/trunk/lib/MC/MCExternalSymbolizer.cpp
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/MC/MCExternalSymbolizer.cpp?rev=204891&r1=204890&r2=204891&view=diff
==============================================================================
--- llvm/trunk/lib/MC/MCExternalSymbolizer.cpp (original)
+++ llvm/trunk/lib/MC/MCExternalSymbolizer.cpp Wed Mar 26 21:39:01 2014
@@ -191,8 +191,8 @@ MCSymbolizer *createMCSymbolizer(StringR
MCRelocationInfo *RelInfo) {
assert(Ctx != 0 && "No MCContext given for symbolic disassembly");
- std::unique_ptr<MCRelocationInfo> RelInfoOwingPtr(RelInfo);
- return new MCExternalSymbolizer(*Ctx, RelInfoOwingPtr, GetOpInfo,
- SymbolLookUp, DisInfo);
+ return new MCExternalSymbolizer(*Ctx,
+ std::unique_ptr<MCRelocationInfo>(RelInfo),
+ GetOpInfo, SymbolLookUp, DisInfo);
}
}
Modified: llvm/trunk/lib/MC/MCObjectSymbolizer.cpp
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/MC/MCObjectSymbolizer.cpp?rev=204891&r1=204890&r2=204891&view=diff
==============================================================================
--- llvm/trunk/lib/MC/MCObjectSymbolizer.cpp (original)
+++ llvm/trunk/lib/MC/MCObjectSymbolizer.cpp Wed Mar 26 21:39:01 2014
@@ -35,7 +35,7 @@ class MCMachObjectSymbolizer : public MC
public:
MCMachObjectSymbolizer(MCContext &Ctx,
- std::unique_ptr<MCRelocationInfo> &RelInfo,
+ std::unique_ptr<MCRelocationInfo> RelInfo,
const MachOObjectFile *MOOF);
StringRef findExternalFunctionAt(uint64_t Addr) override;
@@ -46,10 +46,10 @@ public:
} // End unnamed namespace
MCMachObjectSymbolizer::MCMachObjectSymbolizer(
- MCContext &Ctx, std::unique_ptr<MCRelocationInfo> &RelInfo,
+ MCContext &Ctx, std::unique_ptr<MCRelocationInfo> RelInfo,
const MachOObjectFile *MOOF)
- : MCObjectSymbolizer(Ctx, RelInfo, MOOF), MOOF(MOOF), StubsStart(0),
- StubsCount(0), StubSize(0), StubsIndSymIndex(0) {
+ : MCObjectSymbolizer(Ctx, std::move(RelInfo), MOOF), MOOF(MOOF),
+ StubsStart(0), StubsCount(0), StubSize(0), StubsIndSymIndex(0) {
for (const SectionRef &Section : MOOF->sections()) {
StringRef Name;
@@ -121,9 +121,10 @@ tryAddingPcLoadReferenceComment(raw_ostr
//===- MCObjectSymbolizer -------------------------------------------------===//
MCObjectSymbolizer::MCObjectSymbolizer(
- MCContext &Ctx, std::unique_ptr<MCRelocationInfo> &RelInfo,
- const ObjectFile *Obj)
- : MCSymbolizer(Ctx, RelInfo), Obj(Obj), SortedSections(), AddrToReloc() {}
+ MCContext &Ctx, std::unique_ptr<MCRelocationInfo> RelInfo,
+ const ObjectFile *Obj)
+ : MCSymbolizer(Ctx, std::move(RelInfo)), Obj(Obj), SortedSections(),
+ AddrToReloc() {}
bool MCObjectSymbolizer::
tryAddingSymbolicOperand(MCInst &MI, raw_ostream &cStream,
@@ -191,11 +192,11 @@ StringRef MCObjectSymbolizer::findExtern
}
MCObjectSymbolizer *MCObjectSymbolizer::createObjectSymbolizer(
- MCContext &Ctx, std::unique_ptr<MCRelocationInfo> &RelInfo,
+ MCContext &Ctx, std::unique_ptr<MCRelocationInfo> RelInfo,
const ObjectFile *Obj) {
if (const MachOObjectFile *MOOF = dyn_cast<MachOObjectFile>(Obj))
- return new MCMachObjectSymbolizer(Ctx, RelInfo, MOOF);
- return new MCObjectSymbolizer(Ctx, RelInfo, Obj);
+ return new MCMachObjectSymbolizer(Ctx, std::move(RelInfo), MOOF);
+ return new MCObjectSymbolizer(Ctx, std::move(RelInfo), Obj);
}
// SortedSections implementation.
Modified: llvm/trunk/lib/MC/MCSymbolizer.cpp
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/MC/MCSymbolizer.cpp?rev=204891&r1=204890&r2=204891&view=diff
==============================================================================
--- llvm/trunk/lib/MC/MCSymbolizer.cpp (original)
+++ llvm/trunk/lib/MC/MCSymbolizer.cpp Wed Mar 26 21:39:01 2014
@@ -13,8 +13,8 @@
using namespace llvm;
MCSymbolizer::MCSymbolizer(MCContext &Ctx,
- std::unique_ptr<MCRelocationInfo> &RelInfo)
- : Ctx(Ctx), RelInfo(RelInfo.release()) {}
+ std::unique_ptr<MCRelocationInfo> RelInfo)
+ : Ctx(Ctx), RelInfo(std::move(RelInfo)) {}
MCSymbolizer::~MCSymbolizer() {
}
Modified: llvm/trunk/tools/llvm-objdump/llvm-objdump.cpp
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/tools/llvm-objdump/llvm-objdump.cpp?rev=204891&r1=204890&r2=204891&view=diff
==============================================================================
--- llvm/trunk/tools/llvm-objdump/llvm-objdump.cpp (original)
+++ llvm/trunk/tools/llvm-objdump/llvm-objdump.cpp Wed Mar 26 21:39:01 2014
@@ -325,7 +325,8 @@ static void DisassembleObject(const Obje
TheTarget->createMCRelocationInfo(TripleName, *Ctx.get()));
if (RelInfo) {
std::unique_ptr<MCSymbolizer> Symzer(
- MCObjectSymbolizer::createObjectSymbolizer(*Ctx.get(), RelInfo, Obj));
+ MCObjectSymbolizer::createObjectSymbolizer(*Ctx.get(),
+ std::move(RelInfo), Obj));
if (Symzer)
DisAsm->setSymbolizer(std::move(Symzer));
}
More information about the llvm-commits
mailing list