LLVM 23.0.0git
llvm::orc::InProcessEPC::Connection Struct Reference

Pseudo-connection C struct. More...

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

Public Attributes

void(* Retain )(Connection *C) = nullptr
void(* Release )(Connection *C) = nullptr
void(* Disconnect )(Connection *C) = nullptr
int(* EnterMessageScope )(Connection *C) = nullptr
void(* LeaveMessageScope )(Connection *C) = nullptr
void * IPEPC = nullptr
 Accessors to be set by the InProcessEPC instance.
void(* CallJITDispatch )(void *IPEPC, uint64_t CallId, void *HandlerTag, shared::CWrapperFunctionBuffer ArgBytes) = nullptr
void(* ReturnWrapperResult )(void *IPEPC, uint64_t CallId, shared::CWrapperFunctionBuffer ResultBytes)
void * IPCA = nullptr
 Accessors to be set by the InProcessControllerAccess instance.
void(* CallWrapper )(void *IPCA, uint64_t CallId, void *Fn, shared::CWrapperFunctionBuffer ArgBytes) = nullptr
void(* ReturnJITDispatchResult )(void *IPCA, uint64_t CallId, shared::CWrapperFunctionBuffer ResultBytes) = nullptr

Detailed Description

Pseudo-connection C struct.

Used to facilitate calls between InProcessEPC and InProcessControllerAccess without relying on anything but C ABI. Must be kept in-sync with the corresponding struct in orc_rt::InProcessControllerAccess.

Definition at line 40 of file InProcessEPC.h.

Member Data Documentation

◆ CallJITDispatch

void(* llvm::orc::InProcessEPC::Connection::CallJITDispatch) (void *IPEPC, uint64_t CallId, void *HandlerTag, shared::CWrapperFunctionBuffer ArgBytes) = nullptr

Definition at line 49 of file InProcessEPC.h.

◆ CallWrapper

void(* llvm::orc::InProcessEPC::Connection::CallWrapper) (void *IPCA, uint64_t CallId, void *Fn, shared::CWrapperFunctionBuffer ArgBytes) = nullptr

Definition at line 57 of file InProcessEPC.h.

◆ Disconnect

void(* llvm::orc::InProcessEPC::Connection::Disconnect) (Connection *C) = nullptr

Definition at line 43 of file InProcessEPC.h.

◆ EnterMessageScope

int(* llvm::orc::InProcessEPC::Connection::EnterMessageScope) (Connection *C) = nullptr

Definition at line 44 of file InProcessEPC.h.

◆ IPCA

void* llvm::orc::InProcessEPC::Connection::IPCA = nullptr

Accessors to be set by the InProcessControllerAccess instance.

Definition at line 56 of file InProcessEPC.h.

◆ IPEPC

void* llvm::orc::InProcessEPC::Connection::IPEPC = nullptr

Accessors to be set by the InProcessEPC instance.

Definition at line 48 of file InProcessEPC.h.

◆ LeaveMessageScope

void(* llvm::orc::InProcessEPC::Connection::LeaveMessageScope) (Connection *C) = nullptr

Definition at line 45 of file InProcessEPC.h.

◆ Release

void(* llvm::orc::InProcessEPC::Connection::Release) (Connection *C) = nullptr

Definition at line 42 of file InProcessEPC.h.

◆ Retain

void(* llvm::orc::InProcessEPC::Connection::Retain) (Connection *C) = nullptr

Definition at line 41 of file InProcessEPC.h.

◆ ReturnJITDispatchResult

void(* llvm::orc::InProcessEPC::Connection::ReturnJITDispatchResult) (void *IPCA, uint64_t CallId, shared::CWrapperFunctionBuffer ResultBytes) = nullptr

Definition at line 59 of file InProcessEPC.h.

◆ ReturnWrapperResult

void(* llvm::orc::InProcessEPC::Connection::ReturnWrapperResult) (void *IPEPC, uint64_t CallId, shared::CWrapperFunctionBuffer ResultBytes)
Initial value:
=
nullptr

Definition at line 51 of file InProcessEPC.h.


The documentation for this struct was generated from the following file: