LLVM 22.0.0git
llvm::orc::EPCGenericMemoryAccess Class Reference

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

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

Classes

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

Public Member Functions

 EPCGenericMemoryAccess (ExecutorProcessControl &EPC, FuncAddrs FAs)
 Create an EPCGenericMemoryAccess instance from a given set of function addrs.
void writeUInt8sAsync (ArrayRef< tpctypes::UInt8Write > Ws, WriteResultFn OnWriteComplete) override
void writeUInt16sAsync (ArrayRef< tpctypes::UInt16Write > Ws, WriteResultFn OnWriteComplete) override
void writeUInt32sAsync (ArrayRef< tpctypes::UInt32Write > Ws, WriteResultFn OnWriteComplete) override
void writeUInt64sAsync (ArrayRef< tpctypes::UInt64Write > Ws, WriteResultFn OnWriteComplete) override
void writePointersAsync (ArrayRef< tpctypes::PointerWrite > Ws, WriteResultFn OnWriteComplete) override
void writeBuffersAsync (ArrayRef< tpctypes::BufferWrite > Ws, WriteResultFn OnWriteComplete) override
void readUInt8sAsync (ArrayRef< ExecutorAddr > Rs, OnReadUIntsCompleteFn< uint8_t > OnComplete) override
void readUInt16sAsync (ArrayRef< ExecutorAddr > Rs, OnReadUIntsCompleteFn< uint16_t > OnComplete) override
void readUInt32sAsync (ArrayRef< ExecutorAddr > Rs, OnReadUIntsCompleteFn< uint32_t > OnComplete) override
void readUInt64sAsync (ArrayRef< ExecutorAddr > Rs, OnReadUIntsCompleteFn< uint64_t > OnComplete) override
void readPointersAsync (ArrayRef< ExecutorAddr > Rs, OnReadPointersCompleteFn OnComplete) override
void readBuffersAsync (ArrayRef< ExecutorAddrRange > Rs, OnReadBuffersCompleteFn OnComplete) override
void readStringsAsync (ArrayRef< ExecutorAddr > Rs, OnReadStringsCompleteFn OnComplete) override
Public Member Functions inherited from llvm::orc::MemoryAccess
virtual ~MemoryAccess ()
Error writeUInt8s (ArrayRef< tpctypes::UInt8Write > Ws)
Error writeUInt16s (ArrayRef< tpctypes::UInt16Write > Ws)
Error writeUInt32s (ArrayRef< tpctypes::UInt32Write > Ws)
Error writeUInt64s (ArrayRef< tpctypes::UInt64Write > Ws)
Error writePointers (ArrayRef< tpctypes::PointerWrite > Ws)
Error writeBuffers (ArrayRef< tpctypes::BufferWrite > Ws)
Expected< ReadUIntsResult< uint8_t > > readUInt8s (ArrayRef< ExecutorAddr > Rs)
Expected< ReadUIntsResult< uint16_t > > readUInt16s (ArrayRef< ExecutorAddr > Rs)
Expected< ReadUIntsResult< uint32_t > > readUInt32s (ArrayRef< ExecutorAddr > Rs)
Expected< ReadUIntsResult< uint64_t > > readUInt64s (ArrayRef< ExecutorAddr > Rs)
Expected< ReadPointersResultreadPointers (ArrayRef< ExecutorAddr > Rs)
Expected< ReadBuffersResultreadBuffers (ArrayRef< ExecutorAddrRange > Rs)
Expected< ReadStringsResultreadStrings (ArrayRef< ExecutorAddr > Rs)

Additional Inherited Members

Public Types inherited from llvm::orc::MemoryAccess
using WriteResultFn = unique_function<void(Error)>
 Callback function for asynchronous writes.
template<typename T>
using ReadUIntsResult = std::vector<T>
template<typename T>
using OnReadUIntsCompleteFn
using ReadPointersResult = std::vector<ExecutorAddr>
using OnReadPointersCompleteFn
using ReadBuffersResult = std::vector<std::vector<uint8_t>>
using OnReadBuffersCompleteFn
using ReadStringsResult = std::vector<std::string>
using OnReadStringsCompleteFn

Detailed Description

Definition at line 26 of file EPCGenericMemoryAccess.h.

Constructor & Destructor Documentation

◆ EPCGenericMemoryAccess()

llvm::orc::EPCGenericMemoryAccess::EPCGenericMemoryAccess ( ExecutorProcessControl & EPC,
FuncAddrs FAs )
inline

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

Definition at line 47 of file EPCGenericMemoryAccess.h.

Member Function Documentation

◆ readBuffersAsync()

void llvm::orc::EPCGenericMemoryAccess::readBuffersAsync ( ArrayRef< ExecutorAddrRange > Rs,
OnReadBuffersCompleteFn OnComplete )
inlineoverridevirtual

Implements llvm::orc::MemoryAccess.

Definition at line 171 of file EPCGenericMemoryAccess.h.

References llvm::orc::Result.

◆ readPointersAsync()

void llvm::orc::EPCGenericMemoryAccess::readPointersAsync ( ArrayRef< ExecutorAddr > Rs,
OnReadPointersCompleteFn OnComplete )
inlineoverridevirtual

Implements llvm::orc::MemoryAccess.

Definition at line 155 of file EPCGenericMemoryAccess.h.

References llvm::orc::Result.

◆ readStringsAsync()

void llvm::orc::EPCGenericMemoryAccess::readStringsAsync ( ArrayRef< ExecutorAddr > Rs,
OnReadStringsCompleteFn OnComplete )
inlineoverridevirtual

Implements llvm::orc::MemoryAccess.

Definition at line 188 of file EPCGenericMemoryAccess.h.

References llvm::orc::Result.

◆ readUInt16sAsync()

void llvm::orc::EPCGenericMemoryAccess::readUInt16sAsync ( ArrayRef< ExecutorAddr > Rs,
OnReadUIntsCompleteFn< uint16_t > OnComplete )
inlineoverridevirtual

Implements llvm::orc::MemoryAccess.

Definition at line 107 of file EPCGenericMemoryAccess.h.

References llvm::orc::Result.

◆ readUInt32sAsync()

void llvm::orc::EPCGenericMemoryAccess::readUInt32sAsync ( ArrayRef< ExecutorAddr > Rs,
OnReadUIntsCompleteFn< uint32_t > OnComplete )
inlineoverridevirtual

Implements llvm::orc::MemoryAccess.

Definition at line 123 of file EPCGenericMemoryAccess.h.

References llvm::orc::Result.

◆ readUInt64sAsync()

void llvm::orc::EPCGenericMemoryAccess::readUInt64sAsync ( ArrayRef< ExecutorAddr > Rs,
OnReadUIntsCompleteFn< uint64_t > OnComplete )
inlineoverridevirtual

Implements llvm::orc::MemoryAccess.

Definition at line 139 of file EPCGenericMemoryAccess.h.

References llvm::orc::Result.

◆ readUInt8sAsync()

void llvm::orc::EPCGenericMemoryAccess::readUInt8sAsync ( ArrayRef< ExecutorAddr > Rs,
OnReadUIntsCompleteFn< uint8_t > OnComplete )
inlineoverridevirtual

Implements llvm::orc::MemoryAccess.

Definition at line 92 of file EPCGenericMemoryAccess.h.

References llvm::orc::Result.

◆ writeBuffersAsync()

void llvm::orc::EPCGenericMemoryAccess::writeBuffersAsync ( ArrayRef< tpctypes::BufferWrite > Ws,
WriteResultFn OnWriteComplete )
inlineoverridevirtual

Implements llvm::orc::MemoryAccess.

Definition at line 85 of file EPCGenericMemoryAccess.h.

◆ writePointersAsync()

void llvm::orc::EPCGenericMemoryAccess::writePointersAsync ( ArrayRef< tpctypes::PointerWrite > Ws,
WriteResultFn OnWriteComplete )
inlineoverridevirtual

Implements llvm::orc::MemoryAccess.

Definition at line 78 of file EPCGenericMemoryAccess.h.

◆ writeUInt16sAsync()

void llvm::orc::EPCGenericMemoryAccess::writeUInt16sAsync ( ArrayRef< tpctypes::UInt16Write > Ws,
WriteResultFn OnWriteComplete )
inlineoverridevirtual

Implements llvm::orc::MemoryAccess.

Definition at line 57 of file EPCGenericMemoryAccess.h.

◆ writeUInt32sAsync()

void llvm::orc::EPCGenericMemoryAccess::writeUInt32sAsync ( ArrayRef< tpctypes::UInt32Write > Ws,
WriteResultFn OnWriteComplete )
inlineoverridevirtual

Implements llvm::orc::MemoryAccess.

Definition at line 64 of file EPCGenericMemoryAccess.h.

◆ writeUInt64sAsync()

void llvm::orc::EPCGenericMemoryAccess::writeUInt64sAsync ( ArrayRef< tpctypes::UInt64Write > Ws,
WriteResultFn OnWriteComplete )
inlineoverridevirtual

Implements llvm::orc::MemoryAccess.

Definition at line 71 of file EPCGenericMemoryAccess.h.

◆ writeUInt8sAsync()

void llvm::orc::EPCGenericMemoryAccess::writeUInt8sAsync ( ArrayRef< tpctypes::UInt8Write > Ws,
WriteResultFn OnWriteComplete )
inlineoverridevirtual

Implements llvm::orc::MemoryAccess.

Definition at line 50 of file EPCGenericMemoryAccess.h.


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