|
| MemoryManager (IRExecutionUnit &parent) |
|
| ~MemoryManager () override |
|
uint8_t * | allocateCodeSection (uintptr_t Size, unsigned Alignment, unsigned SectionID, llvm::StringRef SectionName) override |
| Allocate space for executable code, and add it to the m_spaceBlocks map.
|
|
uint8_t * | allocateDataSection (uintptr_t Size, unsigned Alignment, unsigned SectionID, llvm::StringRef SectionName, bool IsReadOnly) override |
| Allocate space for data, and add it to the m_spaceBlocks map.
|
|
bool | finalizeMemory (std::string *ErrMsg) override |
| Called when object loading is complete and section page permissions can be applied.
|
|
void | registerEHFrames (uint8_t *Addr, uint64_t LoadAddr, size_t Size) override |
|
void | deregisterEHFrames () override |
|
uint64_t | getSymbolAddress (const std::string &Name) override |
|
uint64_t | GetSymbolAddressAndPresence (const std::string &Name, bool &missing_weak) |
|
llvm::JITSymbol | findSymbol (const std::string &Name) override |
|
void * | getPointerToNamedFunction (const std::string &Name, bool AbortOnFailure=true) override |
|
Definition at line 236 of file IRExecutionUnit.h.
◆ MemoryManager()
◆ ~MemoryManager()
IRExecutionUnit::MemoryManager::~MemoryManager |
( |
| ) |
|
|
overridedefault |
◆ allocateCodeSection()
uint8_t * IRExecutionUnit::MemoryManager::allocateCodeSection |
( |
uintptr_t |
Size, |
|
|
unsigned |
Alignment, |
|
|
unsigned |
SectionID, |
|
|
llvm::StringRef |
SectionName |
|
) |
| |
|
override |
◆ allocateDataSection()
uint8_t * IRExecutionUnit::MemoryManager::allocateDataSection |
( |
uintptr_t |
Size, |
|
|
unsigned |
Alignment, |
|
|
unsigned |
SectionID, |
|
|
llvm::StringRef |
SectionName, |
|
|
bool |
IsReadOnly |
|
) |
| |
|
override |
◆ deregisterEHFrames()
void lldb_private::IRExecutionUnit::MemoryManager::deregisterEHFrames |
( |
| ) |
|
|
inlineoverride |
◆ finalizeMemory()
bool lldb_private::IRExecutionUnit::MemoryManager::finalizeMemory |
( |
std::string * |
ErrMsg | ) |
|
|
inlineoverride |
Called when object loading is complete and section page permissions can be applied.
Currently unimplemented for LLDB.
- Parameters
-
[out] | ErrMsg | The error that prevented the page protection from succeeding. |
- Returns
- True in case of failure, false in case of success.
Definition at line 289 of file IRExecutionUnit.h.
◆ findSymbol()
llvm::JITSymbol IRExecutionUnit::MemoryManager::findSymbol |
( |
const std::string & |
Name | ) |
|
|
override |
◆ getPointerToNamedFunction()
void * IRExecutionUnit::MemoryManager::getPointerToNamedFunction |
( |
const std::string & |
Name, |
|
|
bool |
AbortOnFailure = true |
|
) |
| |
|
override |
◆ getSymbolAddress()
uint64_t IRExecutionUnit::MemoryManager::getSymbolAddress |
( |
const std::string & |
Name | ) |
|
|
override |
◆ GetSymbolAddressAndPresence()
uint64_t IRExecutionUnit::MemoryManager::GetSymbolAddressAndPresence |
( |
const std::string & |
Name, |
|
|
bool & |
missing_weak |
|
) |
| |
◆ registerEHFrames()
void lldb_private::IRExecutionUnit::MemoryManager::registerEHFrames |
( |
uint8_t * |
Addr, |
|
|
uint64_t |
LoadAddr, |
|
|
size_t |
Size |
|
) |
| |
|
inlineoverride |
◆ m_default_mm_up
std::unique_ptr<SectionMemoryManager> lldb_private::IRExecutionUnit::MemoryManager::m_default_mm_up |
|
private |
The memory allocator to use in actually creating space.
All calls are passed through to it.
Definition at line 315 of file IRExecutionUnit.h.
◆ m_parent
The documentation for this class was generated from the following files: