llvm::WinCOFFObjectWriter

Win COFF object writer that emits COFF object files from an MCAssembler.

Synopsis

Declared in <llvm/MC/MCWinCOFFObjectWriter.h>

class WinCOFFObjectWriter final
    : public MCObjectWriter

Base Classes

NameDescription
MCObjectWriterDefines the object file and target independent interfaces used by the assembler backend to write native file format object files.

Member Functions

NameDescription
WinCOFFObjectWriter [constructor]Constructors
operator= [deleted]Deleted copy assignment operator.
addAddrsigSymbol Record the given symbol in the address-significance table to be written diring writeObject().
addFileName Append a declared input file name.
emitAddrsigSection Request emission of an address-significance table.
executePostLayoutBinding [virtual]Perform late binding of symbols after layout.
getAddrsigSyms Return the symbols recorded for the address-significance table.
getCGProfile Return the call-graph profile entries to emit.
getContext Get the MC context associated with the assembler.
getEmitAddrsigSection Return whether an address-significance section will be emitted.
getFileNames Return the list of declared input file names.
getSectionNumber Return the one-based COFF section number for Section.
getSubsectionsViaSymbols Return whether Mach-O .subsections_via_symbols is enabled.
isSymbolRefDifferenceFullyResolved Check whether the difference (A - B) between two symbol references is fully resolved.
isSymbolRefDifferenceFullyResolvedImpl [virtual]Check whether the difference between SymA and FB is fully resolved.
recordRelocation [virtual]Record a Win COFF relocation for fixup Fixup in fragment F.
reset [virtual]Reset writer state for reuse.
setAssembler [virtual]Set the assembler used by this writer and its helpers.
setCompilerVersion Set the optional compiler version string (XCOFF).
setIncrementalLinkerCompatible Set whether the object should be incremental-linker compatible.
setSubsectionsViaSymbols Enable or disable Mach-O .subsections_via_symbols.
writeObject [virtual]Write the Win COFF object file and return the number of bytes written.

Protected Types

NameDescription
CGProfileEntry One call-graph profile edge with a from/to pair and edge weight.

Protected Data Members

NameDescription
AddrsigSyms Symbols to record in the address-significance table.
Asm Assembler that owns this object writer, or null if unset.
CGProfile Accumulated call-graph profile edges to emit.
CompilerVersion Optional compiler version string (XCOFF-specific).
EmitAddrsigSection True if an address-significance section should be emitted.
FileNames List of declared file names
SubsectionsViaSymbols True if Mach-O .subsections_via_symbols is enabled.

Friends

NameDescription
llvm::WinCOFFWriterHelper that emits one Win COFF object stream (main or DWO).