unix: support Readv, Preadv, Writev and Pwritev for darwin

Darwin, starting with Big Sur, supports vectorized IO.

Fixes golang/go#64710

Change-Id: Ic3a3c51009eab24f70665d8d3a145b328a7713c6
Reviewed-on: https://go-review.googlesource.com/c/sys/+/548795
LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com>
Auto-Submit: Ian Lance Taylor <iant@google.com>
Reviewed-by: Ian Lance Taylor <iant@google.com>
Reviewed-by: Cherry Mui <cherryyz@google.com>
This commit is contained in:
Manuel Schönlaub
2025-03-20 08:06:05 -07:00
committed by Gopher Robot
parent 7401cce313
commit 3330b5e756
7 changed files with 363 additions and 1 deletions
+4
View File
@@ -102,14 +102,17 @@ var darwinTests = [...]darwinTest{
{"pipe", libc_pipe_trampoline_addr},
{"poll", libc_poll_trampoline_addr},
{"pread", libc_pread_trampoline_addr},
{"preadv", libc_preadv_trampoline_addr},
{"pthread_chdir_np", libc_pthread_chdir_np_trampoline_addr},
{"pthread_fchdir_np", libc_pthread_fchdir_np_trampoline_addr},
{"ptrace", libc_ptrace_trampoline_addr},
{"pwrite", libc_pwrite_trampoline_addr},
{"pwritev", libc_pwritev_trampoline_addr},
{"read", libc_read_trampoline_addr},
{"readdir_r", libc_readdir_r_trampoline_addr},
{"readlink", libc_readlink_trampoline_addr},
{"readlinkat", libc_readlinkat_trampoline_addr},
{"readv", libc_readv_trampoline_addr},
{"recvfrom", libc_recvfrom_trampoline_addr},
{"recvmsg", libc_recvmsg_trampoline_addr},
{"removexattr", libc_removexattr_trampoline_addr},
@@ -162,4 +165,5 @@ var darwinTests = [...]darwinTest{
{"utimes", libc_utimes_trampoline_addr},
{"wait4", libc_wait4_trampoline_addr},
{"write", libc_write_trampoline_addr},
{"writev", libc_writev_trampoline_addr},
}