class SectionRef
Declaration
class SectionRef { /* full declaration omitted */ };
Description
This is a value type class that represents a single section in the list of sections in the object file.
Declared at: llvm/include/llvm/Object/ObjectFile.h:80
Member Variables
- private llvm::object::DataRefImpl SectionPimpl
- private const llvm::object::ObjectFile* OwningObject = nullptr
Method Overview
- public SectionRef(llvm::object::DataRefImpl SectionP, const llvm::object::ObjectFile * Owner)
- public SectionRef()
- public bool containsSymbol(llvm::object::SymbolRef S) const
- public uint64_t getAddress() const
- public uint64_t getAlignment() const
- public Expected<llvm::StringRef> getContents() const
- public uint64_t getIndex() const
- public Expected<llvm::StringRef> getName() const
- public const llvm::object::ObjectFile * getObject() const
- public llvm::object::DataRefImpl getRawDataRefImpl() const
- public Expected<llvm::object::section_iterator> getRelocatedSection() const
- public uint64_t getSize() const
- public bool isBSS() const
- public bool isBerkeleyData() const
- public bool isBerkeleyText() const
- public bool isBitcode() const
- public bool isCompressed() const
- public bool isData() const
- public bool isDebugSection() const
- public bool isStripped() const
- public bool isText() const
- public bool isVirtual() const
- public void moveNext()
- public llvm::object::relocation_iterator relocation_begin() const
- public llvm::object::relocation_iterator relocation_end() const
- public iterator_range<llvm::object::relocation_iterator> relocations() const
Methods
¶SectionRef(llvm::object::DataRefImpl SectionP,
const llvm::object::ObjectFile* Owner)
SectionRef(llvm::object::DataRefImpl SectionP,
const llvm::object::ObjectFile* Owner)
Description
SectionRef
Declared at: llvm/include/llvm/Object/ObjectFile.h:88
Parameters
- llvm::object::DataRefImpl SectionP
- const llvm::object::ObjectFile* Owner
¶SectionRef()
SectionRef()
Declared at: llvm/include/llvm/Object/ObjectFile.h:87
¶bool containsSymbol(
llvm::object::SymbolRef S) const
bool containsSymbol(
llvm::object::SymbolRef S) const
Declared at: llvm/include/llvm/Object/ObjectFile.h:128
Parameters
¶uint64_t getAddress() const
uint64_t getAddress() const
Declared at: llvm/include/llvm/Object/ObjectFile.h:97
¶uint64_t getAlignment() const
uint64_t getAlignment() const
Description
Get the alignment of this section as the actual value (not log 2).
Declared at: llvm/include/llvm/Object/ObjectFile.h:103
¶Expected<llvm::StringRef> getContents() const
Expected<llvm::StringRef> getContents() const
Declared at: llvm/include/llvm/Object/ObjectFile.h:100
¶uint64_t getIndex() const
uint64_t getIndex() const
Declared at: llvm/include/llvm/Object/ObjectFile.h:98
¶Expected<llvm::StringRef> getName() const
Expected<llvm::StringRef> getName() const
Declared at: llvm/include/llvm/Object/ObjectFile.h:96
¶const llvm::object::ObjectFile* getObject() const
const llvm::object::ObjectFile* getObject() const
Declared at: llvm/include/llvm/Object/ObjectFile.h:141
¶llvm::object::DataRefImpl getRawDataRefImpl()
const
llvm::object::DataRefImpl getRawDataRefImpl()
const
Declared at: llvm/include/llvm/Object/ObjectFile.h:140
¶Expected<llvm::object::section_iterator>
getRelocatedSection() const
Expected<llvm::object::section_iterator>
getRelocatedSection() const
Description
Returns the related section if this section contains relocations. The returned section may or may not have applied its relocations.
Declared at: llvm/include/llvm/Object/ObjectFile.h:138
¶uint64_t getSize() const
uint64_t getSize() const
Declared at: llvm/include/llvm/Object/ObjectFile.h:99
¶bool isBSS() const
bool isBSS() const
Description
Whether this section contains BSS uninitialized data.
Declared at: llvm/include/llvm/Object/ObjectFile.h:111
¶bool isBerkeleyData() const
bool isBerkeleyData() const
Description
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.
Declared at: llvm/include/llvm/Object/ObjectFile.h:123
¶bool isBerkeleyText() const
bool isBerkeleyText() const
Description
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.
Declared at: llvm/include/llvm/Object/ObjectFile.h:119
¶bool isBitcode() const
bool isBitcode() const
Declared at: llvm/include/llvm/Object/ObjectFile.h:113
¶bool isCompressed() const
bool isCompressed() const
Declared at: llvm/include/llvm/Object/ObjectFile.h:105
¶bool isData() const
bool isData() const
Description
Whether this section contains data, not instructions.
Declared at: llvm/include/llvm/Object/ObjectFile.h:109
¶bool isDebugSection() const
bool isDebugSection() const
Description
Whether this section is a debug section.
Declared at: llvm/include/llvm/Object/ObjectFile.h:126
¶bool isStripped() const
bool isStripped() const
Declared at: llvm/include/llvm/Object/ObjectFile.h:114
¶bool isText() const
bool isText() const
Description
Whether this section contains instructions.
Declared at: llvm/include/llvm/Object/ObjectFile.h:107
¶bool isVirtual() const
bool isVirtual() const
Declared at: llvm/include/llvm/Object/ObjectFile.h:112
¶void moveNext()
void moveNext()
Declared at: llvm/include/llvm/Object/ObjectFile.h:94
¶llvm::object::relocation_iterator
relocation_begin() const
llvm::object::relocation_iterator
relocation_begin() const
Declared at: llvm/include/llvm/Object/ObjectFile.h:130
¶llvm::object::relocation_iterator relocation_end()
const
llvm::object::relocation_iterator relocation_end()
const
Declared at: llvm/include/llvm/Object/ObjectFile.h:131
¶iterator_range<llvm::object::relocation_iterator>
relocations() const
iterator_range<llvm::object::relocation_iterator>
relocations() const
Declared at: llvm/include/llvm/Object/ObjectFile.h:132