LLVM 24.0.0git
EPCGenericDylibManagerSPS.h
Go to the documentation of this file.
1//===- EPCGenericDylibManagerSPS.h - SPS dylib management -------*- C++ -*-===//
2//
3// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
4// See https://llvm.org/LICENSE.txt for license information.
5// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
6//
7//===----------------------------------------------------------------------===//
8//
9// Binds EPCGenericDylibManager to the ORC runtime's SPS controller interface:
10// a ProxySpec per operation, plus factories that resolve them and construct an
11// instance.
12//
13// Each spec is built from the controller-interface descriptor for one of
14// EPCGenericDylibManager's operations in
15// Shared/SPSCI/NativeDylibManagerSPSCI.h, which supplies the wrapper name and
16// wire signature. The specs are public so that clients can resolve the
17// operations under non-default names, using recordProxy<Spec>(&P, Name) with
18// lookupAndApply.
19//
20//===----------------------------------------------------------------------===//
21
22#ifndef LLVM_EXECUTIONENGINE_ORC_EPCGENERICDYLIBMANAGERSPS_H
23#define LLVM_EXECUTIONENGINE_ORC_EPCGENERICDYLIBMANAGERSPS_H
24
29
30#include <memory>
31
32namespace llvm::orc::sps {
33
36
37/// Create an EPCGenericDylibManager for the ORC runtime's NativeDylibManager
38/// interface, resolving its symbols in the given JITDylib.
41
42/// Create an EPCGenericDylibManager for the ORC runtime's NativeDylibManager
43/// interface, resolving its symbols in the given ExecutionSession's bootstrap
44/// JITDylib.
47
48} // namespace llvm::orc::sps
49
50#endif // LLVM_EXECUTIONENGINE_ORC_EPCGENERICDYLIBMANAGERSPS_H
#define LLVM_ABI
Definition Compiler.h:211
Tagged union holding either a T or a Error.
Definition Error.h:485
An ExecutionSession represents a running JIT program.
Definition Core.h:1097
Represents a JIT'd dynamic library.
Definition Core.h:668
Dispatches proxies for the call described by CI, which must provide:
ProxySpec< rt::sps_ci::DylibMgrOpen > DylibMgrOpenProxySpec
ProxySpec< rt::sps_ci::DylibMgrResolve > DylibMgrResolveProxySpec
LLVM_ABI Expected< std::unique_ptr< EPCGenericDylibManager > > createEPCGenericDylibManager(JITDylib &JD)
Create an EPCGenericDylibManager for the ORC runtime's NativeDylibManager interface,...