|
LLVM
3.7.0
|
This is a value type class that represents a single symbol in the list of symbols in the object file. More...
#include <ObjectFile.h>
Public Types | |
| enum | Type { ST_Unknown, ST_Data, ST_Debug, ST_File, ST_Function, ST_Other } |
Public Types inherited from llvm::object::BasicSymbolRef | |
| enum | Flags : unsigned { SF_None = 0, SF_Undefined = 1U << 0, SF_Global = 1U << 1, SF_Weak = 1U << 2, SF_Absolute = 1U << 3, SF_Common = 1U << 4, SF_Indirect = 1U << 5, SF_Exported = 1U << 6, SF_FormatSpecific = 1U << 7, SF_Thumb = 1U << 8, SF_Hidden = 1U << 9 } |
Public Member Functions | |
| SymbolRef () | |
| SymbolRef (DataRefImpl SymbolP, const ObjectFile *Owner) | |
| SymbolRef (const BasicSymbolRef &B) | |
| ErrorOr< StringRef > | getName () const |
| ErrorOr< uint64_t > | getAddress () const |
| Returns the symbol virtual address (i.e. More... | |
| uint64_t | getValue () const |
| Return the value of the symbol depending on the object this can be an offset or a virtual address. More... | |
| uint32_t | getAlignment () const |
| Get the alignment of this symbol as the actual value (not log 2). More... | |
| uint64_t | getCommonSize () const |
| SymbolRef::Type | getType () const |
| std::error_code | getSection (section_iterator &Result) const |
| Get section this symbol is defined in reference to. More... | |
| const ObjectFile * | getObject () const |
Public Member Functions inherited from llvm::object::BasicSymbolRef | |
| BasicSymbolRef () | |
| BasicSymbolRef (DataRefImpl SymbolP, const SymbolicFile *Owner) | |
| bool | operator== (const BasicSymbolRef &Other) const |
| bool | operator< (const BasicSymbolRef &Other) const |
| void | moveNext () |
| std::error_code | printName (raw_ostream &OS) const |
| uint32_t | getFlags () const |
| Get symbol flags (bitwise OR of SymbolRef::Flags) More... | |
| DataRefImpl | getRawDataRefImpl () const |
| const SymbolicFile * | getObject () const |
Friends | |
| class | SectionRef |
This is a value type class that represents a single symbol in the list of symbols in the object file.
Definition at line 114 of file ObjectFile.h.
| Enumerator | |
|---|---|
| ST_Unknown | |
| ST_Data | |
| ST_Debug | |
| ST_File | |
| ST_Function | |
| ST_Other | |
Definition at line 120 of file ObjectFile.h.
|
inline |
Definition at line 118 of file ObjectFile.h.
|
inline |
Definition at line 303 of file ObjectFile.h.
|
inline |
Definition at line 130 of file ObjectFile.h.
References llvm::object::BasicSymbolRef::getObject().
|
inline |
Returns the symbol virtual address (i.e.
address at which it will be mapped).
Definition at line 310 of file ObjectFile.h.
References getObject(), llvm::object::BasicSymbolRef::getRawDataRefImpl(), and llvm::object::ObjectFile::getSymbolAddress().
Referenced by llvm::DWARFContextInMemory::DWARFContextInMemory(), and llvm::getOffset().
|
inline |
Get the alignment of this symbol as the actual value (not log 2).
Definition at line 318 of file ObjectFile.h.
References getObject(), llvm::object::BasicSymbolRef::getRawDataRefImpl(), and llvm::object::ObjectFile::getSymbolAlignment().
|
inline |
Definition at line 322 of file ObjectFile.h.
References llvm::object::ObjectFile::getCommonSymbolSize(), getObject(), and llvm::object::BasicSymbolRef::getRawDataRefImpl().
Definition at line 306 of file ObjectFile.h.
References getObject(), llvm::object::BasicSymbolRef::getRawDataRefImpl(), and llvm::object::ObjectFile::getSymbolName().
Referenced by llvm::RuntimeDyldMachO::getRelocationValueRef(), llvm::RuntimeDyldMachO::populateIndirectSymbolPointersSection(), llvm::RuntimeDyldCOFFX86_64::processRelocationRef(), and llvm::RuntimeDyldELF::processRelocationRef().
|
inline |
Definition at line 334 of file ObjectFile.h.
References llvm::object::BasicSymbolRef::getObject().
Referenced by llvm::object::ELFSymbolRef::ELFSymbolRef(), getAddress(), getAlignment(), getCommonSize(), getName(), getSection(), getType(), and getValue().
|
inline |
Get section this symbol is defined in reference to.
Result is end_sections() if it is undefined or is an absolute symbol.
Definition at line 326 of file ObjectFile.h.
References getObject(), llvm::object::BasicSymbolRef::getRawDataRefImpl(), and llvm::object::ObjectFile::getSymbolSection().
Referenced by llvm::object::SectionRef::containsSymbol(), llvm::DWARFContextInMemory::DWARFContextInMemory(), llvm::RuntimeDyldCOFFX86_64::processRelocationRef(), and llvm::RuntimeDyldELF::processRelocationRef().
|
inline |
Definition at line 330 of file ObjectFile.h.
References getObject(), llvm::object::BasicSymbolRef::getRawDataRefImpl(), and llvm::object::ObjectFile::getSymbolType().
Referenced by llvm::RuntimeDyldELF::processRelocationRef().
|
inline |
Return the value of the symbol depending on the object this can be an offset or a virtual address.
Definition at line 314 of file ObjectFile.h.
References getObject(), llvm::object::BasicSymbolRef::getRawDataRefImpl(), and llvm::object::ObjectFile::getSymbolValue().
Referenced by llvm::object::computeSymbolSizes(), and llvm::RuntimeDyldCOFF::getSymbolOffset().
|
friend |
Definition at line 115 of file ObjectFile.h.
1.8.6