LLVM  6.0.0svn
Public Types | Public Member Functions | Protected Attributes | List of all members
llvm::MCObjectFileInfo Class Reference

#include "llvm/MC/MCObjectFileInfo.h"

Inheritance diagram for llvm::MCObjectFileInfo:
Inheritance graph
[legend]
Collaboration diagram for llvm::MCObjectFileInfo:
Collaboration graph
[legend]

Public Types

enum  Environment { IsMachO, IsELF, IsCOFF, IsWasm }
 

Public Member Functions

void InitMCObjectFileInfo (const Triple &TT, bool PIC, MCContext &ctx, bool LargeCodeModel=false)
 
bool getSupportsWeakOmittedEHFrame () const
 
bool getSupportsCompactUnwindWithoutEHFrame () const
 
bool getOmitDwarfIfHaveCompactUnwind () const
 
bool getCommDirectiveSupportsAlignment () const
 
unsigned getPersonalityEncoding () const
 
unsigned getLSDAEncoding () const
 
unsigned getFDEEncoding () const
 
unsigned getTTypeEncoding () const
 
unsigned getCompactUnwindDwarfEHFrameOnly () const
 
MCSectiongetTextSection () const
 
MCSectiongetDataSection () const
 
MCSectiongetBSSSection () const
 
MCSectiongetReadOnlySection () const
 
MCSectiongetLSDASection () const
 
MCSectiongetCompactUnwindSection () const
 
MCSectiongetDwarfAbbrevSection () const
 
MCSectiongetDwarfInfoSection () const
 
MCSectiongetDwarfLineSection () const
 
MCSectiongetDwarfFrameSection () const
 
MCSectiongetDwarfPubNamesSection () const
 
MCSectiongetDwarfPubTypesSection () const
 
MCSectiongetDwarfGnuPubNamesSection () const
 
MCSectiongetDwarfGnuPubTypesSection () const
 
const MCSectiongetDwarfDebugInlineSection () const
 
MCSectiongetDwarfStrSection () const
 
MCSectiongetDwarfLocSection () const
 
MCSectiongetDwarfARangesSection () const
 
MCSectiongetDwarfRangesSection () const
 
MCSectiongetDwarfMacinfoSection () const
 
MCSectiongetDwarfAccelNamesSection () const
 
MCSectiongetDwarfAccelObjCSection () const
 
MCSectiongetDwarfAccelNamespaceSection () const
 
MCSectiongetDwarfAccelTypesSection () const
 
MCSectiongetDwarfInfoDWOSection () const
 
MCSectiongetDwarfTypesSection (uint64_t Hash) const
 
MCSectiongetDwarfTypesDWOSection () const
 
MCSectiongetDwarfAbbrevDWOSection () const
 
MCSectiongetDwarfStrDWOSection () const
 
MCSectiongetDwarfLineDWOSection () const
 
MCSectiongetDwarfLocDWOSection () const
 
MCSectiongetDwarfStrOffDWOSection () const
 
MCSectiongetDwarfStrOffSection () const
 
MCSectiongetDwarfAddrSection () const
 
MCSectiongetDwarfCUIndexSection () const
 
MCSectiongetDwarfTUIndexSection () const
 
MCSectiongetDwarfSwiftASTSection () const
 
MCSectiongetCOFFDebugSymbolsSection () const
 
MCSectiongetCOFFDebugTypesSection () const
 
MCSectiongetTLSExtraDataSection () const
 
const MCSectiongetTLSDataSection () const
 
MCSectiongetTLSBSSSection () const
 
MCSectiongetStackMapSection () const
 
MCSectiongetFaultMapSection () const
 
MCSectiongetDataRelROSection () const
 
const MCSectiongetMergeableConst4Section () const
 
const MCSectiongetMergeableConst8Section () const
 
const MCSectiongetMergeableConst16Section () const
 
const MCSectiongetMergeableConst32Section () const
 
const MCSectiongetTLSTLVSection () const
 
const MCSectiongetTLSThreadInitSection () const
 
const MCSectiongetCStringSection () const
 
const MCSectiongetUStringSection () const
 
MCSectiongetTextCoalSection () const
 
const MCSectiongetConstTextCoalSection () const
 
const MCSectiongetConstDataSection () const
 
const MCSectiongetDataCoalSection () const
 
const MCSectiongetDataCommonSection () const
 
MCSectiongetDataBSSSection () const
 
const MCSectiongetFourByteConstantSection () const
 
const MCSectiongetEightByteConstantSection () const
 
const MCSectiongetSixteenByteConstantSection () const
 
MCSectiongetLazySymbolPointerSection () const
 
MCSectiongetNonLazySymbolPointerSection () const
 
MCSectiongetThreadLocalPointerSection () const
 
MCSectiongetDrectveSection () const
 
MCSectiongetPDataSection () const
 
MCSectiongetXDataSection () const
 
MCSectiongetSXDataSection () const
 
MCSectiongetEHFrameSection ()
 
Environment getObjectFileType () const
 
bool isPositionIndependent () const
 
const TriplegetTargetTriple () const
 

Protected Attributes

bool CommDirectiveSupportsAlignment
 True if .comm supports alignment. More...
 
bool SupportsWeakOmittedEHFrame
 True if target object file supports a weak_definition of constant 0 for an omitted EH frame. More...
 
bool SupportsCompactUnwindWithoutEHFrame
 True if the target object file supports emitting a compact unwind section without an associated EH frame section. More...
 
bool OmitDwarfIfHaveCompactUnwind
 OmitDwarfIfHaveCompactUnwind - True if the target object file supports having some functions with compact unwind and other with dwarf unwind. More...
 
unsigned PersonalityEncoding
 PersonalityEncoding, LSDAEncoding, TTypeEncoding - Some encoding values for EH. More...
 
unsigned LSDAEncoding
 
unsigned FDECFIEncoding
 
unsigned TTypeEncoding
 
unsigned CompactUnwindDwarfEHFrameOnly
 Compact unwind encoding indicating that we should emit only an EH frame. More...
 
MCSectionTextSection
 Section directive for standard text. More...
 
MCSectionDataSection
 Section directive for standard data. More...
 
MCSectionBSSSection
 Section that is default initialized to zero. More...
 
MCSectionReadOnlySection
 Section that is readonly and can contain arbitrary initialized data. More...
 
MCSectionLSDASection
 If exception handling is supported by the target, this is the section the Language Specific Data Area information is emitted to. More...
 
MCSectionCompactUnwindSection
 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. More...
 
MCSectionDwarfAbbrevSection
 
MCSectionDwarfInfoSection
 
MCSectionDwarfLineSection
 
MCSectionDwarfFrameSection
 
MCSectionDwarfPubTypesSection
 
const MCSectionDwarfDebugInlineSection
 
MCSectionDwarfStrSection
 
MCSectionDwarfLocSection
 
MCSectionDwarfARangesSection
 
MCSectionDwarfRangesSection
 
MCSectionDwarfMacinfoSection
 
MCSectionDwarfPubNamesSection
 
MCSectionDwarfAccelNamesSection
 DWARF5 Experimental Debug Info Sections DwarfAccelNamesSection, DwarfAccelObjCSection, DwarfAccelNamespaceSection, DwarfAccelTypesSection - If we use the DWARF accelerated hash tables then we want to emit these sections. More...
 
MCSectionDwarfAccelObjCSection
 
MCSectionDwarfAccelNamespaceSection
 
MCSectionDwarfAccelTypesSection
 
MCSectionDwarfInfoDWOSection
 
MCSectionDwarfTypesDWOSection
 
MCSectionDwarfAbbrevDWOSection
 
MCSectionDwarfStrDWOSection
 
MCSectionDwarfLineDWOSection
 
MCSectionDwarfLocDWOSection
 
MCSectionDwarfStrOffDWOSection
 
MCSectionDwarfStrOffSection
 The DWARF v5 string offset and address table sections. More...
 
MCSectionDwarfAddrSection
 
MCSectionDwarfCUIndexSection
 
MCSectionDwarfTUIndexSection
 
MCSectionDwarfGnuPubNamesSection
 Section for newer gnu pubnames. More...
 
MCSectionDwarfGnuPubTypesSection
 Section for newer gnu pubtypes. More...
 
MCSectionDwarfSwiftASTSection
 
MCSectionCOFFDebugSymbolsSection
 
MCSectionCOFFDebugTypesSection
 
MCSectionTLSExtraDataSection
 Extra TLS Variable Data section. More...
 
MCSectionTLSDataSection
 Section directive for Thread Local data. ELF, MachO, COFF, and Wasm. More...
 
MCSectionTLSBSSSection
 Section directive for Thread Local uninitialized data. More...
 
MCSectionStackMapSection
 StackMap section. More...
 
MCSectionFaultMapSection
 FaultMap section. More...
 
MCSectionEHFrameSection
 EH frame section. More...
 
MCSectionDataRelROSection
 
MCSectionMergeableConst4Section
 
MCSectionMergeableConst8Section
 
MCSectionMergeableConst16Section
 
MCSectionMergeableConst32Section
 
MCSectionTLSTLVSection
 Section for thread local structure information. More...
 
const MCSectionTLSThreadInitSection
 Section for thread local data initialization functions. More...
 
MCSectionCStringSection
 
MCSectionUStringSection
 
MCSectionTextCoalSection
 
MCSectionConstTextCoalSection
 
MCSectionConstDataSection
 
MCSectionDataCoalSection
 
MCSectionDataCommonSection
 
MCSectionDataBSSSection
 
MCSectionFourByteConstantSection
 
MCSectionEightByteConstantSection
 
MCSectionSixteenByteConstantSection
 
MCSectionLazySymbolPointerSection
 
MCSectionNonLazySymbolPointerSection
 
MCSectionThreadLocalPointerSection
 
MCSectionDrectveSection
 COFF specific sections. More...
 
MCSectionPDataSection
 
MCSectionXDataSection
 
MCSectionSXDataSection
 

Detailed Description

Definition at line 24 of file MCObjectFileInfo.h.

Member Enumeration Documentation

◆ Environment

Enumerator
IsMachO 
IsELF 
IsCOFF 
IsWasm 

Definition at line 349 of file MCObjectFileInfo.h.

Member Function Documentation

◆ getBSSSection()

MCSection* llvm::MCObjectFileInfo::getBSSSection ( ) const
inline

◆ getCOFFDebugSymbolsSection()

MCSection* llvm::MCObjectFileInfo::getCOFFDebugSymbolsSection ( ) const
inline

◆ getCOFFDebugTypesSection()

MCSection* llvm::MCObjectFileInfo::getCOFFDebugTypesSection ( ) const
inline

Definition at line 278 of file MCObjectFileInfo.h.

References COFFDebugTypesSection.

Referenced by emitNullTerminatedSymbolName().

◆ getCommDirectiveSupportsAlignment()

bool llvm::MCObjectFileInfo::getCommDirectiveSupportsAlignment ( ) const
inline

Definition at line 210 of file MCObjectFileInfo.h.

References CommDirectiveSupportsAlignment.

Referenced by llvm::AsmPrinter::EmitGlobalVariable().

◆ getCompactUnwindDwarfEHFrameOnly()

unsigned llvm::MCObjectFileInfo::getCompactUnwindDwarfEHFrameOnly ( ) const
inline

◆ getCompactUnwindSection()

MCSection* llvm::MCObjectFileInfo::getCompactUnwindSection ( ) const
inline

Definition at line 228 of file MCObjectFileInfo.h.

References CompactUnwindSection.

Referenced by llvm::MCDwarfFrameEmitter::Emit().

◆ getConstDataSection()

const MCSection* llvm::MCObjectFileInfo::getConstDataSection ( ) const
inline

Definition at line 316 of file MCObjectFileInfo.h.

References ConstDataSection.

◆ getConstTextCoalSection()

const MCSection* llvm::MCObjectFileInfo::getConstTextCoalSection ( ) const
inline

Definition at line 313 of file MCObjectFileInfo.h.

References ConstTextCoalSection.

◆ getCStringSection()

const MCSection* llvm::MCObjectFileInfo::getCStringSection ( ) const
inline

Definition at line 310 of file MCObjectFileInfo.h.

References CStringSection.

◆ getDataBSSSection()

MCSection* llvm::MCObjectFileInfo::getDataBSSSection ( ) const
inline

Definition at line 319 of file MCObjectFileInfo.h.

References DataBSSSection.

◆ getDataCoalSection()

const MCSection* llvm::MCObjectFileInfo::getDataCoalSection ( ) const
inline

Definition at line 317 of file MCObjectFileInfo.h.

References DataCoalSection.

◆ getDataCommonSection()

const MCSection* llvm::MCObjectFileInfo::getDataCommonSection ( ) const
inline

Definition at line 318 of file MCObjectFileInfo.h.

References DataCommonSection.

◆ getDataRelROSection()

MCSection* llvm::MCObjectFileInfo::getDataRelROSection ( ) const
inline

Definition at line 291 of file MCObjectFileInfo.h.

References DataRelROSection.

◆ getDataSection()

MCSection* llvm::MCObjectFileInfo::getDataSection ( ) const
inline

◆ getDrectveSection()

MCSection* llvm::MCObjectFileInfo::getDrectveSection ( ) const
inline

◆ getDwarfAbbrevDWOSection()

MCSection* llvm::MCObjectFileInfo::getDwarfAbbrevDWOSection ( ) const
inline

Definition at line 264 of file MCObjectFileInfo.h.

References DwarfAbbrevDWOSection.

◆ getDwarfAbbrevSection()

MCSection* llvm::MCObjectFileInfo::getDwarfAbbrevSection ( ) const
inline

◆ getDwarfAccelNamespaceSection()

MCSection* llvm::MCObjectFileInfo::getDwarfAccelNamespaceSection ( ) const
inline

Definition at line 255 of file MCObjectFileInfo.h.

References DwarfAccelNamespaceSection.

Referenced by llvm::DwarfDebug::endFunctionImpl().

◆ getDwarfAccelNamesSection()

MCSection* llvm::MCObjectFileInfo::getDwarfAccelNamesSection ( ) const
inline

Definition at line 251 of file MCObjectFileInfo.h.

References DwarfAccelNamesSection.

Referenced by llvm::DwarfDebug::endFunctionImpl().

◆ getDwarfAccelObjCSection()

MCSection* llvm::MCObjectFileInfo::getDwarfAccelObjCSection ( ) const
inline

Definition at line 254 of file MCObjectFileInfo.h.

References DwarfAccelObjCSection.

Referenced by llvm::DwarfDebug::endFunctionImpl().

◆ getDwarfAccelTypesSection()

MCSection* llvm::MCObjectFileInfo::getDwarfAccelTypesSection ( ) const
inline

Definition at line 258 of file MCObjectFileInfo.h.

References DwarfAccelTypesSection.

Referenced by llvm::DwarfDebug::endFunctionImpl().

◆ getDwarfAddrSection()

MCSection* llvm::MCObjectFileInfo::getDwarfAddrSection ( ) const
inline

Definition at line 270 of file MCObjectFileInfo.h.

References DwarfAddrSection.

Referenced by llvm::DwarfDebug::beginModule(), and llvm::DwarfDebug::endModule().

◆ getDwarfARangesSection()

MCSection* llvm::MCObjectFileInfo::getDwarfARangesSection ( ) const
inline

Definition at line 246 of file MCObjectFileInfo.h.

References DwarfARangesSection.

Referenced by llvm::MCGenDwarfInfo::Emit(), and EmitGenDwarfAranges().

◆ getDwarfCUIndexSection()

MCSection* llvm::MCObjectFileInfo::getDwarfCUIndexSection ( ) const
inline

Definition at line 271 of file MCObjectFileInfo.h.

References DwarfCUIndexSection.

◆ getDwarfDebugInlineSection()

const MCSection* llvm::MCObjectFileInfo::getDwarfDebugInlineSection ( ) const
inline

Definition at line 241 of file MCObjectFileInfo.h.

References DwarfDebugInlineSection.

◆ getDwarfFrameSection()

MCSection* llvm::MCObjectFileInfo::getDwarfFrameSection ( ) const
inline

Definition at line 232 of file MCObjectFileInfo.h.

References DwarfFrameSection.

Referenced by llvm::MCDwarfFrameEmitter::Emit().

◆ getDwarfGnuPubNamesSection()

MCSection* llvm::MCObjectFileInfo::getDwarfGnuPubNamesSection ( ) const
inline

Definition at line 235 of file MCObjectFileInfo.h.

References DwarfGnuPubNamesSection.

Referenced by computeIndexValue().

◆ getDwarfGnuPubTypesSection()

MCSection* llvm::MCObjectFileInfo::getDwarfGnuPubTypesSection ( ) const
inline

Definition at line 238 of file MCObjectFileInfo.h.

References DwarfGnuPubTypesSection.

Referenced by computeIndexValue().

◆ getDwarfInfoDWOSection()

MCSection* llvm::MCObjectFileInfo::getDwarfInfoDWOSection ( ) const
inline

Definition at line 261 of file MCObjectFileInfo.h.

References DwarfInfoDWOSection, and getDwarfTypesSection().

◆ getDwarfInfoSection()

MCSection* llvm::MCObjectFileInfo::getDwarfInfoSection ( ) const
inline

Definition at line 230 of file MCObjectFileInfo.h.

References DwarfInfoSection.

Referenced by llvm::MCGenDwarfInfo::Emit(), and EmitGenDwarfInfo().

◆ getDwarfLineDWOSection()

MCSection* llvm::MCObjectFileInfo::getDwarfLineDWOSection ( ) const
inline

Definition at line 266 of file MCObjectFileInfo.h.

References DwarfLineDWOSection.

◆ getDwarfLineSection()

MCSection* llvm::MCObjectFileInfo::getDwarfLineSection ( ) const
inline

◆ getDwarfLocDWOSection()

MCSection* llvm::MCObjectFileInfo::getDwarfLocDWOSection ( ) const
inline

Definition at line 267 of file MCObjectFileInfo.h.

References DwarfLocDWOSection.

Referenced by llvm::DwarfDebug::emitDebugLocEntryLocation().

◆ getDwarfLocSection()

MCSection* llvm::MCObjectFileInfo::getDwarfLocSection ( ) const
inline

Definition at line 245 of file MCObjectFileInfo.h.

References DwarfLocSection.

Referenced by llvm::DwarfDebug::emitDebugLocEntryLocation().

◆ getDwarfMacinfoSection()

MCSection* llvm::MCObjectFileInfo::getDwarfMacinfoSection ( ) const
inline

Definition at line 248 of file MCObjectFileInfo.h.

References DwarfMacinfoSection.

Referenced by llvm::DwarfDebug::beginModule().

◆ getDwarfPubNamesSection()

MCSection* llvm::MCObjectFileInfo::getDwarfPubNamesSection ( ) const
inline

Definition at line 233 of file MCObjectFileInfo.h.

References DwarfPubNamesSection.

Referenced by computeIndexValue().

◆ getDwarfPubTypesSection()

MCSection* llvm::MCObjectFileInfo::getDwarfPubTypesSection ( ) const
inline

Definition at line 234 of file MCObjectFileInfo.h.

References DwarfPubTypesSection.

Referenced by computeIndexValue().

◆ getDwarfRangesSection()

MCSection* llvm::MCObjectFileInfo::getDwarfRangesSection ( ) const
inline

◆ getDwarfStrDWOSection()

MCSection* llvm::MCObjectFileInfo::getDwarfStrDWOSection ( ) const
inline

Definition at line 265 of file MCObjectFileInfo.h.

References DwarfStrDWOSection.

◆ getDwarfStrOffDWOSection()

MCSection* llvm::MCObjectFileInfo::getDwarfStrOffDWOSection ( ) const
inline

Definition at line 268 of file MCObjectFileInfo.h.

References DwarfStrOffDWOSection.

◆ getDwarfStrOffSection()

MCSection* llvm::MCObjectFileInfo::getDwarfStrOffSection ( ) const
inline

Definition at line 269 of file MCObjectFileInfo.h.

References DwarfStrOffSection.

◆ getDwarfStrSection()

MCSection* llvm::MCObjectFileInfo::getDwarfStrSection ( ) const
inline

Definition at line 244 of file MCObjectFileInfo.h.

References DwarfStrSection.

Referenced by computeIndexValue().

◆ getDwarfSwiftASTSection()

MCSection* llvm::MCObjectFileInfo::getDwarfSwiftASTSection ( ) const
inline

Definition at line 273 of file MCObjectFileInfo.h.

References DwarfSwiftASTSection.

◆ getDwarfTUIndexSection()

MCSection* llvm::MCObjectFileInfo::getDwarfTUIndexSection ( ) const
inline

Definition at line 272 of file MCObjectFileInfo.h.

References DwarfTUIndexSection.

◆ getDwarfTypesDWOSection()

MCSection* llvm::MCObjectFileInfo::getDwarfTypesDWOSection ( ) const
inline

Definition at line 263 of file MCObjectFileInfo.h.

References DwarfTypesDWOSection.

◆ getDwarfTypesSection()

MCSection * MCObjectFileInfo::getDwarfTypesSection ( uint64_t  Hash) const

◆ getEHFrameSection()

MCSection* llvm::MCObjectFileInfo::getEHFrameSection ( )
inline

Definition at line 345 of file MCObjectFileInfo.h.

References EHFrameSection.

◆ getEightByteConstantSection()

const MCSection* llvm::MCObjectFileInfo::getEightByteConstantSection ( ) const
inline

Definition at line 323 of file MCObjectFileInfo.h.

References EightByteConstantSection.

◆ getFaultMapSection()

MCSection* llvm::MCObjectFileInfo::getFaultMapSection ( ) const
inline

Definition at line 288 of file MCObjectFileInfo.h.

References FaultMapSection.

Referenced by llvm::FaultMaps::serializeToFaultMapSection().

◆ getFDEEncoding()

unsigned llvm::MCObjectFileInfo::getFDEEncoding ( ) const
inline

Definition at line 216 of file MCObjectFileInfo.h.

References FDECFIEncoding.

Referenced by emitEncodingByte(), and getCIEVersion().

◆ getFourByteConstantSection()

const MCSection* llvm::MCObjectFileInfo::getFourByteConstantSection ( ) const
inline

Definition at line 320 of file MCObjectFileInfo.h.

References FourByteConstantSection.

◆ getLazySymbolPointerSection()

MCSection* llvm::MCObjectFileInfo::getLazySymbolPointerSection ( ) const
inline

Definition at line 329 of file MCObjectFileInfo.h.

References LazySymbolPointerSection.

◆ getLSDAEncoding()

unsigned llvm::MCObjectFileInfo::getLSDAEncoding ( ) const
inline

◆ getLSDASection()

MCSection* llvm::MCObjectFileInfo::getLSDASection ( ) const
inline

Definition at line 227 of file MCObjectFileInfo.h.

References LSDASection.

Referenced by llvm::EHStreamer::emitExceptionTable().

◆ getMergeableConst16Section()

const MCSection* llvm::MCObjectFileInfo::getMergeableConst16Section ( ) const
inline

Definition at line 298 of file MCObjectFileInfo.h.

References MergeableConst16Section.

◆ getMergeableConst32Section()

const MCSection* llvm::MCObjectFileInfo::getMergeableConst32Section ( ) const
inline

Definition at line 301 of file MCObjectFileInfo.h.

References MergeableConst32Section.

◆ getMergeableConst4Section()

const MCSection* llvm::MCObjectFileInfo::getMergeableConst4Section ( ) const
inline

Definition at line 292 of file MCObjectFileInfo.h.

References MergeableConst4Section.

◆ getMergeableConst8Section()

const MCSection* llvm::MCObjectFileInfo::getMergeableConst8Section ( ) const
inline

Definition at line 295 of file MCObjectFileInfo.h.

References MergeableConst8Section.

◆ getNonLazySymbolPointerSection()

MCSection* llvm::MCObjectFileInfo::getNonLazySymbolPointerSection ( ) const
inline

◆ getObjectFileType()

Environment llvm::MCObjectFileInfo::getObjectFileType ( ) const
inline

Definition at line 350 of file MCObjectFileInfo.h.

Referenced by llvm::MCContext::getOrCreateLSDASymbol().

◆ getOmitDwarfIfHaveCompactUnwind()

bool llvm::MCObjectFileInfo::getOmitDwarfIfHaveCompactUnwind ( ) const
inline

Definition at line 206 of file MCObjectFileInfo.h.

References OmitDwarfIfHaveCompactUnwind.

Referenced by llvm::MCDwarfFrameEmitter::Emit().

◆ getPDataSection()

MCSection* llvm::MCObjectFileInfo::getPDataSection ( ) const
inline

Definition at line 341 of file MCObjectFileInfo.h.

References PDataSection.

◆ getPersonalityEncoding()

unsigned llvm::MCObjectFileInfo::getPersonalityEncoding ( ) const
inline

◆ getReadOnlySection()

MCSection* llvm::MCObjectFileInfo::getReadOnlySection ( ) const
inline

Definition at line 226 of file MCObjectFileInfo.h.

References ReadOnlySection.

◆ getSixteenByteConstantSection()

const MCSection* llvm::MCObjectFileInfo::getSixteenByteConstantSection ( ) const
inline

Definition at line 326 of file MCObjectFileInfo.h.

References SixteenByteConstantSection.

◆ getStackMapSection()

MCSection* llvm::MCObjectFileInfo::getStackMapSection ( ) const
inline

Definition at line 287 of file MCObjectFileInfo.h.

References StackMapSection.

Referenced by llvm::StackMaps::serializeToStackMapSection().

◆ getSupportsCompactUnwindWithoutEHFrame()

bool llvm::MCObjectFileInfo::getSupportsCompactUnwindWithoutEHFrame ( ) const
inline

Definition at line 203 of file MCObjectFileInfo.h.

References SupportsCompactUnwindWithoutEHFrame.

Referenced by llvm::MCDwarfFrameEmitter::Emit().

◆ getSupportsWeakOmittedEHFrame()

bool llvm::MCObjectFileInfo::getSupportsWeakOmittedEHFrame ( ) const
inline

Definition at line 200 of file MCObjectFileInfo.h.

References SupportsWeakOmittedEHFrame.

◆ getSXDataSection()

MCSection* llvm::MCObjectFileInfo::getSXDataSection ( ) const
inline

Definition at line 343 of file MCObjectFileInfo.h.

References SXDataSection.

Referenced by llvm::MCWinCOFFStreamer::EmitCOFFSafeSEH().

◆ getTargetTriple()

const Triple& llvm::MCObjectFileInfo::getTargetTriple ( ) const
inline

◆ getTextCoalSection()

MCSection* llvm::MCObjectFileInfo::getTextCoalSection ( ) const
inline

Definition at line 312 of file MCObjectFileInfo.h.

References TextCoalSection.

Referenced by stripRegisterPrefix().

◆ getTextSection()

MCSection* llvm::MCObjectFileInfo::getTextSection ( ) const
inline

◆ getThreadLocalPointerSection()

MCSection* llvm::MCObjectFileInfo::getThreadLocalPointerSection ( ) const
inline

Definition at line 335 of file MCObjectFileInfo.h.

References ThreadLocalPointerSection.

Referenced by llvm::ARMAsmPrinter::EmitEndOfAsmFile().

◆ getTLSBSSSection()

MCSection* llvm::MCObjectFileInfo::getTLSBSSSection ( ) const
inline

Definition at line 285 of file MCObjectFileInfo.h.

References TLSBSSSection.

Referenced by llvm::AsmPrinter::EmitGlobalVariable().

◆ getTLSDataSection()

const MCSection* llvm::MCObjectFileInfo::getTLSDataSection ( ) const
inline

Definition at line 284 of file MCObjectFileInfo.h.

References TLSDataSection.

◆ getTLSExtraDataSection()

MCSection* llvm::MCObjectFileInfo::getTLSExtraDataSection ( ) const
inline

Definition at line 283 of file MCObjectFileInfo.h.

References TLSExtraDataSection.

Referenced by llvm::AsmPrinter::EmitGlobalVariable().

◆ getTLSThreadInitSection()

const MCSection* llvm::MCObjectFileInfo::getTLSThreadInitSection ( ) const
inline

Definition at line 307 of file MCObjectFileInfo.h.

References TLSThreadInitSection.

◆ getTLSTLVSection()

const MCSection* llvm::MCObjectFileInfo::getTLSTLVSection ( ) const
inline

Definition at line 306 of file MCObjectFileInfo.h.

References TLSTLVSection.

◆ getTTypeEncoding()

unsigned llvm::MCObjectFileInfo::getTTypeEncoding ( ) const
inline

Definition at line 217 of file MCObjectFileInfo.h.

References TTypeEncoding.

Referenced by llvm::EHStreamer::emitExceptionTable().

◆ getUStringSection()

const MCSection* llvm::MCObjectFileInfo::getUStringSection ( ) const
inline

Definition at line 311 of file MCObjectFileInfo.h.

References UStringSection.

◆ getXDataSection()

MCSection* llvm::MCObjectFileInfo::getXDataSection ( ) const
inline

Definition at line 342 of file MCObjectFileInfo.h.

References XDataSection.

◆ InitMCObjectFileInfo()

void MCObjectFileInfo::InitMCObjectFileInfo ( const Triple TT,
bool  PIC,
MCContext ctx,
bool  LargeCodeModel = false 
)

◆ isPositionIndependent()

bool llvm::MCObjectFileInfo::isPositionIndependent ( ) const
inline

Member Data Documentation

◆ BSSSection

MCSection* llvm::MCObjectFileInfo::BSSSection
protected

◆ COFFDebugSymbolsSection

MCSection* llvm::MCObjectFileInfo::COFFDebugSymbolsSection
protected

Definition at line 129 of file MCObjectFileInfo.h.

Referenced by getCOFFDebugSymbolsSection(), and useCompactUnwind().

◆ COFFDebugTypesSection

MCSection* llvm::MCObjectFileInfo::COFFDebugTypesSection
protected

Definition at line 130 of file MCObjectFileInfo.h.

Referenced by getCOFFDebugTypesSection(), and useCompactUnwind().

◆ CommDirectiveSupportsAlignment

bool llvm::MCObjectFileInfo::CommDirectiveSupportsAlignment
protected

True if .comm supports alignment.

This is a hack for as long as we support 10.4 Tiger, whose assembler doesn't support alignment on comm.

Definition at line 28 of file MCObjectFileInfo.h.

Referenced by getCommDirectiveSupportsAlignment(), InitMCObjectFileInfo(), and useCompactUnwind().

◆ CompactUnwindDwarfEHFrameOnly

unsigned llvm::MCObjectFileInfo::CompactUnwindDwarfEHFrameOnly
protected

Compact unwind encoding indicating that we should emit only an EH frame.

Definition at line 51 of file MCObjectFileInfo.h.

Referenced by getCompactUnwindDwarfEHFrameOnly(), InitMCObjectFileInfo(), and useCompactUnwind().

◆ CompactUnwindSection

MCSection* llvm::MCObjectFileInfo::CompactUnwindSection
protected

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.

Definition at line 75 of file MCObjectFileInfo.h.

Referenced by getCompactUnwindSection(), InitMCObjectFileInfo(), and useCompactUnwind().

◆ ConstDataSection

MCSection* llvm::MCObjectFileInfo::ConstDataSection
protected

◆ ConstTextCoalSection

MCSection* llvm::MCObjectFileInfo::ConstTextCoalSection
protected

◆ CStringSection

MCSection* llvm::MCObjectFileInfo::CStringSection
protected

◆ DataBSSSection

MCSection* llvm::MCObjectFileInfo::DataBSSSection
protected

◆ DataCoalSection

MCSection* llvm::MCObjectFileInfo::DataCoalSection
protected

◆ DataCommonSection

MCSection* llvm::MCObjectFileInfo::DataCommonSection
protected

◆ DataRelROSection

MCSection* llvm::MCObjectFileInfo::DataRelROSection
protected

◆ DataSection

MCSection* llvm::MCObjectFileInfo::DataSection
protected

◆ DrectveSection

MCSection* llvm::MCObjectFileInfo::DrectveSection
protected

COFF specific sections.

Definition at line 191 of file MCObjectFileInfo.h.

Referenced by getDrectveSection(), and useCompactUnwind().

◆ DwarfAbbrevDWOSection

MCSection* llvm::MCObjectFileInfo::DwarfAbbrevDWOSection
protected

Definition at line 107 of file MCObjectFileInfo.h.

Referenced by getDwarfAbbrevDWOSection(), and useCompactUnwind().

◆ DwarfAbbrevSection

MCSection* llvm::MCObjectFileInfo::DwarfAbbrevSection
protected

◆ DwarfAccelNamespaceSection

MCSection* llvm::MCObjectFileInfo::DwarfAccelNamespaceSection
protected

◆ DwarfAccelNamesSection

MCSection* llvm::MCObjectFileInfo::DwarfAccelNamesSection
protected

DWARF5 Experimental Debug Info Sections DwarfAccelNamesSection, DwarfAccelObjCSection, DwarfAccelNamespaceSection, DwarfAccelTypesSection - If we use the DWARF accelerated hash tables then we want to emit these sections.

Definition at line 99 of file MCObjectFileInfo.h.

Referenced by getDwarfAccelNamesSection(), InitMCObjectFileInfo(), and useCompactUnwind().

◆ DwarfAccelObjCSection

MCSection* llvm::MCObjectFileInfo::DwarfAccelObjCSection
protected

◆ DwarfAccelTypesSection

MCSection* llvm::MCObjectFileInfo::DwarfAccelTypesSection
protected

◆ DwarfAddrSection

MCSection* llvm::MCObjectFileInfo::DwarfAddrSection
protected

Definition at line 115 of file MCObjectFileInfo.h.

Referenced by getDwarfAddrSection(), and useCompactUnwind().

◆ DwarfARangesSection

MCSection* llvm::MCObjectFileInfo::DwarfARangesSection
protected

◆ DwarfCUIndexSection

MCSection* llvm::MCObjectFileInfo::DwarfCUIndexSection
protected

Definition at line 118 of file MCObjectFileInfo.h.

Referenced by getDwarfCUIndexSection(), and useCompactUnwind().

◆ DwarfDebugInlineSection

const MCSection* llvm::MCObjectFileInfo::DwarfDebugInlineSection
protected

◆ DwarfFrameSection

MCSection* llvm::MCObjectFileInfo::DwarfFrameSection
protected

◆ DwarfGnuPubNamesSection

MCSection* llvm::MCObjectFileInfo::DwarfGnuPubNamesSection
protected

Section for newer gnu pubnames.

Definition at line 122 of file MCObjectFileInfo.h.

Referenced by getDwarfGnuPubNamesSection(), and useCompactUnwind().

◆ DwarfGnuPubTypesSection

MCSection* llvm::MCObjectFileInfo::DwarfGnuPubTypesSection
protected

Section for newer gnu pubtypes.

Definition at line 124 of file MCObjectFileInfo.h.

Referenced by getDwarfGnuPubTypesSection(), and useCompactUnwind().

◆ DwarfInfoDWOSection

MCSection* llvm::MCObjectFileInfo::DwarfInfoDWOSection
protected

Definition at line 105 of file MCObjectFileInfo.h.

Referenced by getDwarfInfoDWOSection(), and useCompactUnwind().

◆ DwarfInfoSection

MCSection* llvm::MCObjectFileInfo::DwarfInfoSection
protected

◆ DwarfLineDWOSection

MCSection* llvm::MCObjectFileInfo::DwarfLineDWOSection
protected

Definition at line 109 of file MCObjectFileInfo.h.

Referenced by getDwarfLineDWOSection(), and useCompactUnwind().

◆ DwarfLineSection

MCSection* llvm::MCObjectFileInfo::DwarfLineSection
protected

◆ DwarfLocDWOSection

MCSection* llvm::MCObjectFileInfo::DwarfLocDWOSection
protected

Definition at line 110 of file MCObjectFileInfo.h.

Referenced by getDwarfLocDWOSection(), and useCompactUnwind().

◆ DwarfLocSection

MCSection* llvm::MCObjectFileInfo::DwarfLocSection
protected

◆ DwarfMacinfoSection

MCSection* llvm::MCObjectFileInfo::DwarfMacinfoSection
protected

◆ DwarfPubNamesSection

MCSection* llvm::MCObjectFileInfo::DwarfPubNamesSection
protected

Definition at line 92 of file MCObjectFileInfo.h.

Referenced by getDwarfPubNamesSection(), and useCompactUnwind().

◆ DwarfPubTypesSection

MCSection* llvm::MCObjectFileInfo::DwarfPubTypesSection
protected

◆ DwarfRangesSection

MCSection* llvm::MCObjectFileInfo::DwarfRangesSection
protected

◆ DwarfStrDWOSection

MCSection* llvm::MCObjectFileInfo::DwarfStrDWOSection
protected

Definition at line 108 of file MCObjectFileInfo.h.

Referenced by getDwarfStrDWOSection(), and useCompactUnwind().

◆ DwarfStrOffDWOSection

MCSection* llvm::MCObjectFileInfo::DwarfStrOffDWOSection
protected

Definition at line 111 of file MCObjectFileInfo.h.

Referenced by getDwarfStrOffDWOSection(), and useCompactUnwind().

◆ DwarfStrOffSection

MCSection* llvm::MCObjectFileInfo::DwarfStrOffSection
protected

The DWARF v5 string offset and address table sections.

Definition at line 114 of file MCObjectFileInfo.h.

Referenced by getDwarfStrOffSection(), and useCompactUnwind().

◆ DwarfStrSection

MCSection* llvm::MCObjectFileInfo::DwarfStrSection
protected

◆ DwarfSwiftASTSection

MCSection* llvm::MCObjectFileInfo::DwarfSwiftASTSection
protected

Definition at line 127 of file MCObjectFileInfo.h.

Referenced by getDwarfSwiftASTSection(), and useCompactUnwind().

◆ DwarfTUIndexSection

MCSection* llvm::MCObjectFileInfo::DwarfTUIndexSection
protected

Definition at line 119 of file MCObjectFileInfo.h.

Referenced by getDwarfTUIndexSection(), and useCompactUnwind().

◆ DwarfTypesDWOSection

MCSection* llvm::MCObjectFileInfo::DwarfTypesDWOSection
protected

Definition at line 106 of file MCObjectFileInfo.h.

Referenced by getDwarfTypesDWOSection(), and useCompactUnwind().

◆ EHFrameSection

MCSection* llvm::MCObjectFileInfo::EHFrameSection
protected

EH frame section.

It is initialized on demand so it can be overwritten (with uniquing).

Definition at line 155 of file MCObjectFileInfo.h.

Referenced by getEHFrameSection(), llvm::NVPTXTargetObjectFile::Initialize(), InitMCObjectFileInfo(), llvm::NVPTXTargetObjectFile::NVPTXTargetObjectFile(), and useCompactUnwind().

◆ EightByteConstantSection

MCSection* llvm::MCObjectFileInfo::EightByteConstantSection
protected

◆ FaultMapSection

MCSection* llvm::MCObjectFileInfo::FaultMapSection
protected

FaultMap section.

Definition at line 150 of file MCObjectFileInfo.h.

Referenced by getFaultMapSection(), and useCompactUnwind().

◆ FDECFIEncoding

unsigned llvm::MCObjectFileInfo::FDECFIEncoding
protected

Definition at line 47 of file MCObjectFileInfo.h.

Referenced by getFDEEncoding(), InitMCObjectFileInfo(), and useCompactUnwind().

◆ FourByteConstantSection

MCSection* llvm::MCObjectFileInfo::FourByteConstantSection
protected

◆ LazySymbolPointerSection

MCSection* llvm::MCObjectFileInfo::LazySymbolPointerSection
protected

Definition at line 186 of file MCObjectFileInfo.h.

Referenced by getLazySymbolPointerSection(), and useCompactUnwind().

◆ LSDAEncoding

unsigned llvm::MCObjectFileInfo::LSDAEncoding
protected

Definition at line 46 of file MCObjectFileInfo.h.

Referenced by getLSDAEncoding(), InitMCObjectFileInfo(), and useCompactUnwind().

◆ LSDASection

MCSection* llvm::MCObjectFileInfo::LSDASection
protected

If exception handling is supported by the target, this is the section the Language Specific Data Area information is emitted to.

Definition at line 70 of file MCObjectFileInfo.h.

Referenced by getLSDASection(), llvm::NVPTXTargetObjectFile::Initialize(), llvm::NVPTXTargetObjectFile::NVPTXTargetObjectFile(), and useCompactUnwind().

◆ MergeableConst16Section

MCSection* llvm::MCObjectFileInfo::MergeableConst16Section
protected

◆ MergeableConst32Section

MCSection* llvm::MCObjectFileInfo::MergeableConst32Section
protected

Definition at line 162 of file MCObjectFileInfo.h.

Referenced by getMergeableConst32Section(), and useCompactUnwind().

◆ MergeableConst4Section

MCSection* llvm::MCObjectFileInfo::MergeableConst4Section
protected

◆ MergeableConst8Section

MCSection* llvm::MCObjectFileInfo::MergeableConst8Section
protected

◆ NonLazySymbolPointerSection

MCSection* llvm::MCObjectFileInfo::NonLazySymbolPointerSection
protected

Definition at line 187 of file MCObjectFileInfo.h.

Referenced by getNonLazySymbolPointerSection(), and useCompactUnwind().

◆ OmitDwarfIfHaveCompactUnwind

bool llvm::MCObjectFileInfo::OmitDwarfIfHaveCompactUnwind
protected

OmitDwarfIfHaveCompactUnwind - True if the target object file supports having some functions with compact unwind and other with dwarf unwind.

Definition at line 41 of file MCObjectFileInfo.h.

Referenced by getOmitDwarfIfHaveCompactUnwind(), InitMCObjectFileInfo(), and useCompactUnwind().

◆ PDataSection

MCSection* llvm::MCObjectFileInfo::PDataSection
protected

Definition at line 192 of file MCObjectFileInfo.h.

Referenced by getPDataSection(), and useCompactUnwind().

◆ PersonalityEncoding

unsigned llvm::MCObjectFileInfo::PersonalityEncoding
protected

PersonalityEncoding, LSDAEncoding, TTypeEncoding - Some encoding values for EH.

Definition at line 45 of file MCObjectFileInfo.h.

Referenced by getPersonalityEncoding(), InitMCObjectFileInfo(), and useCompactUnwind().

◆ ReadOnlySection

MCSection* llvm::MCObjectFileInfo::ReadOnlySection
protected

◆ SixteenByteConstantSection

MCSection* llvm::MCObjectFileInfo::SixteenByteConstantSection
protected

◆ StackMapSection

MCSection* llvm::MCObjectFileInfo::StackMapSection
protected

StackMap section.

Definition at line 147 of file MCObjectFileInfo.h.

Referenced by getStackMapSection(), and useCompactUnwind().

◆ SupportsCompactUnwindWithoutEHFrame

bool llvm::MCObjectFileInfo::SupportsCompactUnwindWithoutEHFrame
protected

True if the target object file supports emitting a compact unwind section without an associated EH frame section.

Definition at line 36 of file MCObjectFileInfo.h.

Referenced by getSupportsCompactUnwindWithoutEHFrame(), InitMCObjectFileInfo(), and useCompactUnwind().

◆ SupportsWeakOmittedEHFrame

bool llvm::MCObjectFileInfo::SupportsWeakOmittedEHFrame
protected

True if target object file supports a weak_definition of constant 0 for an omitted EH frame.

Definition at line 32 of file MCObjectFileInfo.h.

Referenced by getSupportsWeakOmittedEHFrame(), InitMCObjectFileInfo(), and useCompactUnwind().

◆ SXDataSection

MCSection* llvm::MCObjectFileInfo::SXDataSection
protected

Definition at line 194 of file MCObjectFileInfo.h.

Referenced by getSXDataSection(), and useCompactUnwind().

◆ TextCoalSection

MCSection* llvm::MCObjectFileInfo::TextCoalSection
protected

◆ TextSection

MCSection* llvm::MCObjectFileInfo::TextSection
protected

◆ ThreadLocalPointerSection

MCSection* llvm::MCObjectFileInfo::ThreadLocalPointerSection
protected

Definition at line 188 of file MCObjectFileInfo.h.

Referenced by getThreadLocalPointerSection(), and useCompactUnwind().

◆ TLSBSSSection

MCSection* llvm::MCObjectFileInfo::TLSBSSSection
protected

Section directive for Thread Local uninitialized data.

Null if this target doesn't support a BSS section. ELF and MachO only.

Definition at line 144 of file MCObjectFileInfo.h.

Referenced by getTLSBSSSection(), llvm::TargetLoweringObjectFileMachO::SelectSectionForGlobal(), and useCompactUnwind().

◆ TLSDataSection

MCSection* llvm::MCObjectFileInfo::TLSDataSection
protected

◆ TLSExtraDataSection

MCSection* llvm::MCObjectFileInfo::TLSExtraDataSection
protected

Extra TLS Variable Data section.

If the target needs to put additional information for a TLS variable, it'll go here.

Definition at line 136 of file MCObjectFileInfo.h.

Referenced by getTLSExtraDataSection(), and useCompactUnwind().

◆ TLSThreadInitSection

const MCSection* llvm::MCObjectFileInfo::TLSThreadInitSection
protected

Section for thread local data initialization functions.

Definition at line 173 of file MCObjectFileInfo.h.

Referenced by getTLSThreadInitSection(), and useCompactUnwind().

◆ TLSTLVSection

MCSection* llvm::MCObjectFileInfo::TLSTLVSection
protected

Section for thread local structure information.

Contains the source code name of the variable, visibility and a pointer to the initial value (.tdata or .tbss).

Definition at line 170 of file MCObjectFileInfo.h.

Referenced by getTLSTLVSection(), and useCompactUnwind().

◆ TTypeEncoding

unsigned llvm::MCObjectFileInfo::TTypeEncoding
protected

Definition at line 48 of file MCObjectFileInfo.h.

Referenced by getTTypeEncoding(), InitMCObjectFileInfo(), and useCompactUnwind().

◆ UStringSection

MCSection* llvm::MCObjectFileInfo::UStringSection
protected

◆ XDataSection

MCSection* llvm::MCObjectFileInfo::XDataSection
protected

Definition at line 193 of file MCObjectFileInfo.h.

Referenced by getXDataSection(), and useCompactUnwind().


The documentation for this class was generated from the following files: