llvm::TargetLoweringObjectFileCOFF

Synopsis

Declared in <llvm/CodeGen/TargetLoweringObjectFileImpl.h>

class TargetLoweringObjectFileCOFF
    : public TargetLoweringObjectFile

Base Classes

NameDescription
TargetLoweringObjectFile

Member Functions

NameDescription
~TargetLoweringObjectFileCOFF [destructor] [virtual]Destructor
operator= [deleted]Copy assignment operator
Initialize This method must be called before any actual lowering is done. This specifies the current context for codegen, and gives the lowering implementations a chance to set up their default sections.
SectionForGlobal This method computes the appropriate section to emit the specified global variable or function definition. This should not be passed external (or available externally) globals.
SelectSectionForGlobal [virtual]
emitCGProfileMetadata Emit Call Graph Profile metadata.
emitLinkerDirectives [virtual]
emitModuleMetadata [virtual]Emit Obj-C garbage collection and linker options.
emitPersonalityValue [virtual]
emitPseudoProbeDescMetadata Emit pseudo_probe_desc metadata.
getADASection
getAddrSigSection
getBBAddrMapSection
getBSSSection
getCFIPersonalitySymbol [virtual]
getCOFFDebugSymbolsSection
getCOFFDebugTypesSection
getCOFFGlobalTypeHashesSection
getCStringSection
getCallGraphSection
getCallSiteEncoding
getCompactUnwindDwarfEHFrameOnly
getCompactUnwindSection
getConstDataCoalSection
getConstDataSection
getConstTextCoalSection
getContext
getDataBSSSection
getDataCoalSection
getDataCommonSection
getDataSection
getDebugThreadLocalSymbol [virtual]Create a symbol reference to describe the given TLS variable when emitting the address in debug info.
getDrectveSection
getDwarfARangesSection
getDwarfAbbrevDWOSection
getDwarfAbbrevSection
getDwarfAccelNamesSection
getDwarfAccelNamespaceSection
getDwarfAccelObjCSection
getDwarfAccelTypesSection
getDwarfAddrSection
getDwarfCUIndexSection
getDwarfDebugInlineSection
getDwarfDebugNamesSection
getDwarfFrameSection
getDwarfGnuPubNamesSection
getDwarfGnuPubTypesSection
getDwarfInfoDWOSection
getDwarfInfoSection
getDwarfLineDWOSection
getDwarfLineSection
getDwarfLineStrSection
getDwarfLocDWOSection
getDwarfLocSection
getDwarfLoclistsDWOSection
getDwarfLoclistsSection
getDwarfMacinfoDWOSection
getDwarfMacinfoSection
getDwarfMacroDWOSection
getDwarfMacroSection
getDwarfPubNamesSection
getDwarfPubTypesSection
getDwarfRangesSection
getDwarfRnglistsDWOSection
getDwarfRnglistsSection
getDwarfStrDWOSection
getDwarfStrOffDWOSection
getDwarfStrOffSection
getDwarfStrSection
getDwarfSwiftASTSection
getDwarfTUIndexSection
getDwarfTypesDWOSection
getDwarfTypesSection
getEHFrameSection
getEightByteConstantSection
getExplicitSectionGlobal [virtual]
getFDEEncoding
getFaultMapSection
getFourByteConstantSection
getFunctionEntryPointSymbol [virtual]If supported, return the function entry point symbol. Otherwise, returns nullptr. Func must be a function or an alias which has a function as base object.
getGEHContSection
getGFIDsSection
getGIATsSection
getGLJMPSection
getIDRLSection
getImportCallSection
getIndirectSymViaGOTPCRel [virtual]Get the target specific PC relative GOT entry relocation
getIndirectSymViaRWPI [virtual]Get the target specific RWPI relocation.
getKCFITrapSection
getLLVMStatsSection
getLSDAEncoding
getLSDASection
getLazySymbolPointerSection
getMangler
getModuleMetadata [virtual]Get the module-level metadata that the platform cares about.
getNameWithPrefix [virtual]
getNonLazySymbolPointerSection
getOmitDwarfIfHaveCompactUnwind
getPCSection
getPDataSection
getPPA2ListSection
getPersonalityEncoding
getPseudoProbeDescSection
getPseudoProbeSection
getReadOnlySection
getRemarksSection
getSFrameABIArch
getSFrameSection
getSXDataSection
getSectionForCommandLines [virtual]If supported, return the section to use for the llvm.commandline metadata. Otherwise, return nullptr.
getSectionForConstant getSectionForConstant overloads
getSectionForExternalReference [virtual]On targets that associate external references with a section, return such a section for the given external global.
getSectionForFunctionDescriptor [virtual]On targets that use separate function descriptor symbols, return a section for the descriptor given its symbol. Use only with defined functions.
getSectionForJumpTable
getSectionForLSDA [virtual]
getSectionForMachineBasicBlock [virtual]
getSectionForTOCEntry [virtual]On targets that support TOC entries, return a section for the entry given the symbol it refers to. TODO: Implement this interface for existing ELF targets.
getSixteenByteConstantSection
getStackMapSection
getStackSizesSection
getStaticBase [virtual]Returns the register used as static base in RWPI variants.
getStaticCtorSection [virtual]
getStaticDtorSection [virtual]
getSupportsCompactUnwindWithoutEHFrame
getSwift5ReflectionSection
getSymbolWithGlobalValueBase Return the MCSymbol for a private symbol with global value name as its base, with the specified suffix.
getTLSBSSSection
getTLSDataSection
getTLSExtraDataSection
getTLSTLVSection
getTLSThreadInitSection
getTOCBaseSection
getTTypeEncoding
getTTypeGlobalReference [virtual]Return an MCExpr to use for a reference to the specified global variable from exception handling information.
getTTypeReference
getTargetSymbol [virtual]Targets that have a special convention for their symbols could use this hook to return a specialized symbol.
getTextCoalSection
getTextSection
getTextSectionAlignment [virtual]
getThreadLocalPointerSection
getUStringSection
getUniqueSectionForFunction [virtual]
getXDataSection
hasPLTPCRelative Target supports a PC-relative relocation that references the PLT of a function.
initMCObjectFileInfo
isPositionIndependent
lowerDSOLocalEquivalent [virtual]
lowerRelativeReference [virtual]
shouldPutJumpTableInFunctionSection [virtual]
supportDebugThreadLocalLocation Target supports TLS offset relocation in debug section?
supportGOTPCRelWithOffset Target GOT "PC"-relative relocation supports encoding an additional binary expression with an offset?
supportIndirectSymViaGOTPCRel Target supports replacing a data "PC"-relative access to a symbol through another symbol, by accessing the later via a GOT entry instead?

Static Member Functions

NameDescription
getCustomSectionName Return the section name specified by '#pragma clang section' or the section attribute.
getKindForGlobal Classify the specified global variable into a set of target independent categories embodied in SectionKind.

Protected Member Functions

Name
SelectSectionForGlobal [virtual]

Protected Data Members

NameDescription
ADASection
AddrSigSection
BSSSection Section that is default initialized to zero.
COFFDebugSymbolsSection
COFFDebugTypesSection
COFFGlobalTypeHashesSection
CStringSection
CallGraphSection Section containing call graph metadata.
CallSiteEncoding
CompactUnwindDwarfEHFrameOnly Compact unwind encoding indicating that we should emit only an EH frame.
CompactUnwindSection If exception handling is supported by the target and the target can support a compact representation of the CIE and FDE, this is the section to emit them into.
ConstDataCoalSection
ConstDataSection
ConstTextCoalSection
DataBSSSection
DataCoalSection
DataCommonSection
DataRelROSection
DataSection Section directive for standard data.
DrectveSection COFF specific sections.
DwarfARangesSection
DwarfAbbrevDWOSection
DwarfAbbrevSection
DwarfAccelNamesSection
DwarfAccelNamespaceSection
DwarfAccelObjCSection
DwarfAccelTypesSection
DwarfAddrSection
DwarfCUIndexSection
DwarfDebugInlineSection
DwarfDebugNamesSection Accelerator table sections. DwarfDebugNamesSection is the DWARF v5 accelerator table, while DwarfAccelNamesSection, DwarfAccelObjCSection, DwarfAccelNamespaceSection, DwarfAccelTypesSection are pre-DWARF v5 extensions.
DwarfFrameSection
DwarfGnuPubNamesSection Section for newer gnu pubnames.
DwarfGnuPubTypesSection Section for newer gnu pubtypes.
DwarfInfoDWOSection
DwarfInfoSection
DwarfLineDWOSection
DwarfLineSection
DwarfLineStrSection
DwarfLocDWOSection
DwarfLocSection
DwarfLoclistsDWOSection
DwarfLoclistsSection The DWARF v5 locations list section.
DwarfMacinfoDWOSection
DwarfMacinfoSection
DwarfMacroDWOSection
DwarfMacroSection
DwarfPubNamesSection
DwarfPubTypesSection
DwarfRangesSection
DwarfRnglistsDWOSection The DWARF v5 range and location list sections for fission.
DwarfRnglistsSection The DWARF v5 range list section.
DwarfStrDWOSection
DwarfStrOffDWOSection
DwarfStrOffSection The DWARF v5 string offset and address table sections.
DwarfStrSection
DwarfSwiftASTSection
DwarfTUIndexSection
DwarfTypesDWOSection
EHFrameSection EH frame section.
EightByteConstantSection
FDECFIEncoding FDE CFI encoding. Controls the encoding of the begin label in the .eh_frame section. Unlike the LSDA encoding, personality encoding, and type encodings, this is something that the assembler just "knows" about its target
FaultMapSection FaultMap section.
FourByteConstantSection
GEHContSection
GFIDsSection
GIATsSection
GLJMPSection
IDRLSection
ImportCallSection If import call optimization is supported by the target, this is the section to emit import call data to.
LLVMStatsSection
LSDAEncoding
LSDASection If exception handling is supported by the target, this is the section the Language Specific Data Area information is emitted to.
LazySymbolPointerSection
MergeableConst16Section
MergeableConst32Section
MergeableConst4Section
MergeableConst8Section
NonLazySymbolPointerSection
OmitDwarfIfHaveCompactUnwind OmitDwarfIfHaveCompactUnwind - True if the target object file supports having some functions with compact unwind and other with dwarf unwind.
PDataSection
PLTPCRelativeSpecifier
PPA2ListSection
PersonalityEncoding PersonalityEncoding, LSDAEncoding, TTypeEncoding - Some encoding values for EH.
PseudoProbeDescSection
PseudoProbeSection Section for pseudo probe information used by AutoFDO
ReadOnly16Section
ReadOnly8Section
ReadOnlySection Section that is readonly and can contain arbitrary initialized data. Targets are not required to have a readonly section. If they don't, various bits of code will fall back to using the data section for constants.
RemarksSection Remarks section.
SFrameABIArch SFrame ABI architecture byte.
SFrameSection SFrame section.
SXDataSection
SixteenByteConstantSection
StackMapSection StackMap section.
StackSizesSection Section containing metadata on function stack sizes.
StaticCtorSection This section contains the static constructor pointer list.
StaticDtorSection This section contains the static destructor pointer list.
SupportDebugThreadLocalLocation
SupportGOTPCRelWithOffset
SupportIndirectSymViaGOTPCRel
SupportsCompactUnwindWithoutEHFrame True if the target object file supports emitting a compact unwind section without an associated EH frame section.
Swift5ReflectionSections
TLSBSSSection Section directive for Thread Local uninitialized data.
TLSDataSection Section directive for Thread Local data. ELF, MachO, COFF, and Wasm.
TLSExtraDataSection Extra TLS Variable Data section.
TLSTLVSection Section for thread local structure information.
TLSThreadInitSection Section for thread local data initialization functions.
TM
TOCBaseSection
TTypeEncoding
TextCoalSection
TextSection Section directive for standard text.
ThreadLocalPointerSection
UStringSection
XDataSection