LLVM
8.0.1
|
This is a value type class that represents a single section in the list of sections in the object file. More...
#include "llvm/Object/ObjectFile.h"
Public Member Functions | |
SectionRef ()=default | |
SectionRef (DataRefImpl SectionP, const ObjectFile *Owner) | |
SectionRef. More... | |
bool | operator== (const SectionRef &Other) const |
bool | operator!= (const SectionRef &Other) const |
bool | operator< (const SectionRef &Other) const |
void | moveNext () |
std::error_code | getName (StringRef &Result) const |
uint64_t | getAddress () const |
uint64_t | getIndex () const |
uint64_t | getSize () const |
std::error_code | getContents (StringRef &Result) const |
uint64_t | getAlignment () const |
Get the alignment of this section as the actual value (not log 2). More... | |
bool | isCompressed () const |
bool | isText () const |
Whether this section contains instructions. More... | |
bool | isData () const |
Whether this section contains data, not instructions. More... | |
bool | isBSS () const |
Whether this section contains BSS uninitialized data. More... | |
bool | isVirtual () const |
bool | isBitcode () const |
bool | isStripped () const |
bool | isBerkeleyText () const |
Whether this section will be placed in the text segment, according to the Berkeley size format. More... | |
bool | isBerkeleyData () const |
Whether this section will be placed in the data segment, according to the Berkeley size format. More... | |
bool | containsSymbol (SymbolRef S) const |
relocation_iterator | relocation_begin () const |
relocation_iterator | relocation_end () const |
iterator_range< relocation_iterator > | relocations () const |
section_iterator | getRelocatedSection () const |
DataRefImpl | getRawDataRefImpl () const |
const ObjectFile * | getObject () const |
Friends | |
class | SymbolRef |
This is a value type class that represents a single section in the list of sections in the object file.
Definition at line 81 of file ObjectFile.h.
|
default |
|
inline |
Definition at line 393 of file ObjectFile.h.
Definition at line 41 of file ObjectFile.cpp.
References llvm::consumeError(), llvm::object::SymbolRef::getSection(), and llvm::Expected< T >::takeError().
|
inline |
Definition at line 418 of file ObjectFile.h.
References llvm::object::ObjectFile::getSectionAddress().
Referenced by llvm::RuntimeDyldMachOX86_64::finalizeSection(), llvm::getOffset(), and llvm::RuntimeDyldMachO::getRelocationValueRef().
|
inline |
Get the alignment of this section as the actual value (not log 2).
Definition at line 434 of file ObjectFile.h.
References llvm::object::ObjectFile::getSectionAlignment().
Referenced by llvm::RuntimeDyldImpl::computeSectionStubBufSize(), llvm::RuntimeDyldImpl::computeTotalAllocSize(), and llvm::RuntimeDyldImpl::emitSection().
|
inline |
Definition at line 430 of file ObjectFile.h.
References llvm::object::ObjectFile::getSectionContents().
Referenced by llvm::RuntimeDyldImpl::emitSection().
|
inline |
Definition at line 422 of file ObjectFile.h.
References llvm::object::ObjectFile::getSectionIndex().
|
inline |
Definition at line 414 of file ObjectFile.h.
References llvm::object::ObjectFile::getSectionName().
Referenced by llvm::RuntimeDyldImpl::computeTotalAllocSize(), llvm::RuntimeDyldImpl::emitSection(), llvm::RuntimeDyldELF::finalizeLoad(), llvm::RuntimeDyldCOFFX86_64::finalizeLoad(), llvm::RuntimeDyldMachOI386::finalizeSection(), llvm::RuntimeDyldMachOARM::finalizeSection(), llvm::object::Decompressor::isCompressed(), and loadObj().
|
inline |
Definition at line 490 of file ObjectFile.h.
Referenced by llvm::object::ELFSectionRef::ELFSectionRef(), llvm::object::ELFSectionRef::getObject(), llvm::isReadOnlyData(), llvm::isRequiredForExecution(), and llvm::isZeroInit().
|
inline |
Definition at line 486 of file ObjectFile.h.
Referenced by llvm::RuntimeDyldMachOI386::finalizeSection(), llvm::object::COFFObjectFile::getCOFFSection(), llvm::object::MachOObjectFile::getSectionID(), llvm::object::COFFObjectFile::getSectionID(), llvm::object::MachOObjectFile::getSectionType(), llvm::object::WasmObjectFile::getWasmSection(), and llvm::RuntimeDyldMachO::populateIndirectSymbolPointersSection().
|
inline |
Definition at line 482 of file ObjectFile.h.
References llvm::object::ObjectFile::getRelocatedSection().
|
inline |
Definition at line 426 of file ObjectFile.h.
References llvm::object::ObjectFile::getSectionSize().
Referenced by llvm::RuntimeDyldImpl::computeSectionStubBufSize(), llvm::RuntimeDyldImpl::computeTotalAllocSize(), and llvm::RuntimeDyldImpl::emitSection().
|
inline |
Whether this section will be placed in the data segment, according to the Berkeley size format.
This is true if the section is allocatable and contains data (e.g. PROGBITS), but is not text.
Definition at line 470 of file ObjectFile.h.
References llvm::object::ObjectFile::isBerkeleyData().
|
inline |
Whether this section will be placed in the text segment, according to the Berkeley size format.
This is true if the section is allocatable, and contains either code or readonly data.
Definition at line 466 of file ObjectFile.h.
References llvm::object::ObjectFile::isBerkeleyText().
|
inline |
Definition at line 458 of file ObjectFile.h.
References llvm::object::ObjectFile::isSectionBitcode().
|
inline |
Whether this section contains BSS uninitialized data.
Definition at line 450 of file ObjectFile.h.
References llvm::object::ObjectFile::isSectionBSS().
|
inline |
Definition at line 438 of file ObjectFile.h.
References llvm::object::ObjectFile::isSectionCompressed().
Referenced by llvm::object::Decompressor::isCompressed().
|
inline |
Whether this section contains data, not instructions.
Definition at line 446 of file ObjectFile.h.
References llvm::object::ObjectFile::isSectionData().
|
inline |
Definition at line 462 of file ObjectFile.h.
References llvm::object::ObjectFile::isSectionStripped().
|
inline |
Whether this section contains instructions.
Definition at line 442 of file ObjectFile.h.
References llvm::object::ObjectFile::isSectionText().
Referenced by llvm::RuntimeDyldImpl::computeTotalAllocSize(), llvm::RuntimeDyldMachOX86_64::finalizeSection(), llvm::RuntimeDyldMachOI386::finalizeSection(), llvm::RuntimeDyldMachOARM::finalizeSection(), llvm::RuntimeDyldMachO::getRelocationValueRef(), and llvm::RuntimeDyldMachO::processScatteredVANILLA().
|
inline |
Definition at line 454 of file ObjectFile.h.
References llvm::object::ObjectFile::isSectionVirtual().
Referenced by llvm::RuntimeDyldImpl::emitSection().
|
inline |
Definition at line 410 of file ObjectFile.h.
References llvm::object::ObjectFile::moveSectionNext().
|
inline |
Definition at line 402 of file ObjectFile.h.
|
inline |
Definition at line 406 of file ObjectFile.h.
|
inline |
Definition at line 398 of file ObjectFile.h.
|
inline |
Definition at line 474 of file ObjectFile.h.
References llvm::object::ObjectFile::section_rel_begin().
|
inline |
Definition at line 478 of file ObjectFile.h.
References llvm::object::ObjectFile::section_rel_end().
|
inline |
Definition at line 130 of file ObjectFile.h.
References llvm::object::RelocationRef::getObject(), llvm::object::RelocationRef::getRawDataRefImpl(), and llvm::make_range().
Referenced by loadObj().
|
friend |
Definition at line 82 of file ObjectFile.h.