|
LLVM 24.0.0git
|
#include "llvm/ExecutionEngine/Orc/EPCGenericDylibManager.h"
Classes | |
| struct | Bindings |
| The resolved controller-side handle to an executor-side dylib manager: the address of the manager instance (passed as the first argument to each call) plus the proxies for its functions. More... | |
Public Types | |
| using | OpenProxy |
| Proxy for the executor-side dylib-open function. | |
| using | ResolveProxy |
| Proxy for the executor-side symbol-resolution function. | |
| using | SymbolLookupCompleteFn |
| Public Types inherited from llvm::orc::DylibManager | |
| using | SymbolLookupCompleteFn |
Public Member Functions | |
| EPCGenericDylibManager (ExecutionSession &ES, Bindings B) | |
| Create an EPCGenericDylibManager instance from a given set of dylib-manager bindings. | |
| Expected< tpctypes::DylibHandle > | open (StringRef Path, uint64_t Mode) |
| Loads the dylib with the given name. | |
| Expected< tpctypes::LookupResult > | lookup (tpctypes::DylibHandle H, const SymbolLookupSet &Lookup) |
| Looks up symbols within the given dylib. | |
| void | lookupAsync (tpctypes::DylibHandle H, const SymbolLookupSet &Lookup, SymbolLookupCompleteFn Complete) |
| Looks up symbols within the given dylib. | |
| Expected< tpctypes::DylibHandle > | loadDylib (const char *DylibPath) override |
| Load the dynamic library at the given path and return a handle to it. | |
| void | lookupSymbolsAsync (tpctypes::DylibHandle H, const SymbolLookupSet &Symbols, DylibManager::SymbolLookupCompleteFn Complete) override |
| Search for symbols in the target process. | |
| Public Member Functions inherited from llvm::orc::DylibManager | |
| virtual | ~DylibManager () |
| Expected< tpctypes::LookupResult > | lookupSymbols (tpctypes::DylibHandle H, const SymbolLookupSet &Symbols) |
| Search for symbols in the target process. | |
Static Public Member Functions | |
| static Expected< EPCGenericDylibManager > | Create (JITDylib &JD) |
| Create an EPCGenericDylibManager for the ORC runtime's NativeDylibManager interface, resolving its symbols in the given JITDylib. | |
| static Expected< EPCGenericDylibManager > | Create (ExecutionSession &ES) |
| Create an EPCGenericDylibManager for the ORC runtime's NativeDylibManager interface, resolving its symbols in the given ExecutionSession's bootstrap JITDylib. | |
Definition at line 35 of file EPCGenericDylibManager.h.
Proxy for the executor-side dylib-open function.
Given the manager instance address, a path and mode flags it returns a handle to the opened dylib.
Definition at line 40 of file EPCGenericDylibManager.h.
Proxy for the executor-side symbol-resolution function.
Given the manager instance address, a dylib handle and a lookup set it returns the resolved addresses.
Definition at line 46 of file EPCGenericDylibManager.h.
Definition at line 87 of file EPCGenericDylibManager.h.
|
inline |
Create an EPCGenericDylibManager instance from a given set of dylib-manager bindings.
Definition at line 72 of file EPCGenericDylibManager.h.
References llvm::move().
Referenced by Create().
|
static |
Create an EPCGenericDylibManager for the ORC runtime's NativeDylibManager interface, resolving its symbols in the given ExecutionSession's bootstrap JITDylib.
Definition at line 78 of file EPCGenericDylibManager.cpp.
References Create().
|
static |
Create an EPCGenericDylibManager for the ORC runtime's NativeDylibManager interface, resolving its symbols in the given JITDylib.
Definition at line 61 of file EPCGenericDylibManager.cpp.
References llvm::orc::rt::buildProxies(), EPCGenericDylibManager(), llvm::orc::JITDylib::getExecutionSession(), llvm::orc::lookupAndRecordAddrs(), llvm::orc::makeJITDylibSearchOrder(), llvm::orc::rt::NativeDylibManagerInstanceName, llvm::orc::rt::proxyInit(), and llvm::orc::Static.
Referenced by Create(), llvm::orc::InProcessEPC::createDefaultDylibMgr(), and llvm::orc::SimpleRemoteEPC::createDefaultDylibMgr().
|
overridevirtual |
Load the dynamic library at the given path and return a handle to it.
If DylibPath is null this function will return the global handle for the target process.
Implements llvm::orc::DylibManager.
Definition at line 94 of file EPCGenericDylibManager.cpp.
References open().
|
inline |
Looks up symbols within the given dylib.
Definition at line 79 of file EPCGenericDylibManager.h.
References H, Lookup(), and lookupAsync().
| void llvm::orc::EPCGenericDylibManager::lookupAsync | ( | tpctypes::DylibHandle | H, |
| const SymbolLookupSet & | Lookup, | ||
| SymbolLookupCompleteFn | Complete ) |
Looks up symbols within the given dylib.
Definition at line 87 of file EPCGenericDylibManager.cpp.
Referenced by lookup(), and lookupSymbolsAsync().
|
overridevirtual |
Search for symbols in the target process.
Implements llvm::orc::DylibManager.
Definition at line 98 of file EPCGenericDylibManager.cpp.
References H, and lookupAsync().
| Expected< tpctypes::DylibHandle > llvm::orc::EPCGenericDylibManager::open | ( | StringRef | Path, |
| uint64_t | Mode ) |
Loads the dylib with the given name.
Definition at line 82 of file EPCGenericDylibManager.cpp.
References Mode.
Referenced by loadDylib().