LLVM API Documentation
#include <MCSectionELF.h>


Public Member Functions | |
| bool | ShouldOmitSectionDirective (StringRef Name, const MCAsmInfo &MAI) const |
| StringRef | getSectionName () const |
| virtual std::string | getLabelBeginName () const |
| virtual std::string | getLabelEndName () const |
| unsigned | getType () const |
| unsigned | getFlags () const |
| unsigned | getEntrySize () const |
| const MCSymbol * | getGroup () const |
| void | PrintSwitchToSection (const MCAsmInfo &MAI, raw_ostream &OS, const MCExpr *Subsection) const |
| virtual bool | UseCodeAlign () const |
| virtual bool | isVirtualSection () const |
| virtual bool | isBaseAddressKnownZero () const |
Static Public Member Functions | |
| static bool | classof (const MCSection *S) |
| static unsigned | DetermineEntrySize (SectionKind Kind) |
Friends | |
| class | MCContext |
MCSectionELF - This represents a section on linux, lots of unix variants and some bare metal systems.
Definition at line 29 of file MCSectionELF.h.
Definition at line 84 of file MCSectionELF.h.
References llvm::MCSection::getVariant(), and llvm::MCSection::SV_ELF.
| unsigned MCSectionELF::DetermineEntrySize | ( | SectionKind | Kind | ) | [static] |
Definition at line 150 of file MCSectionELF.cpp.
References llvm::SectionKind::isMergeable1ByteCString(), llvm::SectionKind::isMergeable2ByteCString(), llvm::SectionKind::isMergeable4ByteCString(), llvm::SectionKind::isMergeableConst16(), llvm::SectionKind::isMergeableConst4(), and llvm::SectionKind::isMergeableConst8().
Referenced by llvm::MCContext::getELFSection().
| unsigned llvm::MCSectionELF::getEntrySize | ( | ) | const [inline] |
Definition at line 69 of file MCSectionELF.h.
| unsigned llvm::MCSectionELF::getFlags | ( | ) | const [inline] |
Definition at line 68 of file MCSectionELF.h.
Referenced by llvm::MCELFStreamer::EmitLabel(), isBaseAddressKnownZero(), and UseCodeAlign().
| const MCSymbol* llvm::MCSectionELF::getGroup | ( | ) | const [inline] |
Definition at line 70 of file MCSectionELF.h.
| virtual std::string llvm::MCSectionELF::getLabelBeginName | ( | ) | const [inline, virtual] |
Implements llvm::MCSection.
Definition at line 62 of file MCSectionELF.h.
References llvm::StringRef::str().
| virtual std::string llvm::MCSectionELF::getLabelEndName | ( | ) | const [inline, virtual] |
Implements llvm::MCSection.
Definition at line 64 of file MCSectionELF.h.
References llvm::StringRef::str().
| StringRef llvm::MCSectionELF::getSectionName | ( | ) | const [inline] |
Definition at line 61 of file MCSectionELF.h.
Referenced by compareBySuffix(), and PrintSwitchToSection().
| unsigned llvm::MCSectionELF::getType | ( | ) | const [inline] |
| virtual bool llvm::MCSectionELF::isBaseAddressKnownZero | ( | ) | const [inline, virtual] |
isBaseAddressKnownZero - We know that non-allocatable sections (like debug info) have a base of zero.
Reimplemented from llvm::MCSection.
Definition at line 80 of file MCSectionELF.h.
References getFlags(), and llvm::ELF::SHF_ALLOC.
| bool MCSectionELF::isVirtualSection | ( | ) | const [virtual] |
isVirtualSection - Check whether this section is "virtual", that is has no actual object file contents.
Implements llvm::MCSection.
Definition at line 146 of file MCSectionELF.cpp.
References getType(), and llvm::ELF::SHT_NOBITS.
| void MCSectionELF::PrintSwitchToSection | ( | const MCAsmInfo & | MAI, |
| raw_ostream & | OS, | ||
| const MCExpr * | Subsection | ||
| ) | const [virtual] |
Implements llvm::MCSection.
Definition at line 35 of file MCSectionELF.cpp.
References llvm::StringRef::begin(), llvm::StringRef::end(), llvm::StringRef::find_first_not_of(), llvm::MCAsmInfo::getCommentString(), llvm::MCSymbol::getName(), getSectionName(), llvm::StringRef::npos, llvm::ELF::SHF_ALLOC, llvm::ELF::SHF_EXECINSTR, llvm::ELF::SHF_GROUP, 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_NOBITS, llvm::ELF::SHT_NOTE, llvm::ELF::SHT_PREINIT_ARRAY, llvm::ELF::SHT_PROGBITS, llvm::MCAsmInfo::usesSunStyleELFSectionSwitchSyntax(), llvm::ELF::XCORE_SHF_CP_SECTION, and llvm::ELF::XCORE_SHF_DP_SECTION.
ShouldOmitSectionDirective - Decides whether a '.section' directive should be printed before the section name
Definition at line 24 of file MCSectionELF.cpp.
References llvm::MCAsmInfo::usesELFSectionDirectiveForBSS().
Referenced by PrintSwitchToSection().
| bool MCSectionELF::UseCodeAlign | ( | ) | const [virtual] |
Implements llvm::MCSection.
Definition at line 142 of file MCSectionELF.cpp.
References getFlags(), and llvm::ELF::SHF_EXECINSTR.
friend class MCContext [friend] |
Definition at line 49 of file MCSectionELF.h.