mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2025-06-15 21:24:00 +00:00
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
This commit is contained in:
@ -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";
|
||||
|
Reference in New Issue
Block a user