[all-commits] [llvm/llvm-project] daf48d: [orc-rt] Add a SimpleRemote transport over POSIX s...
Lang Hames via All-commits
all-commits at lists.llvm.org
Tue Sep 22 06:23:52 PDT 2026
Branch: refs/heads/main
Home: https://github.com/llvm/llvm-project
Commit: daf48dd510921288c89d3b07bc642d2dd5a33998
https://github.com/llvm/llvm-project/commit/daf48dd510921288c89d3b07bc642d2dd5a33998
Author: Lang Hames <lhames at gmail.com>
Date: 2026-09-22 (Tue, 22 Sep 2026)
Changed paths:
A orc-rt/include/orc-rt/bedrock/sps/SimpleRemoteCAOverSocket.h
M orc-rt/lib/bedrock/CMakeLists.txt
A orc-rt/lib/bedrock/sys/posix/sps/SimpleRemoteCAOverSocket.cpp
M orc-rt/test/unit/CMakeLists.txt
A orc-rt/test/unit/bedrock/sps/SimpleRemoteCAOverSocketTest.cpp
Log Message:
-----------
[orc-rt] Add a SimpleRemote transport over POSIX sockets (#225393)
A ControllerAccess speaking SimpleRemote over a connected stream socket.
The wire format matches LLVM's SimpleRemoteEPC. POSIX only -- Windows
needs a counterpart alongside the other sys/posix sources.
It owns a reactor thread built on poll(2) over the connection and a wake
socket. IO is non-blocking, so reads and writes resume wherever a
partial transfer stopped. The reactor is the only thread that sends;
callers on other threads append to a queue and wake it.
Reached through createSimpleRemoteCAOverSocket; the implementation is
file-local to the POSIX translation unit, so a Windows version needs no
header change.
The unit test drives it over a real socket pair, playing the controller
on the far end: framing, partial transfers, teardown ordering and the
malformed-message paths. The fixture owns the pair and the Session, so a
test body starts at the interesting part. It installs no on-disconnect
handler: Session reports the disconnect reason through reportError when
none is set, so a test that ends abnormally without asking for the error
fails rather than passing quietly.
To unsubscribe from these emails, change your notification settings at https://github.com/llvm/llvm-project/settings/notifications
More information about the All-commits
mailing list