From 7a5666e7f3ba5d7825e5d65d601f9679d10a56bb Mon Sep 17 00:00:00 2001 From: Dan Gohman Date: Wed, 10 Feb 2010 20:41:46 +0000 Subject: [PATCH] Add a hook to AssemblyAnnotationWriter to allow custom info comments to be printed, in place of the familiar "uses=" comments. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@95798 91177308-0d34-0410-b5e6-96231b3b80d8 --- include/llvm/Assembly/AsmAnnotationWriter.h | 5 +++++ lib/VMCore/AsmWriter.cpp | 5 +++++ 2 files changed, 10 insertions(+) diff --git a/include/llvm/Assembly/AsmAnnotationWriter.h b/include/llvm/Assembly/AsmAnnotationWriter.h index 8d7cbc6fac2..6d757201641 100644 --- a/include/llvm/Assembly/AsmAnnotationWriter.h +++ b/include/llvm/Assembly/AsmAnnotationWriter.h @@ -23,6 +23,7 @@ class Function; class BasicBlock; class Instruction; class raw_ostream; +class formatted_raw_ostream; class AssemblyAnnotationWriter { public: @@ -46,6 +47,10 @@ public: /// emitInstructionAnnot - This may be implemented to emit a string right /// before an instruction is emitted. virtual void emitInstructionAnnot(const Instruction *I, raw_ostream &OS) {} + + /// printInfoComment - This may be implemented to emit a comment to the + /// right of an instruction or global value. + virtual void printInfoComment(const Value &V, formatted_raw_ostream &OS) {} }; } // End llvm namespace diff --git a/lib/VMCore/AsmWriter.cpp b/lib/VMCore/AsmWriter.cpp index ab5f45a2b94..586817073bd 100644 --- a/lib/VMCore/AsmWriter.cpp +++ b/lib/VMCore/AsmWriter.cpp @@ -1694,6 +1694,11 @@ void AssemblyWriter::printBasicBlock(const BasicBlock *BB) { /// which slot it occupies. /// void AssemblyWriter::printInfoComment(const Value &V) { + if (AnnotationWriter) { + AnnotationWriter->printInfoComment(V, Out); + return; + } + if (V.getType()->isVoidTy()) return; Out.PadToColumn(50); -- 2.34.1