diff options
author | Jon Chesterfield <jonathanchesterfield@gmail.com> | 2023-05-11 03:04:55 +0100 |
---|---|---|
committer | Jon Chesterfield <jonathanchesterfield@gmail.com> | 2023-05-11 03:04:56 +0100 |
commit | bbeae142bfe2f2961816d51b45fb385821052b34 (patch) | |
tree | da951f84c4eff88c37983eef00d332db638bf59e /libc/startup | |
parent | 657dbb4c394daec626bccfcaddc5341b8b9fc14e (diff) | |
download | llvm-bbeae142bfe2f2961816d51b45fb385821052b34.zip llvm-bbeae142bfe2f2961816d51b45fb385821052b34.tar.gz llvm-bbeae142bfe2f2961816d51b45fb385821052b34.tar.bz2 |
[libc][rpc] Allocate a single block of shared memory instead of three
Allows moving the pointer swap between server and client into reset.
Single allocation simplifies whatever allocates the client/server, currently
the libc loaders.
Reviewed By: jhuber6
Differential Revision: https://reviews.llvm.org/D150337
Diffstat (limited to 'libc/startup')
-rw-r--r-- | libc/startup/gpu/amdgpu/start.cpp | 6 | ||||
-rw-r--r-- | libc/startup/gpu/nvptx/start.cpp | 6 |
2 files changed, 6 insertions, 6 deletions
diff --git a/libc/startup/gpu/amdgpu/start.cpp b/libc/startup/gpu/amdgpu/start.cpp index 9761c64..b9f1df2 100644 --- a/libc/startup/gpu/amdgpu/start.cpp +++ b/libc/startup/gpu/amdgpu/start.cpp @@ -38,12 +38,12 @@ static void call_fini_array_callbacks() { } // namespace __llvm_libc extern "C" [[gnu::visibility("protected"), clang::amdgpu_kernel]] void -_begin(int argc, char **argv, char **env, void *in, void *out, void *buffer) { +_begin(int argc, char **argv, char **env, void *rpc_shared_buffer) { // We need to set up the RPC client first in case any of the constructors // require it. __llvm_libc::rpc::client.reset(__llvm_libc::rpc::default_port_count, - __llvm_libc::gpu::get_lane_size(), in, out, - buffer); + __llvm_libc::gpu::get_lane_size(), + rpc_shared_buffer); // We want the fini array callbacks to be run after other atexit // callbacks are run. So, we register them before running the init diff --git a/libc/startup/gpu/nvptx/start.cpp b/libc/startup/gpu/nvptx/start.cpp index 78cdc64..709a593 100644 --- a/libc/startup/gpu/nvptx/start.cpp +++ b/libc/startup/gpu/nvptx/start.cpp @@ -42,12 +42,12 @@ static void call_fini_array_callbacks() { } // namespace __llvm_libc extern "C" [[gnu::visibility("protected"), clang::nvptx_kernel]] void -_begin(int argc, char **argv, char **env, void *in, void *out, void *buffer) { +_begin(int argc, char **argv, char **env, void *rpc_shared_buffer) { // We need to set up the RPC client first in case any of the constructors // require it. __llvm_libc::rpc::client.reset(__llvm_libc::rpc::default_port_count, - __llvm_libc::gpu::get_lane_size(), in, out, - buffer); + __llvm_libc::gpu::get_lane_size(), + rpc_shared_buffer); // We want the fini array callbacks to be run after other atexit // callbacks are run. So, we register them before running the init |