LLVM 20.0.0git
|
Uses read/write on FileDescriptors for transport. More...
#include "llvm/ExecutionEngine/Orc/Shared/SimpleRemoteEPCUtils.h"
Public Member Functions | |
~FDSimpleRemoteEPCTransport () override | |
Error | start () override |
Called during setup of the client to indicate that the client is ready to receive messages. | |
Error | sendMessage (SimpleRemoteEPCOpcode OpC, uint64_t SeqNo, ExecutorAddr TagAddr, ArrayRef< char > ArgBytes) override |
Send a SimpleRemoteEPC message. | |
void | disconnect () override |
Trigger disconnection from the transport. | |
Public Member Functions inherited from llvm::orc::SimpleRemoteEPCTransport | |
virtual | ~SimpleRemoteEPCTransport () |
virtual Error | start ()=0 |
Called during setup of the client to indicate that the client is ready to receive messages. | |
virtual Error | sendMessage (SimpleRemoteEPCOpcode OpC, uint64_t SeqNo, ExecutorAddr TagAddr, ArrayRef< char > ArgBytes)=0 |
Send a SimpleRemoteEPC message. | |
virtual void | disconnect ()=0 |
Trigger disconnection from the transport. | |
Static Public Member Functions | |
static Expected< std::unique_ptr< FDSimpleRemoteEPCTransport > > | Create (SimpleRemoteEPCTransportClient &C, int InFD, int OutFD) |
Create a FDSimpleRemoteEPCTransport using the given FDs for reading (InFD) and writing (OutFD). | |
static Expected< std::unique_ptr< FDSimpleRemoteEPCTransport > > | Create (SimpleRemoteEPCTransportClient &C, int FD) |
Create a FDSimpleRemoteEPCTransport using the given FD for both reading and writing. | |
Uses read/write on FileDescriptors for transport.
Definition at line 103 of file SimpleRemoteEPCUtils.h.
|
override |
Definition at line 72 of file SimpleRemoteEPCUtils.cpp.
|
inlinestatic |
Create a FDSimpleRemoteEPCTransport using the given FD for both reading and writing.
Definition at line 113 of file SimpleRemoteEPCUtils.h.
References Create().
|
static |
Create a FDSimpleRemoteEPCTransport using the given FDs for reading (InFD) and writing (OutFD).
Definition at line 50 of file SimpleRemoteEPCUtils.cpp.
References llvm::inconvertibleErrorCode().
Referenced by Create().
|
overridevirtual |
Trigger disconnection from the transport.
The implementation should respond by calling handleDisconnect on the client once disconnection is complete. May be called more than once and from different threads.
Implements llvm::orc::SimpleRemoteEPCTransport.
Definition at line 111 of file SimpleRemoteEPCUtils.cpp.
|
overridevirtual |
Send a SimpleRemoteEPC message.
This function may be called concurrently. Subclasses should implement locking if required for the underlying transport.
Implements llvm::orc::SimpleRemoteEPCTransport.
Definition at line 86 of file SimpleRemoteEPCUtils.cpp.
References llvm::ArrayRef< T >::data(), llvm::errorCodeToError(), llvm::orc::ExecutorAddr::getValue(), llvm::inconvertibleErrorCode(), llvm::ArrayRef< T >::size(), and llvm::Error::success().
|
overridevirtual |
Called during setup of the client to indicate that the client is ready to receive messages.
Transport objects should not access the client until this method is called.
Implements llvm::orc::SimpleRemoteEPCTransport.
Definition at line 78 of file SimpleRemoteEPCUtils.cpp.
References llvm_unreachable, and llvm::Error::success().