LLVM 23.0.0git
llvm::orc::EPCGenericDylibManager Class Reference

#include "llvm/ExecutionEngine/Orc/EPCGenericDylibManager.h"

Inheritance diagram for llvm::orc::EPCGenericDylibManager:
[legend]

Classes

struct  SymbolAddrs
 Function addresses for memory access. More...

Public Types

using SymbolLookupCompleteFn
Public Types inherited from llvm::orc::DylibManager
using SymbolLookupCompleteFn

Public Member Functions

 EPCGenericDylibManager (ExecutorProcessControl &EPC, SymbolAddrs SAs)
 Create an EPCGenericMemoryAccess instance from a given set of function addrs.
LLVM_ABI Expected< tpctypes::DylibHandleopen (StringRef Path, uint64_t Mode)
 Loads the dylib with the given name.
Expected< tpctypes::LookupResultlookup (tpctypes::DylibHandle H, const SymbolLookupSet &Lookup)
 Looks up symbols within the given dylib.
Expected< tpctypes::LookupResultlookup (tpctypes::DylibHandle H, const RemoteSymbolLookupSet &Lookup)
 Looks up symbols within the given dylib.
LLVM_ABI void lookupAsync (tpctypes::DylibHandle H, const SymbolLookupSet &Lookup, SymbolLookupCompleteFn Complete)
 Looks up symbols within the given dylib.
LLVM_ABI void lookupAsync (tpctypes::DylibHandle H, const RemoteSymbolLookupSet &Lookup, SymbolLookupCompleteFn Complete)
 Looks up symbols within the given dylib.
LLVM_ABI Expected< tpctypes::DylibHandleloadDylib (const char *DylibPath) override
 Load the dynamic library at the given path and return a handle to it.
LLVM_ABI void lookupSymbolsAsync (ArrayRef< DylibManager::LookupRequest > Request, DylibManager::SymbolLookupCompleteFn Complete) override
 Search for symbols in the target process.
Public Member Functions inherited from llvm::orc::DylibManager
virtual ~DylibManager ()
Expected< std::vector< tpctypes::LookupResult > > lookupSymbols (ArrayRef< LookupRequest > Request)
 Search for symbols in the target process.

Static Public Member Functions

static LLVM_ABI Expected< EPCGenericDylibManagerCreateWithDefaultBootstrapSymbols (ExecutorProcessControl &EPC)
 Create an EPCGenericMemoryAccess instance from a given set of function addrs.

Detailed Description

Definition at line 31 of file EPCGenericDylibManager.h.

Member Typedef Documentation

◆ SymbolLookupCompleteFn

Initial value:
Tagged union holding either a T or a Error.
Definition Error.h:485
unique_function is a type-erasing functor similar to std::function.

Definition at line 71 of file EPCGenericDylibManager.h.

Constructor & Destructor Documentation

◆ EPCGenericDylibManager()

llvm::orc::EPCGenericDylibManager::EPCGenericDylibManager ( ExecutorProcessControl & EPC,
SymbolAddrs SAs )
inline

Create an EPCGenericMemoryAccess instance from a given set of function addrs.

Definition at line 47 of file EPCGenericDylibManager.h.

Member Function Documentation

◆ CreateWithDefaultBootstrapSymbols()

Expected< EPCGenericDylibManager > llvm::orc::EPCGenericDylibManager::CreateWithDefaultBootstrapSymbols ( ExecutorProcessControl & EPC)
static

Create an EPCGenericMemoryAccess instance from a given set of function addrs.

Definition at line 63 of file EPCGenericDylibManager.cpp.

Referenced by llvm::orc::SimpleRemoteEPC::createDefaultDylibMgr().

◆ loadDylib()

Expected< tpctypes::DylibHandle > llvm::orc::EPCGenericDylibManager::loadDylib ( const char * DylibPath)
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 123 of file EPCGenericDylibManager.cpp.

References loadDylib(), and open().

Referenced by loadDylib().

◆ lookup() [1/2]

Expected< tpctypes::LookupResult > llvm::orc::EPCGenericDylibManager::lookup ( tpctypes::DylibHandle H,
const RemoteSymbolLookupSet & Lookup )
inline

Looks up symbols within the given dylib.

Definition at line 63 of file EPCGenericDylibManager.h.

References H, Lookup(), and lookupAsync().

◆ lookup() [2/2]

Expected< tpctypes::LookupResult > llvm::orc::EPCGenericDylibManager::lookup ( tpctypes::DylibHandle H,
const SymbolLookupSet & Lookup )
inline

Looks up symbols within the given dylib.

Definition at line 54 of file EPCGenericDylibManager.h.

References H, Lookup(), and lookupAsync().

◆ lookupAsync() [1/2]

void llvm::orc::EPCGenericDylibManager::lookupAsync ( tpctypes::DylibHandle H,
const RemoteSymbolLookupSet & Lookup,
SymbolLookupCompleteFn Complete )

Looks up symbols within the given dylib.

Definition at line 103 of file EPCGenericDylibManager.cpp.

References llvm::cantFail(), H, Lookup(), lookupAsync(), and llvm::orc::Result.

◆ lookupAsync() [2/2]

void llvm::orc::EPCGenericDylibManager::lookupAsync ( tpctypes::DylibHandle H,
const SymbolLookupSet & Lookup,
SymbolLookupCompleteFn Complete )

Looks up symbols within the given dylib.

Definition at line 84 of file EPCGenericDylibManager.cpp.

References llvm::cantFail(), H, Lookup(), lookupAsync(), and llvm::orc::Result.

Referenced by lookup(), lookup(), lookupAsync(), lookupAsync(), and llvm::orc::lookupSymbolsAsyncHelper().

◆ lookupSymbolsAsync()

void llvm::orc::EPCGenericDylibManager::lookupSymbolsAsync ( ArrayRef< DylibManager::LookupRequest > Request,
DylibManager::SymbolLookupCompleteFn Complete )
overridevirtual

Search for symbols in the target process.

Implements llvm::orc::DylibManager.

Definition at line 154 of file EPCGenericDylibManager.cpp.

References lookupSymbolsAsync(), and llvm::orc::lookupSymbolsAsyncHelper().

Referenced by lookupSymbolsAsync().

◆ open()

Expected< tpctypes::DylibHandle > llvm::orc::EPCGenericDylibManager::open ( StringRef Path,
uint64_t Mode )

Loads the dylib with the given name.

Definition at line 74 of file EPCGenericDylibManager.cpp.

References H, Mode, and open().

Referenced by loadDylib(), and open().


The documentation for this class was generated from the following files: