9#ifndef LLVM_LIB_OBJECT_RECORDSTREAMER_H
10#define LLVM_LIB_OBJECT_RECORDSTREAMER_H
40 void markDefined(
const MCSymbol &Symbol);
42 void markUsed(
const MCSymbol &Symbol);
54 Align ByteAlignment)
override;
66 bool KeepOriginalSym)
override;
This file defines the StringMap class.
This file defines the DenseMap class.
Machine Check Debug Module
Context object for machine code objects.
Base class for the full range of assembler expressions which are needed for parsing.
Instances of this class represent a uniqued identifier for a section in the current translation unit.
Streaming machine code generation interface.
MCSymbol - Instances of this class represent a symbol name in the MC file, and MCSymbols are created ...
A Module instance is used to store all the information related to an LLVM module.
decltype(SymverAliasMap)::const_iterator const_symver_iterator
void emitZerofill(MCSection *Section, MCSymbol *Symbol, uint64_t Size, Align ByteAlignment, SMLoc Loc=SMLoc()) override
Emit the zerofill section and an optional symbol.
void endCOFFSymbolDef() override
Marks the end of the symbol definition.
bool emitSymbolAttribute(MCSymbol *Symbol, MCSymbolAttr Attribute) override
Add the given Attribute to Symbol.
void emitCommonSymbol(MCSymbol *Symbol, uint64_t Size, Align ByteAlignment) override
Emit a common symbol.
void emitELFSymverDirective(const MCSymbol *OriginalSym, StringRef Name, bool KeepOriginalSym) override
Record .symver aliases for later processing.
void emitAssignment(MCSymbol *Symbol, const MCExpr *Value) override
Emit an assignment of Value to Symbol.
iterator_range< const_symver_iterator > symverAliases()
void emitCOFFSymbolStorageClass(int StorageClass) override
Emit the storage class of the symbol.
StringMap< State >::const_iterator const_iterator
void beginCOFFSymbolDef(const MCSymbol *Symbol) override
Start emitting COFF symbol definition.
void emitLabel(MCSymbol *Symbol, SMLoc Loc=SMLoc()) override
Emit a label for Symbol into the current section.
void flushSymverDirectives()
void emitCOFFSymbolType(int Type) override
Emit the type of the symbol.
Represents a location in source code.
StringMap - This is an unconventional map that is specialized for handling keys that are "strings",...
StringRef - Represent a constant reference to a string, i.e.
The instances of the Type class are immutable: once they are created, they are never changed.
LLVM Value Representation.
A range adaptor for a pair of iterators.
This is an optimization pass for GlobalISel generic memory operations.
This struct is a compact representation of a valid (non-zero power of two) alignment.