summaryrefslogtreecommitdiff
path: root/tools
diff options
context:
space:
mode:
authorOwen Anderson <resistor@mac.com>2011-09-15 23:38:46 +0000
committerOwen Anderson <resistor@mac.com>2011-09-15 23:38:46 +0000
commit98c5ddabca1debf935a07d14d0cbc9732374bdb8 (patch)
tree74e944d1e23e4ead852d53c54a5946ae6f1e56f8 /tools
parent71280b55a3406c7dd4215449bf4a3ab216e78ffd (diff)
Don't attach annotations to MCInst's. Instead, have the disassembler return, and the printer accept, an annotation string which can be passed through if the client cares about annotations.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@139876 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'tools')
-rw-r--r--tools/llvm-mc/Disassembler.cpp4
-rw-r--r--tools/llvm-objdump/MCFunction.cpp2
-rw-r--r--tools/llvm-objdump/llvm-objdump.cpp9
3 files changed, 8 insertions, 7 deletions
diff --git a/tools/llvm-mc/Disassembler.cpp b/tools/llvm-mc/Disassembler.cpp
index 60384f6c63a..a9381b591a1 100644
--- a/tools/llvm-mc/Disassembler.cpp
+++ b/tools/llvm-mc/Disassembler.cpp
@@ -68,7 +68,7 @@ static bool PrintInsts(const MCDisassembler &DisAsm,
MCDisassembler::DecodeStatus S;
S = DisAsm.getInstruction(Inst, Size, memoryObject, Index,
- /*REMOVE*/ nulls());
+ /*REMOVE*/ nulls(), nulls());
switch (S) {
case MCDisassembler::Fail:
SM.PrintMessage(SMLoc::getFromPointer(Bytes[Index].second),
@@ -83,7 +83,7 @@ static bool PrintInsts(const MCDisassembler &DisAsm,
// Fall through
case MCDisassembler::Success:
- Printer.printInst(&Inst, Out);
+ Printer.printInst(&Inst, Out, "");
Out << "\n";
break;
}
diff --git a/tools/llvm-objdump/MCFunction.cpp b/tools/llvm-objdump/MCFunction.cpp
index 418e9d050c1..5f1649694df 100644
--- a/tools/llvm-objdump/MCFunction.cpp
+++ b/tools/llvm-objdump/MCFunction.cpp
@@ -40,7 +40,7 @@ MCFunction::createFunctionFromMC(StringRef Name, const MCDisassembler *DisAsm,
for (uint64_t Index = Start; Index < End; Index += Size) {
MCInst Inst;
- if (DisAsm->getInstruction(Inst, Size, Region, Index, DebugOut)) {
+ if (DisAsm->getInstruction(Inst, Size, Region, Index, DebugOut, nulls())) {
if (Ana->isBranch(Inst)) {
uint64_t targ = Ana->evaluateBranch(Inst, Index, Size);
// FIXME: Distinguish relocations from nop jumps.
diff --git a/tools/llvm-objdump/llvm-objdump.cpp b/tools/llvm-objdump/llvm-objdump.cpp
index c0022d403ed..4cfd4f4164a 100644
--- a/tools/llvm-objdump/llvm-objdump.cpp
+++ b/tools/llvm-objdump/llvm-objdump.cpp
@@ -262,13 +262,14 @@ static void DisassembleInput(const StringRef &Filename) {
if (!CFG) {
for (Index = Start; Index < End; Index += Size) {
MCInst Inst;
+
if (DisAsm->getInstruction(Inst, Size, memoryObject, Index,
- DebugOut)) {
+ DebugOut, nulls())) {
uint64_t addr;
if (error(i->getAddress(addr))) break;
outs() << format("%8x:\t", addr + Index);
DumpBytes(StringRef(Bytes.data() + Index, Size));
- IP->printInst(&Inst, outs());
+ IP->printInst(&Inst, outs(), "");
outs() << "\n";
} else {
errs() << ToolName << ": warning: invalid instruction encoding\n";
@@ -323,7 +324,7 @@ static void DisassembleInput(const StringRef &Filename) {
// Simple loops.
if (fi->second.contains(&fi->second))
outs() << '\t';
- IP->printInst(&Inst.Inst, outs());
+ IP->printInst(&Inst.Inst, outs(), "");
outs() << '\n';
}
}
@@ -359,7 +360,7 @@ static void DisassembleInput(const StringRef &Filename) {
// Escape special chars and print the instruction in mnemonic form.
std::string Str;
raw_string_ostream OS(Str);
- IP->printInst(&i->second.getInsts()[ii].Inst, OS);
+ IP->printInst(&i->second.getInsts()[ii].Inst, OS, "");
Out << DOT::EscapeString(OS.str()) << '|';
}
Out << "<o>\" shape=\"record\" ];\n";