Current Path : /usr/src/contrib/llvm/include/llvm/Assembly/ |
FreeBSD hs32.drive.ne.jp 9.1-RELEASE FreeBSD 9.1-RELEASE #1: Wed Jan 14 12:18:08 JST 2015 root@hs32.drive.ne.jp:/sys/amd64/compile/hs32 amd64 |
Current File : //usr/src/contrib/llvm/include/llvm/Assembly/AssemblyAnnotationWriter.h |
//===-- AssemblyAnnotationWriter.h - Annotation .ll files -------*- C++ -*-===// // // The LLVM Compiler Infrastructure // // This file is distributed under the University of Illinois Open Source // License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// // // Clients of the assembly writer can use this interface to add their own // special-purpose annotations to LLVM assembly language printouts. Note that // the assembly parser won't be able to parse these, in general, so // implementations are advised to print stuff as LLVM comments. // //===----------------------------------------------------------------------===// #ifndef LLVM_ASSEMBLY_ASMANNOTATIONWRITER_H #define LLVM_ASSEMBLY_ASMANNOTATIONWRITER_H namespace llvm { class Function; class BasicBlock; class Instruction; class Value; class formatted_raw_ostream; class AssemblyAnnotationWriter { public: virtual ~AssemblyAnnotationWriter(); /// emitFunctionAnnot - This may be implemented to emit a string right before /// the start of a function. virtual void emitFunctionAnnot(const Function *, formatted_raw_ostream &) {} /// emitBasicBlockStartAnnot - This may be implemented to emit a string right /// after the basic block label, but before the first instruction in the /// block. virtual void emitBasicBlockStartAnnot(const BasicBlock *, formatted_raw_ostream &) { } /// emitBasicBlockEndAnnot - This may be implemented to emit a string right /// after the basic block. virtual void emitBasicBlockEndAnnot(const BasicBlock *, formatted_raw_ostream &) { } /// emitInstructionAnnot - This may be implemented to emit a string right /// before an instruction is emitted. virtual void emitInstructionAnnot(const Instruction *, formatted_raw_ostream &) {} /// printInfoComment - This may be implemented to emit a comment to the /// right of an instruction or global value. virtual void printInfoComment(const Value &, formatted_raw_ostream &) {} }; } // End llvm namespace #endif