LLVM 20.0.0git
|
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) |
Friends | |
class | MCContext |
Additional Inherited Members | |
Public Types inherited from llvm::MCSection | |
enum | SectionVariant { SV_COFF = 0 , SV_ELF , SV_GOFF , SV_MachO , SV_Wasm , SV_XCOFF , SV_SPIRV , SV_DXContainer } |
enum | BundleLockStateType { NotBundleLocked , BundleLocked , BundleLockedAlignToEnd } |
Express the state of bundle locked groups while emitting code. More... | |
Public Attributes inherited from llvm::MCSection | |
friend | MCAssembler |
friend | MCObjectStreamer |
Static Public Attributes inherited from llvm::MCSection | |
static constexpr unsigned | NonUniqueID = ~0U |
Protected Member Functions inherited from llvm::MCSection | |
MCSection (SectionVariant V, StringRef Name, bool IsText, bool IsVirtual, MCSymbol *Begin) | |
~MCSection () | |
Protected Attributes inherited from llvm::MCSection | |
StringRef | Name |
SectionVariant | Variant |
This represents a section on linux, lots of unix variants and some bare metal systems.
Definition at line 27 of file MCSectionELF.h.
Definition at line 107 of file MCSectionELF.h.
References llvm::MCSection::getVariant(), and llvm::MCSection::SV_ELF.
|
inline |
Definition at line 80 of file MCSectionELF.h.
|
inline |
Definition at line 79 of file MCSectionELF.h.
Referenced by llvm::ELFObjectWriter::shouldRelocateWithSymbol(), and useCodeAlign().
|
inline |
Definition at line 82 of file MCSectionELF.h.
References llvm::PointerIntPair< PointerTy, IntBits, IntType, PtrTraits, Info >::getPointer().
Referenced by llvm::MCObjectFileInfo::getBBAddrMapSection(), llvm::MCObjectFileInfo::getKCFITrapSection(), and llvm::MCObjectFileInfo::getStackSizesSection().
Definition at line 94 of file MCSectionELF.h.
References llvm::MCSymbol::getSection().
Definition at line 97 of file MCSectionELF.h.
Definition at line 103 of file MCSectionELF.h.
|
inline |
Definition at line 78 of file MCSectionELF.h.
References Type.
Referenced by llvm::ELFObjectWriter::usesRela().
|
inline |
Definition at line 92 of file MCSectionELF.h.
Referenced by llvm::MCObjectFileInfo::getBBAddrMapSection(), llvm::MCObjectFileInfo::getKCFITrapSection(), and llvm::MCObjectFileInfo::getStackSizesSection().
|
overridevirtual |
Reimplemented from llvm::MCSection.
Definition at line 213 of file MCSectionELF.cpp.
|
inline |
Definition at line 83 of file MCSectionELF.h.
References llvm::PointerIntPair< PointerTy, IntBits, IntType, PtrTraits, Info >::getInt().
Referenced by printSwitchToSection().
|
inline |
Definition at line 91 of file MCSectionELF.h.
References llvm::MCSection::NonUniqueID.
Referenced by printSwitchToSection(), and shouldOmitSectionDirective().
|
overridevirtual |
Implements llvm::MCSection.
Definition at line 53 of file MCSectionELF.cpp.
References assert(), llvm::MCAsmInfo::getCommentString(), llvm::MCSection::getName(), llvm::MCSymbol::getName(), llvm::Triple::hexagon, isComdat(), isUnique(), OS, printName(), llvm::ELF::SHF_ALLOC, llvm::ELF::SHF_ARM_PURECODE, llvm::ELF::SHF_EXCLUDE, llvm::ELF::SHF_EXECINSTR, llvm::ELF::SHF_GNU_RETAIN, 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_SUNW_NODISCARD, llvm::ELF::SHF_TLS, llvm::ELF::SHF_WRITE, llvm::ELF::SHF_X86_64_LARGE, shouldOmitSectionDirective(), llvm::ELF::SHT_FINI_ARRAY, llvm::ELF::SHT_INIT_ARRAY, llvm::ELF::SHT_LLVM_BB_ADDR_MAP, llvm::ELF::SHT_LLVM_BB_ADDR_MAP_V0, llvm::ELF::SHT_LLVM_CALL_GRAPH_PROFILE, llvm::ELF::SHT_LLVM_DEPENDENT_LIBRARIES, llvm::ELF::SHT_LLVM_LINKER_OPTIONS, llvm::ELF::SHT_LLVM_LTO, llvm::ELF::SHT_LLVM_ODRTAB, llvm::ELF::SHT_LLVM_OFFLOADING, llvm::ELF::SHT_LLVM_SYMPART, 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::x86_64, llvm::Triple::xcore, llvm::ELF::XCORE_SHF_CP_SECTION, and llvm::ELF::XCORE_SHF_DP_SECTION.
|
inline |
Definition at line 81 of file MCSectionELF.h.
References F.
Definition at line 99 of file MCSectionELF.h.
References End.
Decides whether a '.section' directive should be printed before the section name.
Definition at line 22 of file MCSectionELF.cpp.
References isUnique(), llvm::MCSection::Name, 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 209 of file MCSectionELF.cpp.
References getFlags(), and llvm::ELF::SHF_EXECINSTR.
|
friend |
Definition at line 54 of file MCSectionELF.h.