summaryrefslogtreecommitdiff
path: root/lib/MC/MCInst.cpp
diff options
context:
space:
mode:
authorOwen Anderson <resistor@mac.com>2011-09-15 18:36:29 +0000
committerOwen Anderson <resistor@mac.com>2011-09-15 18:36:29 +0000
commitede042dc8d59ff48a48ef8e2271f2a7ee8324ba5 (patch)
tree1863d77a0f4430e093ef2933f38f299a5992c74b /lib/MC/MCInst.cpp
parent01afdb3a45f63af540b43b414c6094220a8f91e7 (diff)
downloadllvm-ede042dc8d59ff48a48ef8e2271f2a7ee8324ba5.tar.gz
llvm-ede042dc8d59ff48a48ef8e2271f2a7ee8324ba5.tar.bz2
llvm-ede042dc8d59ff48a48ef8e2271f2a7ee8324ba5.tar.xz
Add support for stored annotations to MCInst, and provide facilities for MC-based InstPrinters to print them out. Enhance the ARM and X86 InstPrinter's to do so in verbose mode.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@139820 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/MC/MCInst.cpp')
-rw-r--r--lib/MC/MCInst.cpp21
1 files changed, 21 insertions, 0 deletions
diff --git a/lib/MC/MCInst.cpp b/lib/MC/MCInst.cpp
index 4cb628b395..ec97acc554 100644
--- a/lib/MC/MCInst.cpp
+++ b/lib/MC/MCInst.cpp
@@ -41,6 +41,16 @@ void MCInst::print(raw_ostream &OS, const MCAsmInfo *MAI) const {
OS << " ";
getOperand(i).print(OS, MAI);
}
+
+ if (getNumAnnotations()) {
+ OS << " # Annots: ";
+ for (unsigned i = 0, e = getNumAnnotations(); i != e; ++i) {
+ OS << " \"";
+ OS << getAnnotation(i);
+ OS << '"';
+ }
+ }
+
OS << ">";
}
@@ -57,6 +67,17 @@ void MCInst::dump_pretty(raw_ostream &OS, const MCAsmInfo *MAI,
OS << Separator;
getOperand(i).print(OS, MAI);
}
+
+ if (getNumAnnotations()) {
+ OS << " # Annots: ";
+ for (unsigned i = 0, e = getNumAnnotations(); i != e; ++i) {
+ OS << Separator;
+ OS << '"';
+ OS << getAnnotation(i);
+ OS << '"';
+ }
+ }
+
OS << ">";
}