[libc-commits] [libc] [libc][darwin] add syscall numbers from macos sdk (PR #166354)
Shreeyash Pandey via libc-commits
libc-commits at lists.llvm.org
Sat Nov 8 01:17:32 PST 2025
https://github.com/bojle updated https://github.com/llvm/llvm-project/pull/166354
>From ab85f49f93c777b94648b5c5bf721753950b4308 Mon Sep 17 00:00:00 2001
From: Shreeyash Pandey <shreeyash335 at gmail.com>
Date: Sun, 2 Nov 2025 16:38:36 +0530
Subject: [PATCH 1/9] [libc] allow UnitTest suite to be compiled on darwin
ExecuteFunctionUnix.cpp which is guarded by this check should reliably work
on darwin as it only uses POSIX API - nothing specific to linux.
---
libc/test/UnitTest/CMakeLists.txt | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/libc/test/UnitTest/CMakeLists.txt b/libc/test/UnitTest/CMakeLists.txt
index 31d1e9dce8204..028e8e3a2ea67 100644
--- a/libc/test/UnitTest/CMakeLists.txt
+++ b/libc/test/UnitTest/CMakeLists.txt
@@ -83,7 +83,7 @@ add_unittest_framework_library(
)
set(libc_death_test_srcs LibcDeathTestExecutors.cpp)
-if(${LIBC_TARGET_OS} STREQUAL "linux")
+if(${LIBC_TARGET_OS} STREQUAL "linux" OR ${LIBC_TARGET_OS} STREQUAL "darwin")
list(APPEND libc_death_test_srcs ExecuteFunctionUnix.cpp)
endif()
>From 9a5455df48b18bd31f425353841f41f54d99ef4a Mon Sep 17 00:00:00 2001
From: Shreeyash Pandey <shreeyash335 at gmail.com>
Date: Sun, 2 Nov 2025 17:21:01 +0530
Subject: [PATCH 2/9] [libc] fix EXPECT_EXIT suspend/timeout for darwin
Fixes: https://github.com/llvm/llvm-project/issues/166059
Signed-off-by: Shreeyash Pandey <shreeyash335 at gmail.com>
---
libc/test/UnitTest/ExecuteFunctionUnix.cpp | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/libc/test/UnitTest/ExecuteFunctionUnix.cpp b/libc/test/UnitTest/ExecuteFunctionUnix.cpp
index c0e85c2144005..0b450578adde2 100644
--- a/libc/test/UnitTest/ExecuteFunctionUnix.cpp
+++ b/libc/test/UnitTest/ExecuteFunctionUnix.cpp
@@ -13,6 +13,7 @@
#include <poll.h>
#include <signal.h>
#include <stdio.h>
+#include <errno.h>
#include <stdlib.h>
#include <string.h>
#include <sys/wait.h>
@@ -58,7 +59,7 @@ ProcessStatus invoke_in_subprocess(FunctionCaller *func, int timeout_ms) {
::close(pipe_fds[1]);
struct pollfd poll_fd {
- pipe_fds[0], 0, 0
+ pipe_fds[0], POLLIN, 0
};
// No events requested so this call will only return after the timeout or if
// the pipes peer was closed, signaling the process exited.
>From 34f4b8b04f29d57bfc3aced106302ab91a4a1bff Mon Sep 17 00:00:00 2001
From: Shreeyash Pandey <shreeyash335 at gmail.com>
Date: Sun, 2 Nov 2025 18:50:43 +0530
Subject: [PATCH 3/9] [libc] fix formatting
---
libc/test/UnitTest/ExecuteFunctionUnix.cpp | 5 +----
1 file changed, 1 insertion(+), 4 deletions(-)
diff --git a/libc/test/UnitTest/ExecuteFunctionUnix.cpp b/libc/test/UnitTest/ExecuteFunctionUnix.cpp
index 0b450578adde2..7c2eb7c6e887c 100644
--- a/libc/test/UnitTest/ExecuteFunctionUnix.cpp
+++ b/libc/test/UnitTest/ExecuteFunctionUnix.cpp
@@ -13,7 +13,6 @@
#include <poll.h>
#include <signal.h>
#include <stdio.h>
-#include <errno.h>
#include <stdlib.h>
#include <string.h>
#include <sys/wait.h>
@@ -58,9 +57,7 @@ ProcessStatus invoke_in_subprocess(FunctionCaller *func, int timeout_ms) {
}
::close(pipe_fds[1]);
- struct pollfd poll_fd {
- pipe_fds[0], POLLIN, 0
- };
+ struct pollfd poll_fd{pipe_fds[0], POLLIN, 0};
// No events requested so this call will only return after the timeout or if
// the pipes peer was closed, signaling the process exited.
if (::poll(&poll_fd, 1, timeout_ms) == -1) {
>From 3d60307c8cfd96fb5572abbf59b309008fb0fc1e Mon Sep 17 00:00:00 2001
From: Shreeyash Pandey <shreeyash335 at gmail.com>
Date: Tue, 4 Nov 2025 16:52:04 +0530
Subject: [PATCH 4/9] [libc][darwin] add syscall numbers from macos sdk
Signed-off-by: Shreeyash Pandey <shreeyash335 at gmail.com>
---
.../__support/OSUtil/darwin/aarch64/syscall.h | 561 ++++++++++++++++++
1 file changed, 561 insertions(+)
diff --git a/libc/src/__support/OSUtil/darwin/aarch64/syscall.h b/libc/src/__support/OSUtil/darwin/aarch64/syscall.h
index dc98c07a8ba33..6cbbd11a79ae3 100644
--- a/libc/src/__support/OSUtil/darwin/aarch64/syscall.h
+++ b/libc/src/__support/OSUtil/darwin/aarch64/syscall.h
@@ -110,4 +110,565 @@ LIBC_INLINE long syscall_impl(long number, long arg1, long arg2, long arg3,
#undef REGISTER_CONSTRAINT_5
#undef REGISTER_CONSTRAINT_6
+#define SYS_syscall 0
+#define SYS_exit 1
+#define SYS_fork 2
+#define SYS_read 3
+#define SYS_write 4
+#define SYS_open 5
+#define SYS_close 6
+#define SYS_wait4 7
+/* 8 old creat */
+#define SYS_link 9
+#define SYS_unlink 10
+/* 11 old execv */
+#define SYS_chdir 12
+#define SYS_fchdir 13
+#define SYS_mknod 14
+#define SYS_chmod 15
+#define SYS_chown 16
+/* 17 old break */
+#define SYS_getfsstat 18
+/* 19 old lseek */
+#define SYS_getpid 20
+/* 21 old mount */
+/* 22 old umount */
+#define SYS_setuid 23
+#define SYS_getuid 24
+#define SYS_geteuid 25
+#define SYS_ptrace 26
+#define SYS_recvmsg 27
+#define SYS_sendmsg 28
+#define SYS_recvfrom 29
+#define SYS_accept 30
+#define SYS_getpeername 31
+#define SYS_getsockname 32
+#define SYS_access 33
+#define SYS_chflags 34
+#define SYS_fchflags 35
+#define SYS_sync 36
+#define SYS_kill 37
+#define SYS_crossarch_trap 38
+#define SYS_getppid 39
+/* 40 old lstat */
+#define SYS_dup 41
+#define SYS_pipe 42
+#define SYS_getegid 43
+/* 44 old profil */
+/* 45 old ktrace */
+#define SYS_sigaction 46
+#define SYS_getgid 47
+#define SYS_sigprocmask 48
+#define SYS_getlogin 49
+#define SYS_setlogin 50
+#define SYS_acct 51
+#define SYS_sigpending 52
+#define SYS_sigaltstack 53
+#define SYS_ioctl 54
+#define SYS_reboot 55
+#define SYS_revoke 56
+#define SYS_symlink 57
+#define SYS_readlink 58
+#define SYS_execve 59
+#define SYS_umask 60
+#define SYS_chroot 61
+/* 62 old fstat */
+/* 63 used internally and reserved */
+/* 64 old getpagesize */
+#define SYS_msync 65
+#define SYS_vfork 66
+#define SYS_oslog_coproc_reg 67
+#define SYS_oslog_coproc 68
+/* 69 old sbrk */
+/* 70 old sstk */
+/* 71 old mmap */
+/* 72 old vadvise */
+#define SYS_munmap 73
+#define SYS_mprotect 74
+#define SYS_madvise 75
+/* 76 old vhangup */
+/* 77 old vlimit */
+#define SYS_mincore 78
+#define SYS_getgroups 79
+#define SYS_setgroups 80
+#define SYS_getpgrp 81
+#define SYS_setpgid 82
+#define SYS_setitimer 83
+/* 84 old wait */
+#define SYS_swapon 85
+#define SYS_getitimer 86
+/* 87 old gethostname */
+/* 88 old sethostname */
+#define SYS_getdtablesize 89
+#define SYS_dup2 90
+/* 91 old getdopt */
+#define SYS_fcntl 92
+#define SYS_select 93
+/* 94 old setdopt */
+#define SYS_fsync 95
+#define SYS_setpriority 96
+#define SYS_socket 97
+#define SYS_connect 98
+/* 99 old accept */
+#define SYS_getpriority 100
+/* 101 old send */
+/* 102 old recv */
+/* 103 old sigreturn */
+#define SYS_bind 104
+#define SYS_setsockopt 105
+#define SYS_listen 106
+/* 107 old vtimes */
+/* 108 old sigvec */
+/* 109 old sigblock */
+/* 110 old sigsetmask */
+#define SYS_sigsuspend 111
+/* 112 old sigstack */
+/* 113 old recvmsg */
+/* 114 old sendmsg */
+/* 115 old vtrace */
+#define SYS_gettimeofday 116
+#define SYS_getrusage 117
+#define SYS_getsockopt 118
+/* 119 old resuba */
+#define SYS_readv 120
+#define SYS_writev 121
+#define SYS_settimeofday 122
+#define SYS_fchown 123
+#define SYS_fchmod 124
+/* 125 old recvfrom */
+#define SYS_setreuid 126
+#define SYS_setregid 127
+#define SYS_rename 128
+/* 129 old truncate */
+/* 130 old ftruncate */
+#define SYS_flock 131
+#define SYS_mkfifo 132
+#define SYS_sendto 133
+#define SYS_shutdown 134
+#define SYS_socketpair 135
+#define SYS_mkdir 136
+#define SYS_rmdir 137
+#define SYS_utimes 138
+#define SYS_futimes 139
+#define SYS_adjtime 140
+/* 141 old getpeername */
+#define SYS_gethostuuid 142
+/* 143 old sethostid */
+/* 144 old getrlimit */
+/* 145 old setrlimit */
+/* 146 old killpg */
+#define SYS_setsid 147
+/* 148 old setquota */
+/* 149 old qquota */
+/* 150 old getsockname */
+#define SYS_getpgid 151
+#define SYS_setprivexec 152
+#define SYS_pread 153
+#define SYS_pwrite 154
+#define SYS_nfssvc 155
+/* 156 old getdirentries */
+#define SYS_statfs 157
+#define SYS_fstatfs 158
+#define SYS_unmount 159
+/* 160 old async_daemon */
+#define SYS_getfh 161
+/* 162 old getdomainname */
+/* 163 old setdomainname */
+/* 164 */
+#define SYS_quotactl 165
+/* 166 old exportfs */
+#define SYS_mount 167
+/* 168 old ustat */
+#define SYS_csops 169
+#define SYS_csops_audittoken 170
+/* 171 old wait3 */
+/* 172 old rpause */
+#define SYS_waitid 173
+/* 174 old getdents */
+/* 175 old gc_control */
+/* 176 old add_profil */
+#define SYS_kdebug_typefilter 177
+#define SYS_kdebug_trace_string 178
+#define SYS_kdebug_trace64 179
+#define SYS_kdebug_trace 180
+#define SYS_setgid 181
+#define SYS_setegid 182
+#define SYS_seteuid 183
+#define SYS_sigreturn 184
+#define SYS_panic_with_data 185
+#define SYS_thread_selfcounts 186
+#define SYS_fdatasync 187
+#define SYS_stat 188
+#define SYS_fstat 189
+#define SYS_lstat 190
+#define SYS_pathconf 191
+#define SYS_fpathconf 192
+/* 193 old getfsstat */
+#define SYS_getrlimit 194
+#define SYS_setrlimit 195
+#define SYS_getdirentries 196
+#define SYS_mmap 197
+/* 198 old __syscall */
+#define SYS_lseek 199
+#define SYS_truncate 200
+#define SYS_ftruncate 201
+#define SYS_sysctl 202
+#define SYS_mlock 203
+#define SYS_munlock 204
+#define SYS_undelete 205
+/* 206 old ATsocket */
+/* 207 old ATgetmsg */
+/* 208 old ATputmsg */
+/* 209 old ATsndreq */
+/* 210 old ATsndrsp */
+/* 211 old ATgetreq */
+/* 212 old ATgetrsp */
+/* 213 Reserved for AppleTalk */
+/* 214 */
+/* 215 */
+#define SYS_open_dprotected_np 216
+#define SYS_fsgetpath_ext 217
+#define SYS_openat_dprotected_np 218
+/* 219 old fstatv */
+#define SYS_getattrlist 220
+#define SYS_setattrlist 221
+#define SYS_getdirentriesattr 222
+#define SYS_exchangedata 223
+/* 224 old checkuseraccess or fsgetpath */
+#define SYS_searchfs 225
+#define SYS_delete 226
+#define SYS_copyfile 227
+#define SYS_fgetattrlist 228
+#define SYS_fsetattrlist 229
+#define SYS_poll 230
+/* 231 old watchevent */
+/* 232 old waitevent */
+/* 233 old modwatch */
+#define SYS_getxattr 234
+#define SYS_fgetxattr 235
+#define SYS_setxattr 236
+#define SYS_fsetxattr 237
+#define SYS_removexattr 238
+#define SYS_fremovexattr 239
+#define SYS_listxattr 240
+#define SYS_flistxattr 241
+#define SYS_fsctl 242
+#define SYS_initgroups 243
+#define SYS_posix_spawn 244
+#define SYS_ffsctl 245
+/* 246 */
+/* 247 old nfsclnt */
+#define SYS_fhopen 248
+/* 249 */
+#define SYS_minherit 250
+#define SYS_semsys 251
+#define SYS_msgsys 252
+#define SYS_shmsys 253
+#define SYS_semctl 254
+#define SYS_semget 255
+#define SYS_semop 256
+/* 257 old semconfig */
+#define SYS_msgctl 258
+#define SYS_msgget 259
+#define SYS_msgsnd 260
+#define SYS_msgrcv 261
+#define SYS_shmat 262
+#define SYS_shmctl 263
+#define SYS_shmdt 264
+#define SYS_shmget 265
+#define SYS_shm_open 266
+#define SYS_shm_unlink 267
+#define SYS_sem_open 268
+#define SYS_sem_close 269
+#define SYS_sem_unlink 270
+#define SYS_sem_wait 271
+#define SYS_sem_trywait 272
+#define SYS_sem_post 273
+#define SYS_sysctlbyname 274
+/* 275 old sem_init */
+/* 276 old sem_destroy */
+#define SYS_open_extended 277
+#define SYS_umask_extended 278
+#define SYS_stat_extended 279
+#define SYS_lstat_extended 280
+#define SYS_fstat_extended 281
+#define SYS_chmod_extended 282
+#define SYS_fchmod_extended 283
+#define SYS_access_extended 284
+#define SYS_settid 285
+#define SYS_gettid 286
+#define SYS_setsgroups 287
+#define SYS_getsgroups 288
+#define SYS_setwgroups 289
+#define SYS_getwgroups 290
+#define SYS_mkfifo_extended 291
+#define SYS_mkdir_extended 292
+#define SYS_identitysvc 293
+#define SYS_shared_region_check_np 294
+/* 295 old shared_region_map_np */
+#define SYS_vm_pressure_monitor 296
+#define SYS_psynch_rw_longrdlock 297
+#define SYS_psynch_rw_yieldwrlock 298
+#define SYS_psynch_rw_downgrade 299
+#define SYS_psynch_rw_upgrade 300
+#define SYS_psynch_mutexwait 301
+#define SYS_psynch_mutexdrop 302
+#define SYS_psynch_cvbroad 303
+#define SYS_psynch_cvsignal 304
+#define SYS_psynch_cvwait 305
+#define SYS_psynch_rw_rdlock 306
+#define SYS_psynch_rw_wrlock 307
+#define SYS_psynch_rw_unlock 308
+#define SYS_psynch_rw_unlock2 309
+#define SYS_getsid 310
+#define SYS_settid_with_pid 311
+#define SYS_psynch_cvclrprepost 312
+#define SYS_aio_fsync 313
+#define SYS_aio_return 314
+#define SYS_aio_suspend 315
+#define SYS_aio_cancel 316
+#define SYS_aio_error 317
+#define SYS_aio_read 318
+#define SYS_aio_write 319
+#define SYS_lio_listio 320
+/* 321 old __pthread_cond_wait */
+#define SYS_iopolicysys 322
+#define SYS_process_policy 323
+#define SYS_mlockall 324
+#define SYS_munlockall 325
+/* 326 */
+#define SYS_issetugid 327
+#define SYS___pthread_kill 328
+#define SYS___pthread_sigmask 329
+#define SYS___sigwait 330
+#define SYS___disable_threadsignal 331
+#define SYS___pthread_markcancel 332
+#define SYS___pthread_canceled 333
+#define SYS___semwait_signal 334
+/* 335 old utrace */
+#define SYS_proc_info 336
+#define SYS_sendfile 337
+#define SYS_stat64 338
+#define SYS_fstat64 339
+#define SYS_lstat64 340
+#define SYS_stat64_extended 341
+#define SYS_lstat64_extended 342
+#define SYS_fstat64_extended 343
+#define SYS_getdirentries64 344
+#define SYS_statfs64 345
+#define SYS_fstatfs64 346
+#define SYS_getfsstat64 347
+#define SYS___pthread_chdir 348
+#define SYS___pthread_fchdir 349
+#define SYS_audit 350
+#define SYS_auditon 351
+/* 352 */
+#define SYS_getauid 353
+#define SYS_setauid 354
+/* 355 old getaudit */
+/* 356 old setaudit */
+#define SYS_getaudit_addr 357
+#define SYS_setaudit_addr 358
+#define SYS_auditctl 359
+#define SYS_bsdthread_create 360
+#define SYS_bsdthread_terminate 361
+#define SYS_kqueue 362
+#define SYS_kevent 363
+#define SYS_lchown 364
+/* 365 old stack_snapshot */
+#define SYS_bsdthread_register 366
+#define SYS_workq_open 367
+#define SYS_workq_kernreturn 368
+#define SYS_kevent64 369
+/* 370 old __semwait_signal */
+/* 371 old __semwait_signal */
+#define SYS_thread_selfid 372
+#define SYS_ledger 373
+#define SYS_kevent_qos 374
+#define SYS_kevent_id 375
+/* 376 */
+/* 377 */
+/* 378 */
+/* 379 */
+#define SYS___mac_execve 380
+#define SYS___mac_syscall 381
+#define SYS___mac_get_file 382
+#define SYS___mac_set_file 383
+#define SYS___mac_get_link 384
+#define SYS___mac_set_link 385
+#define SYS___mac_get_proc 386
+#define SYS___mac_set_proc 387
+#define SYS___mac_get_fd 388
+#define SYS___mac_set_fd 389
+#define SYS___mac_get_pid 390
+/* 391 */
+/* 392 */
+/* 393 */
+#define SYS_pselect 394
+#define SYS_pselect_nocancel 395
+#define SYS_read_nocancel 396
+#define SYS_write_nocancel 397
+#define SYS_open_nocancel 398
+#define SYS_close_nocancel 399
+#define SYS_wait4_nocancel 400
+#define SYS_recvmsg_nocancel 401
+#define SYS_sendmsg_nocancel 402
+#define SYS_recvfrom_nocancel 403
+#define SYS_accept_nocancel 404
+#define SYS_msync_nocancel 405
+#define SYS_fcntl_nocancel 406
+#define SYS_select_nocancel 407
+#define SYS_fsync_nocancel 408
+#define SYS_connect_nocancel 409
+#define SYS_sigsuspend_nocancel 410
+#define SYS_readv_nocancel 411
+#define SYS_writev_nocancel 412
+#define SYS_sendto_nocancel 413
+#define SYS_pread_nocancel 414
+#define SYS_pwrite_nocancel 415
+#define SYS_waitid_nocancel 416
+#define SYS_poll_nocancel 417
+#define SYS_msgsnd_nocancel 418
+#define SYS_msgrcv_nocancel 419
+#define SYS_sem_wait_nocancel 420
+#define SYS_aio_suspend_nocancel 421
+#define SYS___sigwait_nocancel 422
+#define SYS___semwait_signal_nocancel 423
+#define SYS___mac_mount 424
+#define SYS___mac_get_mount 425
+#define SYS___mac_getfsstat 426
+#define SYS_fsgetpath 427
+#define SYS_audit_session_self 428
+#define SYS_audit_session_join 429
+#define SYS_fileport_makeport 430
+#define SYS_fileport_makefd 431
+#define SYS_audit_session_port 432
+#define SYS_pid_suspend 433
+#define SYS_pid_resume 434
+#define SYS_pid_hibernate 435
+#define SYS_pid_shutdown_sockets 436
+/* 437 old shared_region_slide_np */
+/* 438 old shared_region_map_and_slide_np */
+#define SYS_kas_info 439
+#define SYS_memorystatus_control 440
+#define SYS_guarded_open_np 441
+#define SYS_guarded_close_np 442
+#define SYS_guarded_kqueue_np 443
+#define SYS_change_fdguard_np 444
+#define SYS_usrctl 445
+#define SYS_proc_rlimit_control 446
+#define SYS_connectx 447
+#define SYS_disconnectx 448
+#define SYS_peeloff 449
+#define SYS_socket_delegate 450
+#define SYS_telemetry 451
+#define SYS_proc_uuid_policy 452
+#define SYS_memorystatus_get_level 453
+#define SYS_system_override 454
+#define SYS_vfs_purge 455
+#define SYS_sfi_ctl 456
+#define SYS_sfi_pidctl 457
+#define SYS_coalition 458
+#define SYS_coalition_info 459
+#define SYS_necp_match_policy 460
+#define SYS_getattrlistbulk 461
+#define SYS_clonefileat 462
+#define SYS_openat 463
+#define SYS_openat_nocancel 464
+#define SYS_renameat 465
+#define SYS_faccessat 466
+#define SYS_fchmodat 467
+#define SYS_fchownat 468
+#define SYS_fstatat 469
+#define SYS_fstatat64 470
+#define SYS_linkat 471
+#define SYS_unlinkat 472
+#define SYS_readlinkat 473
+#define SYS_symlinkat 474
+#define SYS_mkdirat 475
+#define SYS_getattrlistat 476
+#define SYS_proc_trace_log 477
+#define SYS_bsdthread_ctl 478
+#define SYS_openbyid_np 479
+#define SYS_recvmsg_x 480
+#define SYS_sendmsg_x 481
+#define SYS_thread_selfusage 482
+#define SYS_csrctl 483
+#define SYS_guarded_open_dprotected_np 484
+#define SYS_guarded_write_np 485
+#define SYS_guarded_pwrite_np 486
+#define SYS_guarded_writev_np 487
+#define SYS_renameatx_np 488
+#define SYS_mremap_encrypted 489
+#define SYS_netagent_trigger 490
+#define SYS_stack_snapshot_with_config 491
+#define SYS_microstackshot 492
+#define SYS_grab_pgo_data 493
+#define SYS_persona 494
+/* 495 */
+#define SYS_mach_eventlink_signal 496
+#define SYS_mach_eventlink_wait_until 497
+#define SYS_mach_eventlink_signal_wait_until 498
+#define SYS_work_interval_ctl 499
+#define SYS_getentropy 500
+#define SYS_necp_open 501
+#define SYS_necp_client_action 502
+#define SYS___nexus_open 503
+#define SYS___nexus_register 504
+#define SYS___nexus_deregister 505
+#define SYS___nexus_create 506
+#define SYS___nexus_destroy 507
+#define SYS___nexus_get_opt 508
+#define SYS___nexus_set_opt 509
+#define SYS___channel_open 510
+#define SYS___channel_get_info 511
+#define SYS___channel_sync 512
+#define SYS___channel_get_opt 513
+#define SYS___channel_set_opt 514
+#define SYS_ulock_wait 515
+#define SYS_ulock_wake 516
+#define SYS_fclonefileat 517
+#define SYS_fs_snapshot 518
+#define SYS_register_uexc_handler 519
+#define SYS_terminate_with_payload 520
+#define SYS_abort_with_payload 521
+#define SYS_necp_session_open 522
+#define SYS_necp_session_action 523
+#define SYS_setattrlistat 524
+#define SYS_net_qos_guideline 525
+#define SYS_fmount 526
+#define SYS_ntp_adjtime 527
+#define SYS_ntp_gettime 528
+#define SYS_os_fault_with_payload 529
+#define SYS_kqueue_workloop_ctl 530
+#define SYS___mach_bridge_remote_time 531
+#define SYS_coalition_ledger 532
+#define SYS_log_data 533
+#define SYS_memorystatus_available_memory 534
+#define SYS_objc_bp_assist_cfg_np 535
+#define SYS_shared_region_map_and_slide_2_np 536
+#define SYS_pivot_root 537
+#define SYS_task_inspect_for_pid 538
+#define SYS_task_read_for_pid 539
+#define SYS_preadv 540
+#define SYS_pwritev 541
+#define SYS_preadv_nocancel 542
+#define SYS_pwritev_nocancel 543
+#define SYS_ulock_wait2 544
+#define SYS_proc_info_extended_id 545
+#define SYS_tracker_action 546
+#define SYS_debug_syscall_reject 547
+#define SYS_debug_syscall_reject_config 548
+#define SYS_graftdmg 549
+#define SYS_map_with_linking_np 550
+#define SYS_freadlink 551
+#define SYS_record_system_event 552
+#define SYS_mkfifoat 553
+#define SYS_mknodat 554
+#define SYS_ungraftdmg 555
+#define SYS_coalition_policy_set 556
+#define SYS_coalition_policy_get 557
+#define SYS_MAXSYSCALL 558
+#define SYS_invalid 63
+
#endif // LLVM_LIBC_SRC___SUPPORT_OSUTIL_DARWIN_ARM_SYSCALL_H
>From 0bba8519a4773a3f2fbb27b02758b3ae3acb614d Mon Sep 17 00:00:00 2001
From: Shreeyash Pandey <shreeyash335 at gmail.com>
Date: Wed, 5 Nov 2025 12:00:29 +0530
Subject: [PATCH 5/9] [libc] add reference for syscall numbers
Signed-off-by: Shreeyash Pandey <shreeyash335 at gmail.com>
---
libc/src/__support/OSUtil/darwin/aarch64/syscall.h | 10 ++++++++++
1 file changed, 10 insertions(+)
diff --git a/libc/src/__support/OSUtil/darwin/aarch64/syscall.h b/libc/src/__support/OSUtil/darwin/aarch64/syscall.h
index 6cbbd11a79ae3..3286e006535df 100644
--- a/libc/src/__support/OSUtil/darwin/aarch64/syscall.h
+++ b/libc/src/__support/OSUtil/darwin/aarch64/syscall.h
@@ -110,6 +110,14 @@ LIBC_INLINE long syscall_impl(long number, long arg1, long arg2, long arg3,
#undef REGISTER_CONSTRAINT_5
#undef REGISTER_CONSTRAINT_6
+/* Following has been copied from MacOSX15.5 sdk
+ * This has been referenced from and generated by the syscalls.master file
+ * that can be found
+ * https://github.com/apple-oss-distributions/xnu/blob/f6217f891ac0bb64f3d375211650a4c1ff8ca1ea/bsd/kern/syscalls.master
+ */
+
+/* SYSCALL NUMBERS START */
+
#define SYS_syscall 0
#define SYS_exit 1
#define SYS_fork 2
@@ -671,4 +679,6 @@ LIBC_INLINE long syscall_impl(long number, long arg1, long arg2, long arg3,
#define SYS_MAXSYSCALL 558
#define SYS_invalid 63
+/* SYSCALL NUMBERS END */
+
#endif // LLVM_LIBC_SRC___SUPPORT_OSUTIL_DARWIN_ARM_SYSCALL_H
>From b0ab2867029aa781c2e758ef39e7b49d948b4651 Mon Sep 17 00:00:00 2001
From: Shreeyash Pandey <shreeyash335 at gmail.com>
Date: Fri, 7 Nov 2025 01:35:11 +0530
Subject: [PATCH 6/9] [libc] use syscall.h
---
.../__support/OSUtil/darwin/aarch64/syscall.h | 1121 +++++++++--------
1 file changed, 561 insertions(+), 560 deletions(-)
diff --git a/libc/src/__support/OSUtil/darwin/aarch64/syscall.h b/libc/src/__support/OSUtil/darwin/aarch64/syscall.h
index 3286e006535df..2e9f1759df85a 100644
--- a/libc/src/__support/OSUtil/darwin/aarch64/syscall.h
+++ b/libc/src/__support/OSUtil/darwin/aarch64/syscall.h
@@ -118,566 +118,567 @@ LIBC_INLINE long syscall_impl(long number, long arg1, long arg2, long arg3,
/* SYSCALL NUMBERS START */
-#define SYS_syscall 0
-#define SYS_exit 1
-#define SYS_fork 2
-#define SYS_read 3
-#define SYS_write 4
-#define SYS_open 5
-#define SYS_close 6
-#define SYS_wait4 7
-/* 8 old creat */
-#define SYS_link 9
-#define SYS_unlink 10
-/* 11 old execv */
-#define SYS_chdir 12
-#define SYS_fchdir 13
-#define SYS_mknod 14
-#define SYS_chmod 15
-#define SYS_chown 16
-/* 17 old break */
-#define SYS_getfsstat 18
-/* 19 old lseek */
-#define SYS_getpid 20
-/* 21 old mount */
-/* 22 old umount */
-#define SYS_setuid 23
-#define SYS_getuid 24
-#define SYS_geteuid 25
-#define SYS_ptrace 26
-#define SYS_recvmsg 27
-#define SYS_sendmsg 28
-#define SYS_recvfrom 29
-#define SYS_accept 30
-#define SYS_getpeername 31
-#define SYS_getsockname 32
-#define SYS_access 33
-#define SYS_chflags 34
-#define SYS_fchflags 35
-#define SYS_sync 36
-#define SYS_kill 37
-#define SYS_crossarch_trap 38
-#define SYS_getppid 39
-/* 40 old lstat */
-#define SYS_dup 41
-#define SYS_pipe 42
-#define SYS_getegid 43
-/* 44 old profil */
-/* 45 old ktrace */
-#define SYS_sigaction 46
-#define SYS_getgid 47
-#define SYS_sigprocmask 48
-#define SYS_getlogin 49
-#define SYS_setlogin 50
-#define SYS_acct 51
-#define SYS_sigpending 52
-#define SYS_sigaltstack 53
-#define SYS_ioctl 54
-#define SYS_reboot 55
-#define SYS_revoke 56
-#define SYS_symlink 57
-#define SYS_readlink 58
-#define SYS_execve 59
-#define SYS_umask 60
-#define SYS_chroot 61
-/* 62 old fstat */
-/* 63 used internally and reserved */
-/* 64 old getpagesize */
-#define SYS_msync 65
-#define SYS_vfork 66
-#define SYS_oslog_coproc_reg 67
-#define SYS_oslog_coproc 68
-/* 69 old sbrk */
-/* 70 old sstk */
-/* 71 old mmap */
-/* 72 old vadvise */
-#define SYS_munmap 73
-#define SYS_mprotect 74
-#define SYS_madvise 75
-/* 76 old vhangup */
-/* 77 old vlimit */
-#define SYS_mincore 78
-#define SYS_getgroups 79
-#define SYS_setgroups 80
-#define SYS_getpgrp 81
-#define SYS_setpgid 82
-#define SYS_setitimer 83
-/* 84 old wait */
-#define SYS_swapon 85
-#define SYS_getitimer 86
-/* 87 old gethostname */
-/* 88 old sethostname */
-#define SYS_getdtablesize 89
-#define SYS_dup2 90
-/* 91 old getdopt */
-#define SYS_fcntl 92
-#define SYS_select 93
-/* 94 old setdopt */
-#define SYS_fsync 95
-#define SYS_setpriority 96
-#define SYS_socket 97
-#define SYS_connect 98
-/* 99 old accept */
-#define SYS_getpriority 100
-/* 101 old send */
-/* 102 old recv */
-/* 103 old sigreturn */
-#define SYS_bind 104
-#define SYS_setsockopt 105
-#define SYS_listen 106
-/* 107 old vtimes */
-/* 108 old sigvec */
-/* 109 old sigblock */
-/* 110 old sigsetmask */
-#define SYS_sigsuspend 111
-/* 112 old sigstack */
-/* 113 old recvmsg */
-/* 114 old sendmsg */
-/* 115 old vtrace */
-#define SYS_gettimeofday 116
-#define SYS_getrusage 117
-#define SYS_getsockopt 118
-/* 119 old resuba */
-#define SYS_readv 120
-#define SYS_writev 121
-#define SYS_settimeofday 122
-#define SYS_fchown 123
-#define SYS_fchmod 124
-/* 125 old recvfrom */
-#define SYS_setreuid 126
-#define SYS_setregid 127
-#define SYS_rename 128
-/* 129 old truncate */
-/* 130 old ftruncate */
-#define SYS_flock 131
-#define SYS_mkfifo 132
-#define SYS_sendto 133
-#define SYS_shutdown 134
-#define SYS_socketpair 135
-#define SYS_mkdir 136
-#define SYS_rmdir 137
-#define SYS_utimes 138
-#define SYS_futimes 139
-#define SYS_adjtime 140
-/* 141 old getpeername */
-#define SYS_gethostuuid 142
-/* 143 old sethostid */
-/* 144 old getrlimit */
-/* 145 old setrlimit */
-/* 146 old killpg */
-#define SYS_setsid 147
-/* 148 old setquota */
-/* 149 old qquota */
-/* 150 old getsockname */
-#define SYS_getpgid 151
-#define SYS_setprivexec 152
-#define SYS_pread 153
-#define SYS_pwrite 154
-#define SYS_nfssvc 155
-/* 156 old getdirentries */
-#define SYS_statfs 157
-#define SYS_fstatfs 158
-#define SYS_unmount 159
-/* 160 old async_daemon */
-#define SYS_getfh 161
-/* 162 old getdomainname */
-/* 163 old setdomainname */
-/* 164 */
-#define SYS_quotactl 165
-/* 166 old exportfs */
-#define SYS_mount 167
-/* 168 old ustat */
-#define SYS_csops 169
-#define SYS_csops_audittoken 170
-/* 171 old wait3 */
-/* 172 old rpause */
-#define SYS_waitid 173
-/* 174 old getdents */
-/* 175 old gc_control */
-/* 176 old add_profil */
-#define SYS_kdebug_typefilter 177
-#define SYS_kdebug_trace_string 178
-#define SYS_kdebug_trace64 179
-#define SYS_kdebug_trace 180
-#define SYS_setgid 181
-#define SYS_setegid 182
-#define SYS_seteuid 183
-#define SYS_sigreturn 184
-#define SYS_panic_with_data 185
-#define SYS_thread_selfcounts 186
-#define SYS_fdatasync 187
-#define SYS_stat 188
-#define SYS_fstat 189
-#define SYS_lstat 190
-#define SYS_pathconf 191
-#define SYS_fpathconf 192
-/* 193 old getfsstat */
-#define SYS_getrlimit 194
-#define SYS_setrlimit 195
-#define SYS_getdirentries 196
-#define SYS_mmap 197
-/* 198 old __syscall */
-#define SYS_lseek 199
-#define SYS_truncate 200
-#define SYS_ftruncate 201
-#define SYS_sysctl 202
-#define SYS_mlock 203
-#define SYS_munlock 204
-#define SYS_undelete 205
-/* 206 old ATsocket */
-/* 207 old ATgetmsg */
-/* 208 old ATputmsg */
-/* 209 old ATsndreq */
-/* 210 old ATsndrsp */
-/* 211 old ATgetreq */
-/* 212 old ATgetrsp */
-/* 213 Reserved for AppleTalk */
-/* 214 */
-/* 215 */
-#define SYS_open_dprotected_np 216
-#define SYS_fsgetpath_ext 217
-#define SYS_openat_dprotected_np 218
-/* 219 old fstatv */
-#define SYS_getattrlist 220
-#define SYS_setattrlist 221
-#define SYS_getdirentriesattr 222
-#define SYS_exchangedata 223
-/* 224 old checkuseraccess or fsgetpath */
-#define SYS_searchfs 225
-#define SYS_delete 226
-#define SYS_copyfile 227
-#define SYS_fgetattrlist 228
-#define SYS_fsetattrlist 229
-#define SYS_poll 230
-/* 231 old watchevent */
-/* 232 old waitevent */
-/* 233 old modwatch */
-#define SYS_getxattr 234
-#define SYS_fgetxattr 235
-#define SYS_setxattr 236
-#define SYS_fsetxattr 237
-#define SYS_removexattr 238
-#define SYS_fremovexattr 239
-#define SYS_listxattr 240
-#define SYS_flistxattr 241
-#define SYS_fsctl 242
-#define SYS_initgroups 243
-#define SYS_posix_spawn 244
-#define SYS_ffsctl 245
-/* 246 */
-/* 247 old nfsclnt */
-#define SYS_fhopen 248
-/* 249 */
-#define SYS_minherit 250
-#define SYS_semsys 251
-#define SYS_msgsys 252
-#define SYS_shmsys 253
-#define SYS_semctl 254
-#define SYS_semget 255
-#define SYS_semop 256
-/* 257 old semconfig */
-#define SYS_msgctl 258
-#define SYS_msgget 259
-#define SYS_msgsnd 260
-#define SYS_msgrcv 261
-#define SYS_shmat 262
-#define SYS_shmctl 263
-#define SYS_shmdt 264
-#define SYS_shmget 265
-#define SYS_shm_open 266
-#define SYS_shm_unlink 267
-#define SYS_sem_open 268
-#define SYS_sem_close 269
-#define SYS_sem_unlink 270
-#define SYS_sem_wait 271
-#define SYS_sem_trywait 272
-#define SYS_sem_post 273
-#define SYS_sysctlbyname 274
-/* 275 old sem_init */
-/* 276 old sem_destroy */
-#define SYS_open_extended 277
-#define SYS_umask_extended 278
-#define SYS_stat_extended 279
-#define SYS_lstat_extended 280
-#define SYS_fstat_extended 281
-#define SYS_chmod_extended 282
-#define SYS_fchmod_extended 283
-#define SYS_access_extended 284
-#define SYS_settid 285
-#define SYS_gettid 286
-#define SYS_setsgroups 287
-#define SYS_getsgroups 288
-#define SYS_setwgroups 289
-#define SYS_getwgroups 290
-#define SYS_mkfifo_extended 291
-#define SYS_mkdir_extended 292
-#define SYS_identitysvc 293
-#define SYS_shared_region_check_np 294
-/* 295 old shared_region_map_np */
-#define SYS_vm_pressure_monitor 296
-#define SYS_psynch_rw_longrdlock 297
-#define SYS_psynch_rw_yieldwrlock 298
-#define SYS_psynch_rw_downgrade 299
-#define SYS_psynch_rw_upgrade 300
-#define SYS_psynch_mutexwait 301
-#define SYS_psynch_mutexdrop 302
-#define SYS_psynch_cvbroad 303
-#define SYS_psynch_cvsignal 304
-#define SYS_psynch_cvwait 305
-#define SYS_psynch_rw_rdlock 306
-#define SYS_psynch_rw_wrlock 307
-#define SYS_psynch_rw_unlock 308
-#define SYS_psynch_rw_unlock2 309
-#define SYS_getsid 310
-#define SYS_settid_with_pid 311
-#define SYS_psynch_cvclrprepost 312
-#define SYS_aio_fsync 313
-#define SYS_aio_return 314
-#define SYS_aio_suspend 315
-#define SYS_aio_cancel 316
-#define SYS_aio_error 317
-#define SYS_aio_read 318
-#define SYS_aio_write 319
-#define SYS_lio_listio 320
-/* 321 old __pthread_cond_wait */
-#define SYS_iopolicysys 322
-#define SYS_process_policy 323
-#define SYS_mlockall 324
-#define SYS_munlockall 325
-/* 326 */
-#define SYS_issetugid 327
-#define SYS___pthread_kill 328
-#define SYS___pthread_sigmask 329
-#define SYS___sigwait 330
-#define SYS___disable_threadsignal 331
-#define SYS___pthread_markcancel 332
-#define SYS___pthread_canceled 333
-#define SYS___semwait_signal 334
-/* 335 old utrace */
-#define SYS_proc_info 336
-#define SYS_sendfile 337
-#define SYS_stat64 338
-#define SYS_fstat64 339
-#define SYS_lstat64 340
-#define SYS_stat64_extended 341
-#define SYS_lstat64_extended 342
-#define SYS_fstat64_extended 343
-#define SYS_getdirentries64 344
-#define SYS_statfs64 345
-#define SYS_fstatfs64 346
-#define SYS_getfsstat64 347
-#define SYS___pthread_chdir 348
-#define SYS___pthread_fchdir 349
-#define SYS_audit 350
-#define SYS_auditon 351
-/* 352 */
-#define SYS_getauid 353
-#define SYS_setauid 354
-/* 355 old getaudit */
-/* 356 old setaudit */
-#define SYS_getaudit_addr 357
-#define SYS_setaudit_addr 358
-#define SYS_auditctl 359
-#define SYS_bsdthread_create 360
-#define SYS_bsdthread_terminate 361
-#define SYS_kqueue 362
-#define SYS_kevent 363
-#define SYS_lchown 364
-/* 365 old stack_snapshot */
-#define SYS_bsdthread_register 366
-#define SYS_workq_open 367
-#define SYS_workq_kernreturn 368
-#define SYS_kevent64 369
-/* 370 old __semwait_signal */
-/* 371 old __semwait_signal */
-#define SYS_thread_selfid 372
-#define SYS_ledger 373
-#define SYS_kevent_qos 374
-#define SYS_kevent_id 375
-/* 376 */
-/* 377 */
-/* 378 */
-/* 379 */
-#define SYS___mac_execve 380
-#define SYS___mac_syscall 381
-#define SYS___mac_get_file 382
-#define SYS___mac_set_file 383
-#define SYS___mac_get_link 384
-#define SYS___mac_set_link 385
-#define SYS___mac_get_proc 386
-#define SYS___mac_set_proc 387
-#define SYS___mac_get_fd 388
-#define SYS___mac_set_fd 389
-#define SYS___mac_get_pid 390
-/* 391 */
-/* 392 */
-/* 393 */
-#define SYS_pselect 394
-#define SYS_pselect_nocancel 395
-#define SYS_read_nocancel 396
-#define SYS_write_nocancel 397
-#define SYS_open_nocancel 398
-#define SYS_close_nocancel 399
-#define SYS_wait4_nocancel 400
-#define SYS_recvmsg_nocancel 401
-#define SYS_sendmsg_nocancel 402
-#define SYS_recvfrom_nocancel 403
-#define SYS_accept_nocancel 404
-#define SYS_msync_nocancel 405
-#define SYS_fcntl_nocancel 406
-#define SYS_select_nocancel 407
-#define SYS_fsync_nocancel 408
-#define SYS_connect_nocancel 409
-#define SYS_sigsuspend_nocancel 410
-#define SYS_readv_nocancel 411
-#define SYS_writev_nocancel 412
-#define SYS_sendto_nocancel 413
-#define SYS_pread_nocancel 414
-#define SYS_pwrite_nocancel 415
-#define SYS_waitid_nocancel 416
-#define SYS_poll_nocancel 417
-#define SYS_msgsnd_nocancel 418
-#define SYS_msgrcv_nocancel 419
-#define SYS_sem_wait_nocancel 420
-#define SYS_aio_suspend_nocancel 421
-#define SYS___sigwait_nocancel 422
-#define SYS___semwait_signal_nocancel 423
-#define SYS___mac_mount 424
-#define SYS___mac_get_mount 425
-#define SYS___mac_getfsstat 426
-#define SYS_fsgetpath 427
-#define SYS_audit_session_self 428
-#define SYS_audit_session_join 429
-#define SYS_fileport_makeport 430
-#define SYS_fileport_makefd 431
-#define SYS_audit_session_port 432
-#define SYS_pid_suspend 433
-#define SYS_pid_resume 434
-#define SYS_pid_hibernate 435
-#define SYS_pid_shutdown_sockets 436
-/* 437 old shared_region_slide_np */
-/* 438 old shared_region_map_and_slide_np */
-#define SYS_kas_info 439
-#define SYS_memorystatus_control 440
-#define SYS_guarded_open_np 441
-#define SYS_guarded_close_np 442
-#define SYS_guarded_kqueue_np 443
-#define SYS_change_fdguard_np 444
-#define SYS_usrctl 445
-#define SYS_proc_rlimit_control 446
-#define SYS_connectx 447
-#define SYS_disconnectx 448
-#define SYS_peeloff 449
-#define SYS_socket_delegate 450
-#define SYS_telemetry 451
-#define SYS_proc_uuid_policy 452
-#define SYS_memorystatus_get_level 453
-#define SYS_system_override 454
-#define SYS_vfs_purge 455
-#define SYS_sfi_ctl 456
-#define SYS_sfi_pidctl 457
-#define SYS_coalition 458
-#define SYS_coalition_info 459
-#define SYS_necp_match_policy 460
-#define SYS_getattrlistbulk 461
-#define SYS_clonefileat 462
-#define SYS_openat 463
-#define SYS_openat_nocancel 464
-#define SYS_renameat 465
-#define SYS_faccessat 466
-#define SYS_fchmodat 467
-#define SYS_fchownat 468
-#define SYS_fstatat 469
-#define SYS_fstatat64 470
-#define SYS_linkat 471
-#define SYS_unlinkat 472
-#define SYS_readlinkat 473
-#define SYS_symlinkat 474
-#define SYS_mkdirat 475
-#define SYS_getattrlistat 476
-#define SYS_proc_trace_log 477
-#define SYS_bsdthread_ctl 478
-#define SYS_openbyid_np 479
-#define SYS_recvmsg_x 480
-#define SYS_sendmsg_x 481
-#define SYS_thread_selfusage 482
-#define SYS_csrctl 483
-#define SYS_guarded_open_dprotected_np 484
-#define SYS_guarded_write_np 485
-#define SYS_guarded_pwrite_np 486
-#define SYS_guarded_writev_np 487
-#define SYS_renameatx_np 488
-#define SYS_mremap_encrypted 489
-#define SYS_netagent_trigger 490
-#define SYS_stack_snapshot_with_config 491
-#define SYS_microstackshot 492
-#define SYS_grab_pgo_data 493
-#define SYS_persona 494
-/* 495 */
-#define SYS_mach_eventlink_signal 496
-#define SYS_mach_eventlink_wait_until 497
-#define SYS_mach_eventlink_signal_wait_until 498
-#define SYS_work_interval_ctl 499
-#define SYS_getentropy 500
-#define SYS_necp_open 501
-#define SYS_necp_client_action 502
-#define SYS___nexus_open 503
-#define SYS___nexus_register 504
-#define SYS___nexus_deregister 505
-#define SYS___nexus_create 506
-#define SYS___nexus_destroy 507
-#define SYS___nexus_get_opt 508
-#define SYS___nexus_set_opt 509
-#define SYS___channel_open 510
-#define SYS___channel_get_info 511
-#define SYS___channel_sync 512
-#define SYS___channel_get_opt 513
-#define SYS___channel_set_opt 514
-#define SYS_ulock_wait 515
-#define SYS_ulock_wake 516
-#define SYS_fclonefileat 517
-#define SYS_fs_snapshot 518
-#define SYS_register_uexc_handler 519
-#define SYS_terminate_with_payload 520
-#define SYS_abort_with_payload 521
-#define SYS_necp_session_open 522
-#define SYS_necp_session_action 523
-#define SYS_setattrlistat 524
-#define SYS_net_qos_guideline 525
-#define SYS_fmount 526
-#define SYS_ntp_adjtime 527
-#define SYS_ntp_gettime 528
-#define SYS_os_fault_with_payload 529
-#define SYS_kqueue_workloop_ctl 530
-#define SYS___mach_bridge_remote_time 531
-#define SYS_coalition_ledger 532
-#define SYS_log_data 533
-#define SYS_memorystatus_available_memory 534
-#define SYS_objc_bp_assist_cfg_np 535
-#define SYS_shared_region_map_and_slide_2_np 536
-#define SYS_pivot_root 537
-#define SYS_task_inspect_for_pid 538
-#define SYS_task_read_for_pid 539
-#define SYS_preadv 540
-#define SYS_pwritev 541
-#define SYS_preadv_nocancel 542
-#define SYS_pwritev_nocancel 543
-#define SYS_ulock_wait2 544
-#define SYS_proc_info_extended_id 545
-#define SYS_tracker_action 546
-#define SYS_debug_syscall_reject 547
-#define SYS_debug_syscall_reject_config 548
-#define SYS_graftdmg 549
-#define SYS_map_with_linking_np 550
-#define SYS_freadlink 551
-#define SYS_record_system_event 552
-#define SYS_mkfifoat 553
-#define SYS_mknodat 554
-#define SYS_ungraftdmg 555
-#define SYS_coalition_policy_set 556
-#define SYS_coalition_policy_get 557
-#define SYS_MAXSYSCALL 558
-#define SYS_invalid 63
+#include <sys/syscall.h>
+// #define SYS_syscall 0
+// #define SYS_exit 1
+// #define SYS_fork 2
+// #define SYS_read 3
+// #define SYS_write 4
+// #define SYS_open 5
+// #define SYS_close 6
+// #define SYS_wait4 7
+///* 8 old creat */
+// #define SYS_link 9
+// #define SYS_unlink 10
+///* 11 old execv */
+// #define SYS_chdir 12
+// #define SYS_fchdir 13
+// #define SYS_mknod 14
+// #define SYS_chmod 15
+// #define SYS_chown 16
+///* 17 old break */
+// #define SYS_getfsstat 18
+///* 19 old lseek */
+// #define SYS_getpid 20
+///* 21 old mount */
+///* 22 old umount */
+// #define SYS_setuid 23
+// #define SYS_getuid 24
+// #define SYS_geteuid 25
+// #define SYS_ptrace 26
+// #define SYS_recvmsg 27
+// #define SYS_sendmsg 28
+// #define SYS_recvfrom 29
+// #define SYS_accept 30
+// #define SYS_getpeername 31
+// #define SYS_getsockname 32
+// #define SYS_access 33
+// #define SYS_chflags 34
+// #define SYS_fchflags 35
+// #define SYS_sync 36
+// #define SYS_kill 37
+// #define SYS_crossarch_trap 38
+// #define SYS_getppid 39
+///* 40 old lstat */
+// #define SYS_dup 41
+// #define SYS_pipe 42
+// #define SYS_getegid 43
+///* 44 old profil */
+///* 45 old ktrace */
+// #define SYS_sigaction 46
+// #define SYS_getgid 47
+// #define SYS_sigprocmask 48
+// #define SYS_getlogin 49
+// #define SYS_setlogin 50
+// #define SYS_acct 51
+// #define SYS_sigpending 52
+// #define SYS_sigaltstack 53
+// #define SYS_ioctl 54
+// #define SYS_reboot 55
+// #define SYS_revoke 56
+// #define SYS_symlink 57
+// #define SYS_readlink 58
+// #define SYS_execve 59
+// #define SYS_umask 60
+// #define SYS_chroot 61
+///* 62 old fstat */
+///* 63 used internally and reserved */
+///* 64 old getpagesize */
+// #define SYS_msync 65
+// #define SYS_vfork 66
+// #define SYS_oslog_coproc_reg 67
+// #define SYS_oslog_coproc 68
+///* 69 old sbrk */
+///* 70 old sstk */
+///* 71 old mmap */
+///* 72 old vadvise */
+// #define SYS_munmap 73
+// #define SYS_mprotect 74
+// #define SYS_madvise 75
+///* 76 old vhangup */
+///* 77 old vlimit */
+// #define SYS_mincore 78
+// #define SYS_getgroups 79
+// #define SYS_setgroups 80
+// #define SYS_getpgrp 81
+// #define SYS_setpgid 82
+// #define SYS_setitimer 83
+///* 84 old wait */
+// #define SYS_swapon 85
+// #define SYS_getitimer 86
+///* 87 old gethostname */
+///* 88 old sethostname */
+// #define SYS_getdtablesize 89
+// #define SYS_dup2 90
+///* 91 old getdopt */
+// #define SYS_fcntl 92
+// #define SYS_select 93
+///* 94 old setdopt */
+// #define SYS_fsync 95
+// #define SYS_setpriority 96
+// #define SYS_socket 97
+// #define SYS_connect 98
+///* 99 old accept */
+// #define SYS_getpriority 100
+///* 101 old send */
+///* 102 old recv */
+///* 103 old sigreturn */
+// #define SYS_bind 104
+// #define SYS_setsockopt 105
+// #define SYS_listen 106
+///* 107 old vtimes */
+///* 108 old sigvec */
+///* 109 old sigblock */
+///* 110 old sigsetmask */
+// #define SYS_sigsuspend 111
+///* 112 old sigstack */
+///* 113 old recvmsg */
+///* 114 old sendmsg */
+///* 115 old vtrace */
+// #define SYS_gettimeofday 116
+// #define SYS_getrusage 117
+// #define SYS_getsockopt 118
+///* 119 old resuba */
+// #define SYS_readv 120
+// #define SYS_writev 121
+// #define SYS_settimeofday 122
+// #define SYS_fchown 123
+// #define SYS_fchmod 124
+///* 125 old recvfrom */
+// #define SYS_setreuid 126
+// #define SYS_setregid 127
+// #define SYS_rename 128
+///* 129 old truncate */
+///* 130 old ftruncate */
+// #define SYS_flock 131
+// #define SYS_mkfifo 132
+// #define SYS_sendto 133
+// #define SYS_shutdown 134
+// #define SYS_socketpair 135
+// #define SYS_mkdir 136
+// #define SYS_rmdir 137
+// #define SYS_utimes 138
+// #define SYS_futimes 139
+// #define SYS_adjtime 140
+///* 141 old getpeername */
+// #define SYS_gethostuuid 142
+///* 143 old sethostid */
+///* 144 old getrlimit */
+///* 145 old setrlimit */
+///* 146 old killpg */
+// #define SYS_setsid 147
+///* 148 old setquota */
+///* 149 old qquota */
+///* 150 old getsockname */
+// #define SYS_getpgid 151
+// #define SYS_setprivexec 152
+// #define SYS_pread 153
+// #define SYS_pwrite 154
+// #define SYS_nfssvc 155
+///* 156 old getdirentries */
+// #define SYS_statfs 157
+// #define SYS_fstatfs 158
+// #define SYS_unmount 159
+///* 160 old async_daemon */
+// #define SYS_getfh 161
+///* 162 old getdomainname */
+///* 163 old setdomainname */
+///* 164 */
+// #define SYS_quotactl 165
+///* 166 old exportfs */
+// #define SYS_mount 167
+///* 168 old ustat */
+// #define SYS_csops 169
+// #define SYS_csops_audittoken 170
+///* 171 old wait3 */
+///* 172 old rpause */
+// #define SYS_waitid 173
+///* 174 old getdents */
+///* 175 old gc_control */
+///* 176 old add_profil */
+// #define SYS_kdebug_typefilter 177
+// #define SYS_kdebug_trace_string 178
+// #define SYS_kdebug_trace64 179
+// #define SYS_kdebug_trace 180
+// #define SYS_setgid 181
+// #define SYS_setegid 182
+// #define SYS_seteuid 183
+// #define SYS_sigreturn 184
+// #define SYS_panic_with_data 185
+// #define SYS_thread_selfcounts 186
+// #define SYS_fdatasync 187
+// #define SYS_stat 188
+// #define SYS_fstat 189
+// #define SYS_lstat 190
+// #define SYS_pathconf 191
+// #define SYS_fpathconf 192
+///* 193 old getfsstat */
+// #define SYS_getrlimit 194
+// #define SYS_setrlimit 195
+// #define SYS_getdirentries 196
+// #define SYS_mmap 197
+///* 198 old __syscall */
+// #define SYS_lseek 199
+// #define SYS_truncate 200
+// #define SYS_ftruncate 201
+// #define SYS_sysctl 202
+// #define SYS_mlock 203
+// #define SYS_munlock 204
+// #define SYS_undelete 205
+///* 206 old ATsocket */
+///* 207 old ATgetmsg */
+///* 208 old ATputmsg */
+///* 209 old ATsndreq */
+///* 210 old ATsndrsp */
+///* 211 old ATgetreq */
+///* 212 old ATgetrsp */
+///* 213 Reserved for AppleTalk */
+///* 214 */
+///* 215 */
+// #define SYS_open_dprotected_np 216
+// #define SYS_fsgetpath_ext 217
+// #define SYS_openat_dprotected_np 218
+///* 219 old fstatv */
+// #define SYS_getattrlist 220
+// #define SYS_setattrlist 221
+// #define SYS_getdirentriesattr 222
+// #define SYS_exchangedata 223
+///* 224 old checkuseraccess or fsgetpath */
+// #define SYS_searchfs 225
+// #define SYS_delete 226
+// #define SYS_copyfile 227
+// #define SYS_fgetattrlist 228
+// #define SYS_fsetattrlist 229
+// #define SYS_poll 230
+///* 231 old watchevent */
+///* 232 old waitevent */
+///* 233 old modwatch */
+// #define SYS_getxattr 234
+// #define SYS_fgetxattr 235
+// #define SYS_setxattr 236
+// #define SYS_fsetxattr 237
+// #define SYS_removexattr 238
+// #define SYS_fremovexattr 239
+// #define SYS_listxattr 240
+// #define SYS_flistxattr 241
+// #define SYS_fsctl 242
+// #define SYS_initgroups 243
+// #define SYS_posix_spawn 244
+// #define SYS_ffsctl 245
+///* 246 */
+///* 247 old nfsclnt */
+// #define SYS_fhopen 248
+///* 249 */
+// #define SYS_minherit 250
+// #define SYS_semsys 251
+// #define SYS_msgsys 252
+// #define SYS_shmsys 253
+// #define SYS_semctl 254
+// #define SYS_semget 255
+// #define SYS_semop 256
+///* 257 old semconfig */
+// #define SYS_msgctl 258
+// #define SYS_msgget 259
+// #define SYS_msgsnd 260
+// #define SYS_msgrcv 261
+// #define SYS_shmat 262
+// #define SYS_shmctl 263
+// #define SYS_shmdt 264
+// #define SYS_shmget 265
+// #define SYS_shm_open 266
+// #define SYS_shm_unlink 267
+// #define SYS_sem_open 268
+// #define SYS_sem_close 269
+// #define SYS_sem_unlink 270
+// #define SYS_sem_wait 271
+// #define SYS_sem_trywait 272
+// #define SYS_sem_post 273
+// #define SYS_sysctlbyname 274
+///* 275 old sem_init */
+///* 276 old sem_destroy */
+// #define SYS_open_extended 277
+// #define SYS_umask_extended 278
+// #define SYS_stat_extended 279
+// #define SYS_lstat_extended 280
+// #define SYS_fstat_extended 281
+// #define SYS_chmod_extended 282
+// #define SYS_fchmod_extended 283
+// #define SYS_access_extended 284
+// #define SYS_settid 285
+// #define SYS_gettid 286
+// #define SYS_setsgroups 287
+// #define SYS_getsgroups 288
+// #define SYS_setwgroups 289
+// #define SYS_getwgroups 290
+// #define SYS_mkfifo_extended 291
+// #define SYS_mkdir_extended 292
+// #define SYS_identitysvc 293
+// #define SYS_shared_region_check_np 294
+///* 295 old shared_region_map_np */
+// #define SYS_vm_pressure_monitor 296
+// #define SYS_psynch_rw_longrdlock 297
+// #define SYS_psynch_rw_yieldwrlock 298
+// #define SYS_psynch_rw_downgrade 299
+// #define SYS_psynch_rw_upgrade 300
+// #define SYS_psynch_mutexwait 301
+// #define SYS_psynch_mutexdrop 302
+// #define SYS_psynch_cvbroad 303
+// #define SYS_psynch_cvsignal 304
+// #define SYS_psynch_cvwait 305
+// #define SYS_psynch_rw_rdlock 306
+// #define SYS_psynch_rw_wrlock 307
+// #define SYS_psynch_rw_unlock 308
+// #define SYS_psynch_rw_unlock2 309
+// #define SYS_getsid 310
+// #define SYS_settid_with_pid 311
+// #define SYS_psynch_cvclrprepost 312
+// #define SYS_aio_fsync 313
+// #define SYS_aio_return 314
+// #define SYS_aio_suspend 315
+// #define SYS_aio_cancel 316
+// #define SYS_aio_error 317
+// #define SYS_aio_read 318
+// #define SYS_aio_write 319
+// #define SYS_lio_listio 320
+///* 321 old __pthread_cond_wait */
+// #define SYS_iopolicysys 322
+// #define SYS_process_policy 323
+// #define SYS_mlockall 324
+// #define SYS_munlockall 325
+///* 326 */
+// #define SYS_issetugid 327
+// #define SYS___pthread_kill 328
+// #define SYS___pthread_sigmask 329
+// #define SYS___sigwait 330
+// #define SYS___disable_threadsignal 331
+// #define SYS___pthread_markcancel 332
+// #define SYS___pthread_canceled 333
+// #define SYS___semwait_signal 334
+///* 335 old utrace */
+// #define SYS_proc_info 336
+// #define SYS_sendfile 337
+// #define SYS_stat64 338
+// #define SYS_fstat64 339
+// #define SYS_lstat64 340
+// #define SYS_stat64_extended 341
+// #define SYS_lstat64_extended 342
+// #define SYS_fstat64_extended 343
+// #define SYS_getdirentries64 344
+// #define SYS_statfs64 345
+// #define SYS_fstatfs64 346
+// #define SYS_getfsstat64 347
+// #define SYS___pthread_chdir 348
+// #define SYS___pthread_fchdir 349
+// #define SYS_audit 350
+// #define SYS_auditon 351
+///* 352 */
+// #define SYS_getauid 353
+// #define SYS_setauid 354
+///* 355 old getaudit */
+///* 356 old setaudit */
+// #define SYS_getaudit_addr 357
+// #define SYS_setaudit_addr 358
+// #define SYS_auditctl 359
+// #define SYS_bsdthread_create 360
+// #define SYS_bsdthread_terminate 361
+// #define SYS_kqueue 362
+// #define SYS_kevent 363
+// #define SYS_lchown 364
+///* 365 old stack_snapshot */
+// #define SYS_bsdthread_register 366
+// #define SYS_workq_open 367
+// #define SYS_workq_kernreturn 368
+// #define SYS_kevent64 369
+///* 370 old __semwait_signal */
+///* 371 old __semwait_signal */
+// #define SYS_thread_selfid 372
+// #define SYS_ledger 373
+// #define SYS_kevent_qos 374
+// #define SYS_kevent_id 375
+///* 376 */
+///* 377 */
+///* 378 */
+///* 379 */
+// #define SYS___mac_execve 380
+// #define SYS___mac_syscall 381
+// #define SYS___mac_get_file 382
+// #define SYS___mac_set_file 383
+// #define SYS___mac_get_link 384
+// #define SYS___mac_set_link 385
+// #define SYS___mac_get_proc 386
+// #define SYS___mac_set_proc 387
+// #define SYS___mac_get_fd 388
+// #define SYS___mac_set_fd 389
+// #define SYS___mac_get_pid 390
+///* 391 */
+///* 392 */
+///* 393 */
+// #define SYS_pselect 394
+// #define SYS_pselect_nocancel 395
+// #define SYS_read_nocancel 396
+// #define SYS_write_nocancel 397
+// #define SYS_open_nocancel 398
+// #define SYS_close_nocancel 399
+// #define SYS_wait4_nocancel 400
+// #define SYS_recvmsg_nocancel 401
+// #define SYS_sendmsg_nocancel 402
+// #define SYS_recvfrom_nocancel 403
+// #define SYS_accept_nocancel 404
+// #define SYS_msync_nocancel 405
+// #define SYS_fcntl_nocancel 406
+// #define SYS_select_nocancel 407
+// #define SYS_fsync_nocancel 408
+// #define SYS_connect_nocancel 409
+// #define SYS_sigsuspend_nocancel 410
+// #define SYS_readv_nocancel 411
+// #define SYS_writev_nocancel 412
+// #define SYS_sendto_nocancel 413
+// #define SYS_pread_nocancel 414
+// #define SYS_pwrite_nocancel 415
+// #define SYS_waitid_nocancel 416
+// #define SYS_poll_nocancel 417
+// #define SYS_msgsnd_nocancel 418
+// #define SYS_msgrcv_nocancel 419
+// #define SYS_sem_wait_nocancel 420
+// #define SYS_aio_suspend_nocancel 421
+// #define SYS___sigwait_nocancel 422
+// #define SYS___semwait_signal_nocancel 423
+// #define SYS___mac_mount 424
+// #define SYS___mac_get_mount 425
+// #define SYS___mac_getfsstat 426
+// #define SYS_fsgetpath 427
+// #define SYS_audit_session_self 428
+// #define SYS_audit_session_join 429
+// #define SYS_fileport_makeport 430
+// #define SYS_fileport_makefd 431
+// #define SYS_audit_session_port 432
+// #define SYS_pid_suspend 433
+// #define SYS_pid_resume 434
+// #define SYS_pid_hibernate 435
+// #define SYS_pid_shutdown_sockets 436
+///* 437 old shared_region_slide_np */
+///* 438 old shared_region_map_and_slide_np */
+// #define SYS_kas_info 439
+// #define SYS_memorystatus_control 440
+// #define SYS_guarded_open_np 441
+// #define SYS_guarded_close_np 442
+// #define SYS_guarded_kqueue_np 443
+// #define SYS_change_fdguard_np 444
+// #define SYS_usrctl 445
+// #define SYS_proc_rlimit_control 446
+// #define SYS_connectx 447
+// #define SYS_disconnectx 448
+// #define SYS_peeloff 449
+// #define SYS_socket_delegate 450
+// #define SYS_telemetry 451
+// #define SYS_proc_uuid_policy 452
+// #define SYS_memorystatus_get_level 453
+// #define SYS_system_override 454
+// #define SYS_vfs_purge 455
+// #define SYS_sfi_ctl 456
+// #define SYS_sfi_pidctl 457
+// #define SYS_coalition 458
+// #define SYS_coalition_info 459
+// #define SYS_necp_match_policy 460
+// #define SYS_getattrlistbulk 461
+// #define SYS_clonefileat 462
+// #define SYS_openat 463
+// #define SYS_openat_nocancel 464
+// #define SYS_renameat 465
+// #define SYS_faccessat 466
+// #define SYS_fchmodat 467
+// #define SYS_fchownat 468
+// #define SYS_fstatat 469
+// #define SYS_fstatat64 470
+// #define SYS_linkat 471
+// #define SYS_unlinkat 472
+// #define SYS_readlinkat 473
+// #define SYS_symlinkat 474
+// #define SYS_mkdirat 475
+// #define SYS_getattrlistat 476
+// #define SYS_proc_trace_log 477
+// #define SYS_bsdthread_ctl 478
+// #define SYS_openbyid_np 479
+// #define SYS_recvmsg_x 480
+// #define SYS_sendmsg_x 481
+// #define SYS_thread_selfusage 482
+// #define SYS_csrctl 483
+// #define SYS_guarded_open_dprotected_np 484
+// #define SYS_guarded_write_np 485
+// #define SYS_guarded_pwrite_np 486
+// #define SYS_guarded_writev_np 487
+// #define SYS_renameatx_np 488
+// #define SYS_mremap_encrypted 489
+// #define SYS_netagent_trigger 490
+// #define SYS_stack_snapshot_with_config 491
+// #define SYS_microstackshot 492
+// #define SYS_grab_pgo_data 493
+// #define SYS_persona 494
+///* 495 */
+// #define SYS_mach_eventlink_signal 496
+// #define SYS_mach_eventlink_wait_until 497
+// #define SYS_mach_eventlink_signal_wait_until 498
+// #define SYS_work_interval_ctl 499
+// #define SYS_getentropy 500
+// #define SYS_necp_open 501
+// #define SYS_necp_client_action 502
+// #define SYS___nexus_open 503
+// #define SYS___nexus_register 504
+// #define SYS___nexus_deregister 505
+// #define SYS___nexus_create 506
+// #define SYS___nexus_destroy 507
+// #define SYS___nexus_get_opt 508
+// #define SYS___nexus_set_opt 509
+// #define SYS___channel_open 510
+// #define SYS___channel_get_info 511
+// #define SYS___channel_sync 512
+// #define SYS___channel_get_opt 513
+// #define SYS___channel_set_opt 514
+// #define SYS_ulock_wait 515
+// #define SYS_ulock_wake 516
+// #define SYS_fclonefileat 517
+// #define SYS_fs_snapshot 518
+// #define SYS_register_uexc_handler 519
+// #define SYS_terminate_with_payload 520
+// #define SYS_abort_with_payload 521
+// #define SYS_necp_session_open 522
+// #define SYS_necp_session_action 523
+// #define SYS_setattrlistat 524
+// #define SYS_net_qos_guideline 525
+// #define SYS_fmount 526
+// #define SYS_ntp_adjtime 527
+// #define SYS_ntp_gettime 528
+// #define SYS_os_fault_with_payload 529
+// #define SYS_kqueue_workloop_ctl 530
+// #define SYS___mach_bridge_remote_time 531
+// #define SYS_coalition_ledger 532
+// #define SYS_log_data 533
+// #define SYS_memorystatus_available_memory 534
+// #define SYS_objc_bp_assist_cfg_np 535
+// #define SYS_shared_region_map_and_slide_2_np 536
+// #define SYS_pivot_root 537
+// #define SYS_task_inspect_for_pid 538
+// #define SYS_task_read_for_pid 539
+// #define SYS_preadv 540
+// #define SYS_pwritev 541
+// #define SYS_preadv_nocancel 542
+// #define SYS_pwritev_nocancel 543
+// #define SYS_ulock_wait2 544
+// #define SYS_proc_info_extended_id 545
+// #define SYS_tracker_action 546
+// #define SYS_debug_syscall_reject 547
+// #define SYS_debug_syscall_reject_config 548
+// #define SYS_graftdmg 549
+// #define SYS_map_with_linking_np 550
+// #define SYS_freadlink 551
+// #define SYS_record_system_event 552
+// #define SYS_mkfifoat 553
+// #define SYS_mknodat 554
+// #define SYS_ungraftdmg 555
+// #define SYS_coalition_policy_set 556
+// #define SYS_coalition_policy_get 557
+// #define SYS_MAXSYSCALL 558
+// #define SYS_invalid 63
/* SYSCALL NUMBERS END */
>From 4a1140ac9e42b1efbc177629484433c908284357 Mon Sep 17 00:00:00 2001
From: Shreeyash Pandey <shreeyash335 at gmail.com>
Date: Fri, 7 Nov 2025 19:31:09 +0530
Subject: [PATCH 7/9] [libc] use <sys/syscall.h> as its cleaner and license
compliant
---
libc/include/sys/syscall.h.def | 4 +
.../__support/OSUtil/darwin/aarch64/syscall.h | 572 ------------------
2 files changed, 4 insertions(+), 572 deletions(-)
diff --git a/libc/include/sys/syscall.h.def b/libc/include/sys/syscall.h.def
index 60e5024e500e3..333ad659184a3 100644
--- a/libc/include/sys/syscall.h.def
+++ b/libc/include/sys/syscall.h.def
@@ -11,6 +11,9 @@
//TODO: Handle non-linux syscalls
+#if defined(__APPLE__)
+#include <sys/syscall.h>
+#else
#include <asm/unistd.h>
#ifdef __NR_FAST_atomic_update
@@ -2361,5 +2364,6 @@
#define SYS_writev __NR_writev
#endif
+#endif
#endif // LLVM_LIBC_SYS_SYSCALL_H
diff --git a/libc/src/__support/OSUtil/darwin/aarch64/syscall.h b/libc/src/__support/OSUtil/darwin/aarch64/syscall.h
index 2e9f1759df85a..dc98c07a8ba33 100644
--- a/libc/src/__support/OSUtil/darwin/aarch64/syscall.h
+++ b/libc/src/__support/OSUtil/darwin/aarch64/syscall.h
@@ -110,576 +110,4 @@ LIBC_INLINE long syscall_impl(long number, long arg1, long arg2, long arg3,
#undef REGISTER_CONSTRAINT_5
#undef REGISTER_CONSTRAINT_6
-/* Following has been copied from MacOSX15.5 sdk
- * This has been referenced from and generated by the syscalls.master file
- * that can be found
- * https://github.com/apple-oss-distributions/xnu/blob/f6217f891ac0bb64f3d375211650a4c1ff8ca1ea/bsd/kern/syscalls.master
- */
-
-/* SYSCALL NUMBERS START */
-
-#include <sys/syscall.h>
-// #define SYS_syscall 0
-// #define SYS_exit 1
-// #define SYS_fork 2
-// #define SYS_read 3
-// #define SYS_write 4
-// #define SYS_open 5
-// #define SYS_close 6
-// #define SYS_wait4 7
-///* 8 old creat */
-// #define SYS_link 9
-// #define SYS_unlink 10
-///* 11 old execv */
-// #define SYS_chdir 12
-// #define SYS_fchdir 13
-// #define SYS_mknod 14
-// #define SYS_chmod 15
-// #define SYS_chown 16
-///* 17 old break */
-// #define SYS_getfsstat 18
-///* 19 old lseek */
-// #define SYS_getpid 20
-///* 21 old mount */
-///* 22 old umount */
-// #define SYS_setuid 23
-// #define SYS_getuid 24
-// #define SYS_geteuid 25
-// #define SYS_ptrace 26
-// #define SYS_recvmsg 27
-// #define SYS_sendmsg 28
-// #define SYS_recvfrom 29
-// #define SYS_accept 30
-// #define SYS_getpeername 31
-// #define SYS_getsockname 32
-// #define SYS_access 33
-// #define SYS_chflags 34
-// #define SYS_fchflags 35
-// #define SYS_sync 36
-// #define SYS_kill 37
-// #define SYS_crossarch_trap 38
-// #define SYS_getppid 39
-///* 40 old lstat */
-// #define SYS_dup 41
-// #define SYS_pipe 42
-// #define SYS_getegid 43
-///* 44 old profil */
-///* 45 old ktrace */
-// #define SYS_sigaction 46
-// #define SYS_getgid 47
-// #define SYS_sigprocmask 48
-// #define SYS_getlogin 49
-// #define SYS_setlogin 50
-// #define SYS_acct 51
-// #define SYS_sigpending 52
-// #define SYS_sigaltstack 53
-// #define SYS_ioctl 54
-// #define SYS_reboot 55
-// #define SYS_revoke 56
-// #define SYS_symlink 57
-// #define SYS_readlink 58
-// #define SYS_execve 59
-// #define SYS_umask 60
-// #define SYS_chroot 61
-///* 62 old fstat */
-///* 63 used internally and reserved */
-///* 64 old getpagesize */
-// #define SYS_msync 65
-// #define SYS_vfork 66
-// #define SYS_oslog_coproc_reg 67
-// #define SYS_oslog_coproc 68
-///* 69 old sbrk */
-///* 70 old sstk */
-///* 71 old mmap */
-///* 72 old vadvise */
-// #define SYS_munmap 73
-// #define SYS_mprotect 74
-// #define SYS_madvise 75
-///* 76 old vhangup */
-///* 77 old vlimit */
-// #define SYS_mincore 78
-// #define SYS_getgroups 79
-// #define SYS_setgroups 80
-// #define SYS_getpgrp 81
-// #define SYS_setpgid 82
-// #define SYS_setitimer 83
-///* 84 old wait */
-// #define SYS_swapon 85
-// #define SYS_getitimer 86
-///* 87 old gethostname */
-///* 88 old sethostname */
-// #define SYS_getdtablesize 89
-// #define SYS_dup2 90
-///* 91 old getdopt */
-// #define SYS_fcntl 92
-// #define SYS_select 93
-///* 94 old setdopt */
-// #define SYS_fsync 95
-// #define SYS_setpriority 96
-// #define SYS_socket 97
-// #define SYS_connect 98
-///* 99 old accept */
-// #define SYS_getpriority 100
-///* 101 old send */
-///* 102 old recv */
-///* 103 old sigreturn */
-// #define SYS_bind 104
-// #define SYS_setsockopt 105
-// #define SYS_listen 106
-///* 107 old vtimes */
-///* 108 old sigvec */
-///* 109 old sigblock */
-///* 110 old sigsetmask */
-// #define SYS_sigsuspend 111
-///* 112 old sigstack */
-///* 113 old recvmsg */
-///* 114 old sendmsg */
-///* 115 old vtrace */
-// #define SYS_gettimeofday 116
-// #define SYS_getrusage 117
-// #define SYS_getsockopt 118
-///* 119 old resuba */
-// #define SYS_readv 120
-// #define SYS_writev 121
-// #define SYS_settimeofday 122
-// #define SYS_fchown 123
-// #define SYS_fchmod 124
-///* 125 old recvfrom */
-// #define SYS_setreuid 126
-// #define SYS_setregid 127
-// #define SYS_rename 128
-///* 129 old truncate */
-///* 130 old ftruncate */
-// #define SYS_flock 131
-// #define SYS_mkfifo 132
-// #define SYS_sendto 133
-// #define SYS_shutdown 134
-// #define SYS_socketpair 135
-// #define SYS_mkdir 136
-// #define SYS_rmdir 137
-// #define SYS_utimes 138
-// #define SYS_futimes 139
-// #define SYS_adjtime 140
-///* 141 old getpeername */
-// #define SYS_gethostuuid 142
-///* 143 old sethostid */
-///* 144 old getrlimit */
-///* 145 old setrlimit */
-///* 146 old killpg */
-// #define SYS_setsid 147
-///* 148 old setquota */
-///* 149 old qquota */
-///* 150 old getsockname */
-// #define SYS_getpgid 151
-// #define SYS_setprivexec 152
-// #define SYS_pread 153
-// #define SYS_pwrite 154
-// #define SYS_nfssvc 155
-///* 156 old getdirentries */
-// #define SYS_statfs 157
-// #define SYS_fstatfs 158
-// #define SYS_unmount 159
-///* 160 old async_daemon */
-// #define SYS_getfh 161
-///* 162 old getdomainname */
-///* 163 old setdomainname */
-///* 164 */
-// #define SYS_quotactl 165
-///* 166 old exportfs */
-// #define SYS_mount 167
-///* 168 old ustat */
-// #define SYS_csops 169
-// #define SYS_csops_audittoken 170
-///* 171 old wait3 */
-///* 172 old rpause */
-// #define SYS_waitid 173
-///* 174 old getdents */
-///* 175 old gc_control */
-///* 176 old add_profil */
-// #define SYS_kdebug_typefilter 177
-// #define SYS_kdebug_trace_string 178
-// #define SYS_kdebug_trace64 179
-// #define SYS_kdebug_trace 180
-// #define SYS_setgid 181
-// #define SYS_setegid 182
-// #define SYS_seteuid 183
-// #define SYS_sigreturn 184
-// #define SYS_panic_with_data 185
-// #define SYS_thread_selfcounts 186
-// #define SYS_fdatasync 187
-// #define SYS_stat 188
-// #define SYS_fstat 189
-// #define SYS_lstat 190
-// #define SYS_pathconf 191
-// #define SYS_fpathconf 192
-///* 193 old getfsstat */
-// #define SYS_getrlimit 194
-// #define SYS_setrlimit 195
-// #define SYS_getdirentries 196
-// #define SYS_mmap 197
-///* 198 old __syscall */
-// #define SYS_lseek 199
-// #define SYS_truncate 200
-// #define SYS_ftruncate 201
-// #define SYS_sysctl 202
-// #define SYS_mlock 203
-// #define SYS_munlock 204
-// #define SYS_undelete 205
-///* 206 old ATsocket */
-///* 207 old ATgetmsg */
-///* 208 old ATputmsg */
-///* 209 old ATsndreq */
-///* 210 old ATsndrsp */
-///* 211 old ATgetreq */
-///* 212 old ATgetrsp */
-///* 213 Reserved for AppleTalk */
-///* 214 */
-///* 215 */
-// #define SYS_open_dprotected_np 216
-// #define SYS_fsgetpath_ext 217
-// #define SYS_openat_dprotected_np 218
-///* 219 old fstatv */
-// #define SYS_getattrlist 220
-// #define SYS_setattrlist 221
-// #define SYS_getdirentriesattr 222
-// #define SYS_exchangedata 223
-///* 224 old checkuseraccess or fsgetpath */
-// #define SYS_searchfs 225
-// #define SYS_delete 226
-// #define SYS_copyfile 227
-// #define SYS_fgetattrlist 228
-// #define SYS_fsetattrlist 229
-// #define SYS_poll 230
-///* 231 old watchevent */
-///* 232 old waitevent */
-///* 233 old modwatch */
-// #define SYS_getxattr 234
-// #define SYS_fgetxattr 235
-// #define SYS_setxattr 236
-// #define SYS_fsetxattr 237
-// #define SYS_removexattr 238
-// #define SYS_fremovexattr 239
-// #define SYS_listxattr 240
-// #define SYS_flistxattr 241
-// #define SYS_fsctl 242
-// #define SYS_initgroups 243
-// #define SYS_posix_spawn 244
-// #define SYS_ffsctl 245
-///* 246 */
-///* 247 old nfsclnt */
-// #define SYS_fhopen 248
-///* 249 */
-// #define SYS_minherit 250
-// #define SYS_semsys 251
-// #define SYS_msgsys 252
-// #define SYS_shmsys 253
-// #define SYS_semctl 254
-// #define SYS_semget 255
-// #define SYS_semop 256
-///* 257 old semconfig */
-// #define SYS_msgctl 258
-// #define SYS_msgget 259
-// #define SYS_msgsnd 260
-// #define SYS_msgrcv 261
-// #define SYS_shmat 262
-// #define SYS_shmctl 263
-// #define SYS_shmdt 264
-// #define SYS_shmget 265
-// #define SYS_shm_open 266
-// #define SYS_shm_unlink 267
-// #define SYS_sem_open 268
-// #define SYS_sem_close 269
-// #define SYS_sem_unlink 270
-// #define SYS_sem_wait 271
-// #define SYS_sem_trywait 272
-// #define SYS_sem_post 273
-// #define SYS_sysctlbyname 274
-///* 275 old sem_init */
-///* 276 old sem_destroy */
-// #define SYS_open_extended 277
-// #define SYS_umask_extended 278
-// #define SYS_stat_extended 279
-// #define SYS_lstat_extended 280
-// #define SYS_fstat_extended 281
-// #define SYS_chmod_extended 282
-// #define SYS_fchmod_extended 283
-// #define SYS_access_extended 284
-// #define SYS_settid 285
-// #define SYS_gettid 286
-// #define SYS_setsgroups 287
-// #define SYS_getsgroups 288
-// #define SYS_setwgroups 289
-// #define SYS_getwgroups 290
-// #define SYS_mkfifo_extended 291
-// #define SYS_mkdir_extended 292
-// #define SYS_identitysvc 293
-// #define SYS_shared_region_check_np 294
-///* 295 old shared_region_map_np */
-// #define SYS_vm_pressure_monitor 296
-// #define SYS_psynch_rw_longrdlock 297
-// #define SYS_psynch_rw_yieldwrlock 298
-// #define SYS_psynch_rw_downgrade 299
-// #define SYS_psynch_rw_upgrade 300
-// #define SYS_psynch_mutexwait 301
-// #define SYS_psynch_mutexdrop 302
-// #define SYS_psynch_cvbroad 303
-// #define SYS_psynch_cvsignal 304
-// #define SYS_psynch_cvwait 305
-// #define SYS_psynch_rw_rdlock 306
-// #define SYS_psynch_rw_wrlock 307
-// #define SYS_psynch_rw_unlock 308
-// #define SYS_psynch_rw_unlock2 309
-// #define SYS_getsid 310
-// #define SYS_settid_with_pid 311
-// #define SYS_psynch_cvclrprepost 312
-// #define SYS_aio_fsync 313
-// #define SYS_aio_return 314
-// #define SYS_aio_suspend 315
-// #define SYS_aio_cancel 316
-// #define SYS_aio_error 317
-// #define SYS_aio_read 318
-// #define SYS_aio_write 319
-// #define SYS_lio_listio 320
-///* 321 old __pthread_cond_wait */
-// #define SYS_iopolicysys 322
-// #define SYS_process_policy 323
-// #define SYS_mlockall 324
-// #define SYS_munlockall 325
-///* 326 */
-// #define SYS_issetugid 327
-// #define SYS___pthread_kill 328
-// #define SYS___pthread_sigmask 329
-// #define SYS___sigwait 330
-// #define SYS___disable_threadsignal 331
-// #define SYS___pthread_markcancel 332
-// #define SYS___pthread_canceled 333
-// #define SYS___semwait_signal 334
-///* 335 old utrace */
-// #define SYS_proc_info 336
-// #define SYS_sendfile 337
-// #define SYS_stat64 338
-// #define SYS_fstat64 339
-// #define SYS_lstat64 340
-// #define SYS_stat64_extended 341
-// #define SYS_lstat64_extended 342
-// #define SYS_fstat64_extended 343
-// #define SYS_getdirentries64 344
-// #define SYS_statfs64 345
-// #define SYS_fstatfs64 346
-// #define SYS_getfsstat64 347
-// #define SYS___pthread_chdir 348
-// #define SYS___pthread_fchdir 349
-// #define SYS_audit 350
-// #define SYS_auditon 351
-///* 352 */
-// #define SYS_getauid 353
-// #define SYS_setauid 354
-///* 355 old getaudit */
-///* 356 old setaudit */
-// #define SYS_getaudit_addr 357
-// #define SYS_setaudit_addr 358
-// #define SYS_auditctl 359
-// #define SYS_bsdthread_create 360
-// #define SYS_bsdthread_terminate 361
-// #define SYS_kqueue 362
-// #define SYS_kevent 363
-// #define SYS_lchown 364
-///* 365 old stack_snapshot */
-// #define SYS_bsdthread_register 366
-// #define SYS_workq_open 367
-// #define SYS_workq_kernreturn 368
-// #define SYS_kevent64 369
-///* 370 old __semwait_signal */
-///* 371 old __semwait_signal */
-// #define SYS_thread_selfid 372
-// #define SYS_ledger 373
-// #define SYS_kevent_qos 374
-// #define SYS_kevent_id 375
-///* 376 */
-///* 377 */
-///* 378 */
-///* 379 */
-// #define SYS___mac_execve 380
-// #define SYS___mac_syscall 381
-// #define SYS___mac_get_file 382
-// #define SYS___mac_set_file 383
-// #define SYS___mac_get_link 384
-// #define SYS___mac_set_link 385
-// #define SYS___mac_get_proc 386
-// #define SYS___mac_set_proc 387
-// #define SYS___mac_get_fd 388
-// #define SYS___mac_set_fd 389
-// #define SYS___mac_get_pid 390
-///* 391 */
-///* 392 */
-///* 393 */
-// #define SYS_pselect 394
-// #define SYS_pselect_nocancel 395
-// #define SYS_read_nocancel 396
-// #define SYS_write_nocancel 397
-// #define SYS_open_nocancel 398
-// #define SYS_close_nocancel 399
-// #define SYS_wait4_nocancel 400
-// #define SYS_recvmsg_nocancel 401
-// #define SYS_sendmsg_nocancel 402
-// #define SYS_recvfrom_nocancel 403
-// #define SYS_accept_nocancel 404
-// #define SYS_msync_nocancel 405
-// #define SYS_fcntl_nocancel 406
-// #define SYS_select_nocancel 407
-// #define SYS_fsync_nocancel 408
-// #define SYS_connect_nocancel 409
-// #define SYS_sigsuspend_nocancel 410
-// #define SYS_readv_nocancel 411
-// #define SYS_writev_nocancel 412
-// #define SYS_sendto_nocancel 413
-// #define SYS_pread_nocancel 414
-// #define SYS_pwrite_nocancel 415
-// #define SYS_waitid_nocancel 416
-// #define SYS_poll_nocancel 417
-// #define SYS_msgsnd_nocancel 418
-// #define SYS_msgrcv_nocancel 419
-// #define SYS_sem_wait_nocancel 420
-// #define SYS_aio_suspend_nocancel 421
-// #define SYS___sigwait_nocancel 422
-// #define SYS___semwait_signal_nocancel 423
-// #define SYS___mac_mount 424
-// #define SYS___mac_get_mount 425
-// #define SYS___mac_getfsstat 426
-// #define SYS_fsgetpath 427
-// #define SYS_audit_session_self 428
-// #define SYS_audit_session_join 429
-// #define SYS_fileport_makeport 430
-// #define SYS_fileport_makefd 431
-// #define SYS_audit_session_port 432
-// #define SYS_pid_suspend 433
-// #define SYS_pid_resume 434
-// #define SYS_pid_hibernate 435
-// #define SYS_pid_shutdown_sockets 436
-///* 437 old shared_region_slide_np */
-///* 438 old shared_region_map_and_slide_np */
-// #define SYS_kas_info 439
-// #define SYS_memorystatus_control 440
-// #define SYS_guarded_open_np 441
-// #define SYS_guarded_close_np 442
-// #define SYS_guarded_kqueue_np 443
-// #define SYS_change_fdguard_np 444
-// #define SYS_usrctl 445
-// #define SYS_proc_rlimit_control 446
-// #define SYS_connectx 447
-// #define SYS_disconnectx 448
-// #define SYS_peeloff 449
-// #define SYS_socket_delegate 450
-// #define SYS_telemetry 451
-// #define SYS_proc_uuid_policy 452
-// #define SYS_memorystatus_get_level 453
-// #define SYS_system_override 454
-// #define SYS_vfs_purge 455
-// #define SYS_sfi_ctl 456
-// #define SYS_sfi_pidctl 457
-// #define SYS_coalition 458
-// #define SYS_coalition_info 459
-// #define SYS_necp_match_policy 460
-// #define SYS_getattrlistbulk 461
-// #define SYS_clonefileat 462
-// #define SYS_openat 463
-// #define SYS_openat_nocancel 464
-// #define SYS_renameat 465
-// #define SYS_faccessat 466
-// #define SYS_fchmodat 467
-// #define SYS_fchownat 468
-// #define SYS_fstatat 469
-// #define SYS_fstatat64 470
-// #define SYS_linkat 471
-// #define SYS_unlinkat 472
-// #define SYS_readlinkat 473
-// #define SYS_symlinkat 474
-// #define SYS_mkdirat 475
-// #define SYS_getattrlistat 476
-// #define SYS_proc_trace_log 477
-// #define SYS_bsdthread_ctl 478
-// #define SYS_openbyid_np 479
-// #define SYS_recvmsg_x 480
-// #define SYS_sendmsg_x 481
-// #define SYS_thread_selfusage 482
-// #define SYS_csrctl 483
-// #define SYS_guarded_open_dprotected_np 484
-// #define SYS_guarded_write_np 485
-// #define SYS_guarded_pwrite_np 486
-// #define SYS_guarded_writev_np 487
-// #define SYS_renameatx_np 488
-// #define SYS_mremap_encrypted 489
-// #define SYS_netagent_trigger 490
-// #define SYS_stack_snapshot_with_config 491
-// #define SYS_microstackshot 492
-// #define SYS_grab_pgo_data 493
-// #define SYS_persona 494
-///* 495 */
-// #define SYS_mach_eventlink_signal 496
-// #define SYS_mach_eventlink_wait_until 497
-// #define SYS_mach_eventlink_signal_wait_until 498
-// #define SYS_work_interval_ctl 499
-// #define SYS_getentropy 500
-// #define SYS_necp_open 501
-// #define SYS_necp_client_action 502
-// #define SYS___nexus_open 503
-// #define SYS___nexus_register 504
-// #define SYS___nexus_deregister 505
-// #define SYS___nexus_create 506
-// #define SYS___nexus_destroy 507
-// #define SYS___nexus_get_opt 508
-// #define SYS___nexus_set_opt 509
-// #define SYS___channel_open 510
-// #define SYS___channel_get_info 511
-// #define SYS___channel_sync 512
-// #define SYS___channel_get_opt 513
-// #define SYS___channel_set_opt 514
-// #define SYS_ulock_wait 515
-// #define SYS_ulock_wake 516
-// #define SYS_fclonefileat 517
-// #define SYS_fs_snapshot 518
-// #define SYS_register_uexc_handler 519
-// #define SYS_terminate_with_payload 520
-// #define SYS_abort_with_payload 521
-// #define SYS_necp_session_open 522
-// #define SYS_necp_session_action 523
-// #define SYS_setattrlistat 524
-// #define SYS_net_qos_guideline 525
-// #define SYS_fmount 526
-// #define SYS_ntp_adjtime 527
-// #define SYS_ntp_gettime 528
-// #define SYS_os_fault_with_payload 529
-// #define SYS_kqueue_workloop_ctl 530
-// #define SYS___mach_bridge_remote_time 531
-// #define SYS_coalition_ledger 532
-// #define SYS_log_data 533
-// #define SYS_memorystatus_available_memory 534
-// #define SYS_objc_bp_assist_cfg_np 535
-// #define SYS_shared_region_map_and_slide_2_np 536
-// #define SYS_pivot_root 537
-// #define SYS_task_inspect_for_pid 538
-// #define SYS_task_read_for_pid 539
-// #define SYS_preadv 540
-// #define SYS_pwritev 541
-// #define SYS_preadv_nocancel 542
-// #define SYS_pwritev_nocancel 543
-// #define SYS_ulock_wait2 544
-// #define SYS_proc_info_extended_id 545
-// #define SYS_tracker_action 546
-// #define SYS_debug_syscall_reject 547
-// #define SYS_debug_syscall_reject_config 548
-// #define SYS_graftdmg 549
-// #define SYS_map_with_linking_np 550
-// #define SYS_freadlink 551
-// #define SYS_record_system_event 552
-// #define SYS_mkfifoat 553
-// #define SYS_mknodat 554
-// #define SYS_ungraftdmg 555
-// #define SYS_coalition_policy_set 556
-// #define SYS_coalition_policy_get 557
-// #define SYS_MAXSYSCALL 558
-// #define SYS_invalid 63
-
-/* SYSCALL NUMBERS END */
-
#endif // LLVM_LIBC_SRC___SUPPORT_OSUTIL_DARWIN_ARM_SYSCALL_H
>From 5f99c9f132fdfb1da8b08b2ecdd0968a5eddb9e6 Mon Sep 17 00:00:00 2001
From: Shreeyash Pandey <shreeyash335 at gmail.com>
Date: Sat, 8 Nov 2025 14:41:59 +0530
Subject: [PATCH 8/9] [libc] include sdk path
Signed-off-by: Shreeyash Pandey <shreeyash335 at gmail.com>
---
libc/cmake/modules/LLVMLibCCompileOptionRules.cmake | 13 +++++++++++++
1 file changed, 13 insertions(+)
diff --git a/libc/cmake/modules/LLVMLibCCompileOptionRules.cmake b/libc/cmake/modules/LLVMLibCCompileOptionRules.cmake
index 2eb0f066e19e0..042350546b1c1 100644
--- a/libc/cmake/modules/LLVMLibCCompileOptionRules.cmake
+++ b/libc/cmake/modules/LLVMLibCCompileOptionRules.cmake
@@ -170,6 +170,19 @@ function(_get_common_compile_options output_var flags)
list(APPEND compile_options "-idirafter${LIBC_KERNEL_HEADERS}")
endif()
endif()
+ if(LIBC_TARGET_OS_IS_DARWIN)
+ execute_process(
+ COMMAND xcrun --sdk macosx --show-sdk-path
+ OUTPUT_VARIABLE MACOSX_SDK_PATH
+ RESULT_VARIABLE MACOSX_SDK_PATH_RESULT
+ OUTPUT_STRIP_TRAILING_WHITESPACE
+ )
+ if(MACOSX_SDK_PATH_RESULT EQUAL 0)
+ list(APPEND compile_options "-I" "${MACOSX_SDK_PATH}/usr/include")
+ else()
+ message(WARNING "Could not find macOS SDK path. `xcrun --sdk macosx --show-sdk-path` failed.")
+ endif()
+ endif()
endif()
if(LIBC_COMPILER_HAS_FIXED_POINT)
>From e718db1bcf2fa8cd83881da8871be060342ff5a5 Mon Sep 17 00:00:00 2001
From: Shreeyash Pandey <shreeyash335 at gmail.com>
Date: Sat, 8 Nov 2025 14:45:03 +0530
Subject: [PATCH 9/9] [libc] make include guards explicit
Signed-off-by: Shreeyash Pandey <shreeyash335 at gmail.com>
---
libc/include/sys/syscall.h.def | 9 +++++----
1 file changed, 5 insertions(+), 4 deletions(-)
diff --git a/libc/include/sys/syscall.h.def b/libc/include/sys/syscall.h.def
index 333ad659184a3..112fdd2d80369 100644
--- a/libc/include/sys/syscall.h.def
+++ b/libc/include/sys/syscall.h.def
@@ -9,11 +9,12 @@
#ifndef LLVM_LIBC_SYS_SYSCALL_H
#define LLVM_LIBC_SYS_SYSCALL_H
-//TODO: Handle non-linux syscalls
-
#if defined(__APPLE__)
+
#include <sys/syscall.h>
-#else
+
+#elif defined(__linux__)
+
#include <asm/unistd.h>
#ifdef __NR_FAST_atomic_update
@@ -2364,6 +2365,6 @@
#define SYS_writev __NR_writev
#endif
-#endif
+#endif // __linux__
#endif // LLVM_LIBC_SYS_SYSCALL_H
More information about the libc-commits
mailing list