LLVM
8.0.1
|
This represents a section on linux, lots of unix variants and some bare metal systems. More...
#include "llvm/MC/MCSectionELF.h"
Static Public Member Functions | |
static bool | classof (const MCSection *S) |
Static Public Member Functions inherited from llvm::MCSection | |
static FragmentListType MCSection::* | getSublistAccess (MCFragment *) |
Support for MCFragment::getNextNode(). More... | |
Friends | |
class | MCContext |
Additional Inherited Members | |
Public Types inherited from llvm::MCSection | |
enum | SectionVariant { SV_COFF = 0, SV_ELF, SV_MachO, SV_Wasm } |
enum | BundleLockStateType { NotBundleLocked, BundleLocked, BundleLockedAlignToEnd } |
Express the state of bundle locked groups while emitting code. More... | |
using | FragmentListType = iplist< MCFragment > |
using | const_iterator = FragmentListType::const_iterator |
using | iterator = FragmentListType::iterator |
using | const_reverse_iterator = FragmentListType::const_reverse_iterator |
using | reverse_iterator = FragmentListType::reverse_iterator |
Protected Member Functions inherited from llvm::MCSection | |
MCSection (SectionVariant V, SectionKind K, MCSymbol *Begin) | |
~MCSection () | |
Protected Attributes inherited from llvm::MCSection | |
SectionVariant | Variant |
SectionKind | Kind |
This represents a section on linux, lots of unix variants and some bare metal systems.
Definition at line 28 of file MCSectionELF.h.
|
default |
Definition at line 92 of file MCSectionELF.h.
References llvm::MCSection::getVariant(), and llvm::MCSection::SV_ELF.
Definition at line 89 of file MCSectionELF.h.
References llvm::MCSymbol::getSection().
Referenced by isWeak().
Definition at line 90 of file MCSectionELF.h.
Referenced by llvm::TargetLoweringObjectFileELF::getExplicitSectionGlobal(), isWeak(), and llvm::TargetLoweringObjectFileELF::SelectSectionForGlobal().
|
inline |
Definition at line 76 of file MCSectionELF.h.
Referenced by isWeak().
|
inline |
Definition at line 75 of file MCSectionELF.h.
Referenced by llvm::MCELFStreamer::EmitLabel(), isWeak(), and UseCodeAlign().
|
inline |
Definition at line 78 of file MCSectionELF.h.
References isVirtualSection(), PrintSwitchToSection(), and UseCodeAlign().
Referenced by GetAEABIUnwindPersonalityName(), llvm::MCObjectFileInfo::getStackSizesSection(), isWeak(), and llvm::MCContext::renameELFSection().
|
inline |
Definition at line 73 of file MCSectionELF.h.
References AMDGPU::ElfNote::SectionName.
Referenced by llvm::BTFDebug::beginFunctionImpl(), GetAEABIUnwindPersonalityName(), isWeak(), PrintSwitchToSection(), and llvm::MCContext::renameELFSection().
|
inline |
Definition at line 74 of file MCSectionELF.h.
Referenced by isVirtualSection(), and isWeak().
|
inline |
Definition at line 87 of file MCSectionELF.h.
Referenced by GetAEABIUnwindPersonalityName(), and llvm::MCContext::renameELFSection().
|
inline |
Definition at line 86 of file MCSectionELF.h.
Referenced by PrintSwitchToSection(), and ShouldOmitSectionDirective().
|
overridevirtual |
Check whether this section is "virtual", that is has no actual object file contents.
Implements llvm::MCSection.
Definition at line 195 of file MCSectionELF.cpp.
References getType(), and llvm::ELF::SHT_NOBITS.
Referenced by getGroup().
|
overridevirtual |
Implements llvm::MCSection.
Definition at line 56 of file MCSectionELF.cpp.
References assert(), llvm::Triple::getArch(), llvm::MCAsmInfo::getCommentString(), llvm::MCSymbol::getName(), getSectionName(), llvm::Triple::hexagon, llvm::Triple::isARM(), llvm::Triple::isThumb(), isUnique(), llvm::MCExpr::print(), printName(), llvm::report_fatal_error(), llvm::ELF::SHF_ALLOC, llvm::ELF::SHF_ARM_PURECODE, llvm::ELF::SHF_EXCLUDE, llvm::ELF::SHF_EXECINSTR, llvm::ELF::SHF_GROUP, llvm::ELF::SHF_HEX_GPREL, llvm::ELF::SHF_LINK_ORDER, llvm::ELF::SHF_MERGE, llvm::ELF::SHF_STRINGS, llvm::ELF::SHF_TLS, llvm::ELF::SHF_WRITE, ShouldOmitSectionDirective(), llvm::ELF::SHT_FINI_ARRAY, llvm::ELF::SHT_INIT_ARRAY, llvm::ELF::SHT_LLVM_CALL_GRAPH_PROFILE, llvm::ELF::SHT_LLVM_LINKER_OPTIONS, llvm::ELF::SHT_LLVM_ODRTAB, llvm::ELF::SHT_MIPS_DWARF, llvm::ELF::SHT_NOBITS, llvm::ELF::SHT_NOTE, llvm::ELF::SHT_PREINIT_ARRAY, llvm::ELF::SHT_PROGBITS, llvm::ELF::SHT_X86_64_UNWIND, llvm::MCAsmInfo::usesSunStyleELFSectionSwitchSyntax(), llvm::Twine::utohexstr(), llvm::Triple::xcore, llvm::ELF::XCORE_SHF_CP_SECTION, and llvm::ELF::XCORE_SHF_DP_SECTION.
Referenced by getGroup().
|
inline |
Decides whether a '.section' directive should be printed before the section name.
Definition at line 25 of file MCSectionELF.cpp.
References isUnique(), and llvm::MCAsmInfo::shouldOmitSectionDirective().
Referenced by PrintSwitchToSection().
|
overridevirtual |
Return true if a .align directive should use "optimized nops" to fill instead of 0s.
Implements llvm::MCSection.
Definition at line 191 of file MCSectionELF.cpp.
References getFlags(), and llvm::ELF::SHF_EXECINSTR.
Referenced by llvm::MipsTargetELFStreamer::finish(), and getGroup().
|
friend |
Definition at line 52 of file MCSectionELF.h.