diff options
author | Owen Anderson <resistor@mac.com> | 2011-09-15 23:38:46 +0000 |
---|---|---|
committer | Owen Anderson <resistor@mac.com> | 2011-09-15 23:38:46 +0000 |
commit | a0c3b97221c8f29a123a3a2173f1550550788671 (patch) | |
tree | e50da33d9cc7d0c9dcb985bfcc91748335a5fc42 /llvm/lib/Target/PowerPC/InstPrinter/PPCInstPrinter.cpp | |
parent | 0d3d70a074b7029b1b712d617a21a4a9f72a2d23 (diff) | |
download | bcm5719-llvm-a0c3b97221c8f29a123a3a2173f1550550788671.tar.gz bcm5719-llvm-a0c3b97221c8f29a123a3a2173f1550550788671.zip |
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.
llvm-svn: 139876
Diffstat (limited to 'llvm/lib/Target/PowerPC/InstPrinter/PPCInstPrinter.cpp')
-rw-r--r-- | llvm/lib/Target/PowerPC/InstPrinter/PPCInstPrinter.cpp | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/llvm/lib/Target/PowerPC/InstPrinter/PPCInstPrinter.cpp b/llvm/lib/Target/PowerPC/InstPrinter/PPCInstPrinter.cpp index 8f34b19925e..c22b13a447b 100644 --- a/llvm/lib/Target/PowerPC/InstPrinter/PPCInstPrinter.cpp +++ b/llvm/lib/Target/PowerPC/InstPrinter/PPCInstPrinter.cpp @@ -31,7 +31,8 @@ void PPCInstPrinter::printRegName(raw_ostream &OS, unsigned RegNo) const { OS << getRegisterName(RegNo); } -void PPCInstPrinter::printInst(const MCInst *MI, raw_ostream &O) { +void PPCInstPrinter::printInst(const MCInst *MI, raw_ostream &O, + StringRef Annot) { // Check for slwi/srwi mnemonics. if (MI->getOpcode() == PPC::RLWINM) { unsigned char SH = MI->getOperand(2).getImm(); @@ -50,6 +51,8 @@ void PPCInstPrinter::printInst(const MCInst *MI, raw_ostream &O) { O << ", "; printOperand(MI, 1, O); O << ", " << (unsigned int)SH; + + if (CommentStream) printAnnotation(*CommentStream, Annot); return; } } @@ -60,6 +63,7 @@ void PPCInstPrinter::printInst(const MCInst *MI, raw_ostream &O) { printOperand(MI, 0, O); O << ", "; printOperand(MI, 1, O); + if (CommentStream) printAnnotation(*CommentStream, Annot); return; } @@ -73,11 +77,13 @@ void PPCInstPrinter::printInst(const MCInst *MI, raw_ostream &O) { O << ", "; printOperand(MI, 1, O); O << ", " << (unsigned int)SH; + if (CommentStream) printAnnotation(*CommentStream, Annot); return; } } printInstruction(MI, O); + if (CommentStream) printAnnotation(*CommentStream, Annot); } |