diff options
author | Chris Lattner <sabre@nondot.org> | 2003-10-30 23:39:52 +0000 |
---|---|---|
committer | Chris Lattner <sabre@nondot.org> | 2003-10-30 23:39:52 +0000 |
commit | 0836bf7bcf5d62393eb6c01f775368d43e3d45cb (patch) | |
tree | d8d4fee46b027cfd2c2c8c8e9ace2bf2fd3c69bf | |
parent | 3ceac85296b5b0d6dd40daa49d529a56021dd51a (diff) |
New interface
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9618 91177308-0d34-0410-b5e6-96231b3b80d8
-rw-r--r-- | include/llvm/Assembly/AsmAnnotationWriter.h | 40 |
1 files changed, 40 insertions, 0 deletions
diff --git a/include/llvm/Assembly/AsmAnnotationWriter.h b/include/llvm/Assembly/AsmAnnotationWriter.h new file mode 100644 index 0000000000..192cb3de0b --- /dev/null +++ b/include/llvm/Assembly/AsmAnnotationWriter.h @@ -0,0 +1,40 @@ +//===-- AsmAnnotationWriter.h - Itf for annotation .ll files - --*- C++ -*-===// +// +// The LLVM Compiler Infrastructure +// +// This file was developed by the LLVM research group and 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 + +#include <iosfwd> +class Function; +class BasicBlock; +class Instruction; + +struct AssemblyAnnotationWriter { + + // emitFunctionAnnot - This may be implemented to emit a string right before + // the start of a function. + virtual void emitFunctionAnnot(const Function *F, std::ostream &OS) {} + + // emitBasicBlockAnnot - This may be implemented to emit a string right after + // the basic block label, but before the first instruction in the block. + virtual void emitBasicBlockAnnot(const BasicBlock *BB, std::ostream &OS) {} + + // emitInstructionAnnot - This may be implemented to emit a string right + // before an instruction is emitted. + virtual void emitInstructionAnnot(const Instruction *I, std::ostream &OS) {} +}; + +#endif |