LLVM 20.0.0git
|
Represents a defining location for a JIT symbol. More...
#include "llvm/ExecutionEngine/Orc/Shared/ExecutorSymbolDef.h"
Public Member Functions | |
template<typename T , typename WrapFn = ExecutorAddr::defaultWrap<std::remove_pointer_t<T>>> | |
std::enable_if_t< std::is_pointer< T >::value, T > | toPtr (WrapFn &&Wrap=WrapFn()) const |
Cast this ExecutorSymbolDef to a pointer of the given type. | |
template<typename T , typename WrapFn = ExecutorAddr::defaultWrap<T>> | |
std::enable_if_t< std::is_function< T >::value, T * > | toPtr (WrapFn &&Wrap=WrapFn()) const |
Cast this ExecutorSymbolDef to a pointer of the given function type. | |
ExecutorSymbolDef ()=default | |
ExecutorSymbolDef (ExecutorAddr Addr, JITSymbolFlags Flags) | |
const ExecutorAddr & | getAddress () const |
const JITSymbolFlags & | getFlags () const |
void | setFlags (JITSymbolFlags Flags) |
Static Public Member Functions | |
template<typename T , typename UnwrapFn = ExecutorAddr::defaultUnwrap<T>> | |
static ExecutorSymbolDef | fromPtr (T *Ptr, JITSymbolFlags BaseFlags=JITSymbolFlags(), UnwrapFn &&Unwrap=UnwrapFn()) |
Create an ExecutorSymbolDef from the given pointer. | |
Friends | |
bool | operator== (const ExecutorSymbolDef &LHS, const ExecutorSymbolDef &RHS) |
bool | operator!= (const ExecutorSymbolDef &LHS, const ExecutorSymbolDef &RHS) |
Represents a defining location for a JIT symbol.
Definition at line 24 of file ExecutorSymbolDef.h.
|
default |
Referenced by fromPtr().
|
inline |
Definition at line 58 of file ExecutorSymbolDef.h.
References Addr.
|
inlinestatic |
Create an ExecutorSymbolDef from the given pointer.
Warning: This should only be used when JITing in-process.
Definition at line 29 of file ExecutorSymbolDef.h.
References llvm::JITSymbolFlags::Callable, ExecutorSymbolDef(), llvm::orc::ExecutorAddr::fromPtr(), and Ptr.
|
inline |
Definition at line 61 of file ExecutorSymbolDef.h.
Referenced by LLVMOrcLazyCallThroughManagerRef::fromExecutorSymbolDef(), llvm::orc::shared::SPSSerializationTraits< SPSExecutorSymbolDef, ExecutorSymbolDef >::serialize(), and llvm::orc::shared::SPSSerializationTraits< SPSExecutorSymbolDef, ExecutorSymbolDef >::size().
|
inline |
Definition at line 63 of file ExecutorSymbolDef.h.
Referenced by LLVMOrcLazyCallThroughManagerRef::fromExecutorSymbolDef(), llvm::orc::shared::SPSSerializationTraits< SPSExecutorSymbolDef, ExecutorSymbolDef >::serialize(), and llvm::orc::shared::SPSSerializationTraits< SPSExecutorSymbolDef, ExecutorSymbolDef >::size().
|
inline |
Definition at line 65 of file ExecutorSymbolDef.h.
|
inline |
Cast this ExecutorSymbolDef to a pointer of the given type.
Warning: This should only be used when JITing in-process.
Definition at line 45 of file ExecutorSymbolDef.h.
References llvm::orc::ExecutorAddr::toPtr().
|
inline |
Cast this ExecutorSymbolDef to a pointer of the given function type.
Warning: This should only be used when JITing in-process.
Definition at line 53 of file ExecutorSymbolDef.h.
References llvm::orc::ExecutorAddr::toPtr().
|
friend |
Definition at line 73 of file ExecutorSymbolDef.h.
|
friend |
Definition at line 67 of file ExecutorSymbolDef.h.