9#ifndef LLVM_MC_MCWINCOFFSTREAMER_H
10#define LLVM_MC_MCWINCOFFSTREAMER_H
31 std::unique_ptr<MCCodeEmitter> CE,
32 std::unique_ptr<MCObjectWriter> OW);
49 void emitSymbolDesc(
MCSymbol *Symbol,
unsigned DescValue)
override;
50 void beginCOFFSymbolDef(
MCSymbol const *Symbol)
override;
51 void emitCOFFSymbolStorageClass(
int StorageClass)
override;
52 void emitCOFFSymbolType(
int Type)
override;
53 void endCOFFSymbolDef()
override;
54 void emitCOFFSafeSEH(
MCSymbol const *Symbol)
override;
55 void emitCOFFSymbolIndex(
MCSymbol const *Symbol)
override;
56 void emitCOFFSectionIndex(
MCSymbol const *Symbol)
override;
58 void emitCOFFImgRel32(
MCSymbol const *Symbol, int64_t
Offset)
override;
59 void emitCOFFSecNumber(
MCSymbol const *Symbol)
override;
60 void emitCOFFSecOffset(
MCSymbol const *Symbol)
override;
62 Align ByteAlignment)
override;
64 Align ByteAlignment)
override;
66 void emitIdent(
StringRef IdentString)
override;
67 void emitWinEHHandlerData(
SMLoc Loc)
override;
70 void finishImpl()
override;
80 void Error(
const Twine &Msg)
const;
Functions, function parameters, and return types can have attributes to indicate how they should be t...
Generic interface to target specific assembler backends.
MCCodeEmitter - Generic instruction encoding interface.
Context object for machine code objects.
Instances of this class represent a single low-level machine instruction.
void reset() override
state management
MCObjectStreamer(MCContext &Context, std::unique_ptr< MCAsmBackend > TAB, std::unique_ptr< MCObjectWriter > OW, std::unique_ptr< MCCodeEmitter > Emitter)
Instances of this class represent a uniqued identifier for a section in the current translation unit.
Generic base class for all target subtargets.
Represent a reference to a symbol from inside an expression.
MCSymbol - Instances of this class represent a symbol name in the MC file, and MCSymbols are created ...
void finalizeCGProfileEntry(const MCSymbolRefExpr *&S)
MCWinCOFFStreamer(MCContext &Context, std::unique_ptr< MCAsmBackend > MAB, std::unique_ptr< MCCodeEmitter > CE, std::unique_ptr< MCObjectWriter > OW)
void reset() override
state management
Represents a location in source code.
Represent a constant reference to a string, i.e.
Twine - A lightweight data structure for efficiently representing the concatenation of temporary valu...
The instances of the Type class are immutable: once they are created, they are never changed.
An abstract base class for streams implementations that also support a pwrite operation.
This is an optimization pass for GlobalISel generic memory operations.
FunctionAddr VTableAddr Count
This struct is a compact representation of a valid (non-zero power of two) alignment.