diff options
author | Chris Lattner <sabre@nondot.org> | 2010-02-10 00:10:18 +0000 |
---|---|---|
committer | Chris Lattner <sabre@nondot.org> | 2010-02-10 00:10:18 +0000 |
commit | 5d672cfab096390690a1a5f33b0057c4cf252c55 (patch) | |
tree | 8b302847f85f74e88fce57840961a054fae60ae3 /include/llvm/MC/MCInstPrinter.h | |
parent | 51898d7a8948f7d9b1b498cf22609241945e994e (diff) | |
download | llvm-5d672cfab096390690a1a5f33b0057c4cf252c55.tar.gz llvm-5d672cfab096390690a1a5f33b0057c4cf252c55.tar.bz2 llvm-5d672cfab096390690a1a5f33b0057c4cf252c55.tar.xz |
Add ability for MCInstPrinters to add comments for instructions.
Enhance the x86 backend to show the hex values of immediates in
comments when they are large. For example:
movl $1072693248, 4(%esp) ## imm = 0x3FF00000
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@95728 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'include/llvm/MC/MCInstPrinter.h')
-rw-r--r-- | include/llvm/MC/MCInstPrinter.h | 12 |
1 files changed, 11 insertions, 1 deletions
diff --git a/include/llvm/MC/MCInstPrinter.h b/include/llvm/MC/MCInstPrinter.h index d62a9dae7c..8829518632 100644 --- a/include/llvm/MC/MCInstPrinter.h +++ b/include/llvm/MC/MCInstPrinter.h @@ -20,12 +20,22 @@ class MCAsmInfo; /// that converts an MCInst to valid target assembly syntax. class MCInstPrinter { protected: + /// O - The main stream to emit instruction text to. raw_ostream &O; + + /// CommentStream - a stream that comments can be emitted to if desired. + /// Each comment must end with a newline. This will be null if verbose + /// assembly emission is disable. + raw_ostream *CommentStream; const MCAsmInfo &MAI; public: - MCInstPrinter(raw_ostream &o, const MCAsmInfo &mai) : O(o), MAI(mai) {} + MCInstPrinter(raw_ostream &o, const MCAsmInfo &mai) + : O(o), CommentStream(0), MAI(mai) {} virtual ~MCInstPrinter(); + + /// setCommentStream - Specify a stream to emit comments to. + void setCommentStream(raw_ostream &OS) { CommentStream = &OS; } /// printInst - Print the specified MCInst to the current raw_ostream. /// |