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
diff --git a/tools/llvm-objdump/llvm-objdump.cpp b/tools/llvm-objdump/llvm-objdump.cpp
index c0022d4..4cfd4f4 100644
--- a/tools/llvm-objdump/llvm-objdump.cpp
+++ b/tools/llvm-objdump/llvm-objdump.cpp
@@ -262,13 +262,14 @@
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 @@
// 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 @@
// 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";