diff options
author | Chris Lattner <sabre@nondot.org> | 2010-05-08 19:54:22 +0000 |
---|---|---|
committer | Chris Lattner <sabre@nondot.org> | 2010-05-08 19:54:22 +0000 |
commit | b54b9ddaaf2d258767d360583642ed1b91075fc9 (patch) | |
tree | 31663b236029e4a0009bd0b052f157a90c986453 /include | |
parent | 369252db2e517de6ccc9851395a9e7ae75d2130d (diff) | |
download | llvm-b54b9ddaaf2d258767d360583642ed1b91075fc9.tar.gz llvm-b54b9ddaaf2d258767d360583642ed1b91075fc9.tar.bz2 llvm-b54b9ddaaf2d258767d360583642ed1b91075fc9.tar.xz |
break coff symbol definition stuff out into proper MCStreamer callbacks,
patch by Nathan Jeffords!
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@103346 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'include')
-rw-r--r-- | include/llvm/MC/MCStreamer.h | 21 |
1 files changed, 19 insertions, 2 deletions
diff --git a/include/llvm/MC/MCStreamer.h b/include/llvm/MC/MCStreamer.h index 4667c41d62..9e9f68a8da 100644 --- a/include/llvm/MC/MCStreamer.h +++ b/include/llvm/MC/MCStreamer.h @@ -27,7 +27,7 @@ namespace llvm { class MCSection; class MCSymbol; class StringRef; -class TargetAsmBackend; + class TargetAsmBackend; class Twine; class raw_ostream; class formatted_raw_ostream; @@ -138,7 +138,24 @@ class TargetAsmBackend; /// @param DescValue - The value to set into the n_desc field. virtual void EmitSymbolDesc(MCSymbol *Symbol, unsigned DescValue) = 0; - + /// BeginCOFFSymbolDef - Start emitting COFF symbol definition + /// + /// @param Symbol - The symbol to have its External & Type fields set. + virtual void BeginCOFFSymbolDef(const MCSymbol *Symbol) = 0; + + /// EmitCOFFSymbolStorageClass - Emit the storage class of the symbol. + /// + /// @param StorageClass - The storage class the symbol should have. + virtual void EmitCOFFSymbolStorageClass(int StorageClass) = 0; + + /// EmitCOFFSymbolType - Emit the type of the symbol. + /// + /// @param Type - A COFF type identifier (see COFF::SymbolType in X86COFF.h) + virtual void EmitCOFFSymbolType(int Type) = 0; + + /// EndCOFFSymbolDef - Marks the end of the symbol definition. + virtual void EndCOFFSymbolDef() = 0; + /// EmitELFSize - Emit an ELF .size directive. /// /// This corresponds to an assembler statement such as: |