LLVM: llvm::orc::OrcRiscv64 Class Reference (original ) (raw )#include "[llvm/ExecutionEngine/Orc/OrcABISupport.h](OrcABISupport%5F8h%5Fsource.html)"
Static Public Member Functions
static LLVM_ABI void
writeResolverCode (char *ResolverWorkingMem, ExecutorAddr ResolverTargetAddress, ExecutorAddr ReentryFnAddr, ExecutorAddr ReentryCtxAddr)
Write the resolver code into the given memory.
static LLVM_ABI void
writeTrampolines (char *TrampolineBlockWorkingMem, ExecutorAddr TrampolineBlockTargetAddress, ExecutorAddr ResolverFnAddr, unsigned NumTrampolines)
Write the requested number of trampolines into the given memory, which must be big enough to hold 1 pointer, plus NumTrampolines trampolines.
static LLVM_ABI void
writeIndirectStubsBlock (char *StubsBlockWorkingMem, ExecutorAddr StubsBlockTargetAddress, ExecutorAddr PointersBlockTargetAddress, unsigned NumStubs)
Write NumStubs indirect stubs to working memory at StubsBlockWorkingMem.
Definition at line 338 of file OrcABISupport.h .
◆ writeIndirectStubsBlock()
void llvm::orc::OrcRiscv64::writeIndirectStubsBlock ( char * StubsBlockWorkingMem , ExecutorAddr StubsBlockTargetAddress , ExecutorAddr PointersBlockTargetAddress , unsigned NumStubs )
static
◆ writeResolverCode()Write the resolver code into the given memory.
The user is responsible for allocating the memory and setting permissions.
ReentryFnAddr should be the address of a function whose signature matches void* (*)(void *TrampolineAddr, void *ReentryCtxAddr). The ReentryCtxAddr argument of writeResolverCode will be passed as the second argument to the function at ReentryFnAddr.
Definition at line 917 of file OrcABISupport.cpp .
◆ writeTrampolines()
void llvm::orc::OrcRiscv64::writeTrampolines ( char * TrampolineBlockWorkingMem , ExecutorAddr TrampolineBlockTargetAddress , ExecutorAddr ResolverFnAddr , unsigned NumTrampolines )
static
◆ PointerSize
unsigned llvm::orc::OrcRiscv64::PointerSize = 8
staticconstexpr
◆ ResolverCodeSize
unsigned llvm::orc::OrcRiscv64::ResolverCodeSize = 0x148
staticconstexpr
◆ StubSize
unsigned llvm::orc::OrcRiscv64::StubSize = 16
staticconstexpr
◆ StubToPointerMaxDisplacement
unsigned llvm::orc::OrcRiscv64::StubToPointerMaxDisplacement = 1 << 31
staticconstexpr
◆ TrampolineSize
unsigned llvm::orc::OrcRiscv64::TrampolineSize = 16
staticconstexpr
The documentation for this class was generated from the following files: