LLVM 17.0.0git
|
A trampoline pool for trampolines within the current process. More...
#include "llvm/ExecutionEngine/Orc/IndirectionUtils.h"
Static Public Member Functions | |
static Expected< std::unique_ptr< LocalTrampolinePool > > | Create (ResolveLandingFunction ResolveLanding) |
Creates a LocalTrampolinePool with the given RunCallback function. | |
Additional Inherited Members | |
![]() | |
using | NotifyLandingResolvedFunction = unique_function< void(JITTargetAddress) const > |
using | ResolveLandingFunction = unique_function< void(JITTargetAddress TrampolineAddr, NotifyLandingResolvedFunction OnLandingResolved) const > |
![]() | |
virtual | ~TrampolinePool () |
Expected< JITTargetAddress > | getTrampoline () |
Get an available trampoline address. | |
void | releaseTrampoline (JITTargetAddress TrampolineAddr) |
Returns the given trampoline to the pool for re-use. | |
virtual Error | grow ()=0 |
![]() | |
std::mutex | TPMutex |
std::vector< JITTargetAddress > | AvailableTrampolines |
A trampoline pool for trampolines within the current process.
Definition at line 102 of file IndirectionUtils.h.
|
inlinestatic |
Creates a LocalTrampolinePool with the given RunCallback function.
Returns an error if this function is unable to correctly allocate, write and protect the resolver code block.
Definition at line 108 of file IndirectionUtils.h.
References llvm::Error::success().