LLVM 20.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(ExecutorAddr) const > |
using | ResolveLandingFunction = unique_function< void(ExecutorAddr TrampolineAddr, NotifyLandingResolvedFunction OnLandingResolved) const > |
![]() | |
virtual | ~TrampolinePool () |
Expected< ExecutorAddr > | getTrampoline () |
Get an available trampoline address. | |
void | releaseTrampoline (ExecutorAddr TrampolineAddr) |
Returns the given trampoline to the pool for re-use. | |
virtual Error | grow ()=0 |
![]() | |
std::mutex | TPMutex |
std::vector< ExecutorAddr > | AvailableTrampolines |
A trampoline pool for trampolines within the current process.
Definition at line 103 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 109 of file IndirectionUtils.h.
References llvm::Error::success().