2 /*--------------------------------------------------------------------*/
3 /*--- System call numbers for Darwin. vki-scnums-darwin.h ---*/
4 /*--------------------------------------------------------------------*/
7 This file is part of Valgrind, a dynamic binary instrumentation
10 Copyright (C) 2007-2010 Apple Inc.
11 Greg Parker gparker@apple.com
13 This program is free software; you can redistribute it and/or
14 modify it under the terms of the GNU General Public License as
15 published by the Free Software Foundation; either version 2 of the
16 License, or (at your option) any later version.
18 This program is distributed in the hope that it will be useful, but
19 WITHOUT ANY WARRANTY; without even the implied warranty of
20 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
21 General Public License for more details.
23 You should have received a copy of the GNU General Public License
24 along with this program; if not, write to the Free Software
25 Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
28 The GNU General Public License is contained in the file COPYING.
31 #ifndef __VKI_SCNUMS_DARWIN_H
32 #define __VKI_SCNUMS_DARWIN_H
35 // osfmk/mach/i386/syscall_sw.h
37 // There are two syscall number encodings in Darwin.
39 // The 64-bit encoding is that the top 8-bits are the syscall class. The low
40 // 24 are the syscall number (index) within that class.
42 // The 32-bit encoding is that the syscall number (index) is stored as-is and
43 // the syscall class is encoded as the argument to the 'int' instruction used
44 // to trigger the syscall:
47 // - 0x82: Machine-dependent
49 // Furthermore, just to make life interesting, for Mach traps the number is
52 // Within Valgrind we only use the 64-bit encoding -- on 32-bit systems, we
53 // convert any syscall number to 64-bit encoding when we receive it, and
54 // convert back with VG_DARWIN_SYSNO_FOR_KERNEL when passing any syscall
55 // number back to the kernel (__NR_something shouldn't be passed directly to
58 // Hack: x86 `int $0x80` (unix, 64-bit result) are special.
59 // [I haven't worked out why... --njn]
61 #define VG_DARWIN_SYSCALL_CLASS_SHIFT 24
62 #define VG_DARWIN_SYSCALL_CLASS_MASK (0xFF << VG_DARWIN_SYSCALL_CLASS_SHIFT)
63 #define VG_DARWIN_SYSCALL_NUMBER_MASK (~VG_DARWIN_SYSCALL_CLASS_MASK)
65 #define VG_DARWIN_SYSCALL_CLASS_NONE 0 /* Invalid */
66 #define VG_DARWIN_SYSCALL_CLASS_MACH 1 /* Mach */
67 #define VG_DARWIN_SYSCALL_CLASS_UNIX 2 /* Unix/BSD */
68 #define VG_DARWIN_SYSCALL_CLASS_MDEP 3 /* Machine-dependent */
69 #define VG_DARWIN_SYSCALL_CLASS_DIAG 4 /* Diagnostics */
71 // Macros for encoding syscall numbers in the 64-bit encoding scheme.
72 #define VG_DARWIN_SYSCALL_CONSTRUCT_MACH(syscall_number) \
73 ((VG_DARWIN_SYSCALL_CLASS_MACH << VG_DARWIN_SYSCALL_CLASS_SHIFT) | \
74 (VG_DARWIN_SYSCALL_NUMBER_MASK & (syscall_number)))
76 #define VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(syscall_number) \
77 ((VG_DARWIN_SYSCALL_CLASS_UNIX << VG_DARWIN_SYSCALL_CLASS_SHIFT) | \
78 (VG_DARWIN_SYSCALL_NUMBER_MASK & (syscall_number)))
80 #define VG_DARWIN_SYSCALL_CONSTRUCT_MDEP(syscall_number) \
81 ((VG_DARWIN_SYSCALL_CLASS_MDEP << VG_DARWIN_SYSCALL_CLASS_SHIFT) | \
82 (VG_DARWIN_SYSCALL_NUMBER_MASK & (syscall_number)))
84 #define VG_DARWIN_SYSCALL_CONSTRUCT_DIAG(syscall_number) \
85 ((VG_DARWIN_SYSCALL_CLASS_DIAG << VG_DARWIN_SYSCALL_CLASS_SHIFT) | \
86 (VG_DARWIN_SYSCALL_NUMBER_MASK & (syscall_number)))
89 /* Macros for decoding syscall numbers from the 64-bit encoding scheme. */
90 #define VG_DARWIN_SYSNO_INDEX(sysno) ((sysno) & VG_DARWIN_SYSCALL_NUMBER_MASK)
91 #define VG_DARWIN_SYSNO_CLASS(sysno) ((sysno) >> VG_DARWIN_SYSCALL_CLASS_SHIFT)
94 /* Macros for converting syscall numbers to the form expected by the kernel.*/
96 // This converts the 64-bit syscall number encoding, which we use
97 // throughout Valgrind, into the 32-bit syscall number encoding, which is
98 // suitable for passing to the (32-bit) kernel.
99 # define VG_DARWIN_SYSNO_FOR_KERNEL(sysno) \
100 ((VG_DARWIN_SYSNO_CLASS(sysno) == VG_DARWIN_SYSCALL_CLASS_MACH) \
101 ? -VG_DARWIN_SYSNO_INDEX(sysno) \
102 : VG_DARWIN_SYSNO_INDEX(sysno) \
105 #elif defined(VGA_amd64)
106 // For 64-bit systems, we don't need to do anything to the syscall number.
107 # define VG_DARWIN_SYSNO_FOR_KERNEL(sysno) (sysno)
110 # error Unknown architecture
118 // osfmk/i386/machdep_call.c
119 // DDD: the last two are BSD_CALL instead of CALL...
120 //#define __NR_thread_get_cthread_self VG_DARWIN_SYSCALL_CONSTRUCT_MDEP(0)
121 //#define __NR_thread_set_cthread_self VG_DARWIN_SYSCALL_CONSTRUCT_MDEP(1)
123 #define __NR_thread_fast_set_cthread_self VG_DARWIN_SYSCALL_CONSTRUCT_MDEP(3)
124 //#define __NR_thread_set_user_ldt VG_DARWIN_SYSCALL_CONSTRUCT_MDEP(4)
125 //#define __NR_i386_set_ldt VG_DARWIN_SYSCALL_CONSTRUCT_MDEP(5)
126 //#define __NR_i386_get_ldt VG_DARWIN_SYSCALL_CONSTRUCT_MDEP(6)
128 #elif defined(VGA_amd64)
130 // osfmk/i386/machdep_call.c
131 // 0, 1, 2 are invalid
132 #define __NR_thread_fast_set_cthread_self VG_DARWIN_SYSCALL_CONSTRUCT_MDEP(3)
133 // 4, 5, 6 are invalid
136 # error unknown architecture
140 // osfmk/mach/syscall_sw.h
142 #define __NR_mach_reply_port VG_DARWIN_SYSCALL_CONSTRUCT_MACH(26)
143 #define __NR_thread_self_trap VG_DARWIN_SYSCALL_CONSTRUCT_MACH(27)
144 #define __NR_task_self_trap VG_DARWIN_SYSCALL_CONSTRUCT_MACH(28)
145 #define __NR_host_self_trap VG_DARWIN_SYSCALL_CONSTRUCT_MACH(29)
147 #define __NR_mach_msg_trap VG_DARWIN_SYSCALL_CONSTRUCT_MACH(31)
148 #define __NR_mach_msg_overwrite_trap VG_DARWIN_SYSCALL_CONSTRUCT_MACH(32)
149 #define __NR_semaphore_signal_trap VG_DARWIN_SYSCALL_CONSTRUCT_MACH(33)
150 #define __NR_semaphore_signal_all_trap VG_DARWIN_SYSCALL_CONSTRUCT_MACH(34)
151 #define __NR_semaphore_signal_thread_trap VG_DARWIN_SYSCALL_CONSTRUCT_MACH(35)
152 #define __NR_semaphore_wait_trap VG_DARWIN_SYSCALL_CONSTRUCT_MACH(36)
153 #define __NR_semaphore_wait_signal_trap VG_DARWIN_SYSCALL_CONSTRUCT_MACH(37)
154 #define __NR_semaphore_timedwait_trap VG_DARWIN_SYSCALL_CONSTRUCT_MACH(38)
155 #define __NR_semaphore_timedwait_signal_trap VG_DARWIN_SYSCALL_CONSTRUCT_MACH(39)
158 #define __NR_init_process VG_DARWIN_SYSCALL_CONSTRUCT_MACH(41)
159 #define __NR_map_fd VG_DARWIN_SYSCALL_CONSTRUCT_MACH(43)
162 #define __NR_task_name_for_pid VG_DARWIN_SYSCALL_CONSTRUCT_MACH(44)
163 #define __NR_task_for_pid VG_DARWIN_SYSCALL_CONSTRUCT_MACH(45)
164 #define __NR_pid_for_task VG_DARWIN_SYSCALL_CONSTRUCT_MACH(46)
167 #define __NR_macx_swapon VG_DARWIN_SYSCALL_CONSTRUCT_MACH(48)
168 #define __NR_macx_swapoff VG_DARWIN_SYSCALL_CONSTRUCT_MACH(49)
169 #define __NR_macx_triggers VG_DARWIN_SYSCALL_CONSTRUCT_MACH(51)
170 #define __NR_macx_backing_store_suspend VG_DARWIN_SYSCALL_CONSTRUCT_MACH(52)
171 #define __NR_macx_backing_store_recovery VG_DARWIN_SYSCALL_CONSTRUCT_MACH(53)
174 #define __NR_swtch_pri VG_DARWIN_SYSCALL_CONSTRUCT_MACH(59)
175 #define __NR_swtch VG_DARWIN_SYSCALL_CONSTRUCT_MACH(60)
176 #define __NR_sched_yield __NR_swtch /* linux-alike name */
177 #define __NR_syscall_thread_switch VG_DARWIN_SYSCALL_CONSTRUCT_MACH(61)
178 #define __NR_clock_sleep_trap VG_DARWIN_SYSCALL_CONSTRUCT_MACH(62)
180 #define __NR_mach_timebase_info VG_DARWIN_SYSCALL_CONSTRUCT_MACH(89)
181 #define __NR_mach_wait_until VG_DARWIN_SYSCALL_CONSTRUCT_MACH(90)
182 #define __NR_mk_timer_create VG_DARWIN_SYSCALL_CONSTRUCT_MACH(91)
183 #define __NR_mk_timer_destroy VG_DARWIN_SYSCALL_CONSTRUCT_MACH(92)
184 #define __NR_mk_timer_arm VG_DARWIN_SYSCALL_CONSTRUCT_MACH(93)
185 #define __NR_mk_timer_cancel VG_DARWIN_SYSCALL_CONSTRUCT_MACH(94)
187 #define __NR_iokit_user_client_trap VG_DARWIN_SYSCALL_CONSTRUCT_MACH(100)
192 #define __NR_syscall VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(0)
193 #define __NR_exit VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(1)
194 #define __NR_fork VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(2) // was UX64
195 #define __NR_read VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(3)
196 #define __NR_write VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(4)
197 #define __NR_open VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(5)
198 #define __NR_close VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(6)
199 #define __NR_wait4 VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(7)
201 #define __NR_link VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(9)
202 #define __NR_unlink VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(10)
204 #define __NR_chdir VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(12)
205 #define __NR_fchdir VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(13)
206 #define __NR_mknod VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(14)
207 #define __NR_chmod VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(15)
208 #define __NR_chown VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(16)
210 #define __NR_getfsstat VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(18)
212 #define __NR_getpid VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(20)
215 #define __NR_setuid VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(23)
216 #define __NR_getuid VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(24)
217 #define __NR_geteuid VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(25)
218 #define __NR_ptrace VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(26)
219 #define __NR_recvmsg VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(27)
220 #define __NR_sendmsg VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(28)
221 #define __NR_recvfrom VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(29)
222 #define __NR_accept VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(30)
223 #define __NR_getpeername VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(31)
224 #define __NR_getsockname VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(32)
225 #define __NR_access VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(33)
226 #define __NR_chflags VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(34)
227 #define __NR_fchflags VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(35)
228 #define __NR_sync VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(36)
229 #define __NR_kill VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(37)
231 #define __NR_getppid VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(39)
233 #define __NR_dup VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(41)
234 #define __NR_pipe VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(42) // was UX64
235 #define __NR_getegid VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(43)
236 #define __NR_profil VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(44)
238 #define __NR_sigaction VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(46)
239 #define __NR_getgid VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(47)
240 #define __NR_sigprocmask VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(48)
241 #define __NR_getlogin VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(49)
242 #define __NR_setlogin VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(50)
243 #define __NR_acct VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(51)
244 #define __NR_sigpending VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(52)
245 #define __NR_sigaltstack VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(53)
246 #define __NR_ioctl VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(54)
247 #define __NR_reboot VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(55)
248 #define __NR_revoke VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(56)
249 #define __NR_symlink VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(57)
250 #define __NR_readlink VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(58)
251 #define __NR_execve VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(59)
252 #define __NR_umask VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(60)
253 #define __NR_chroot VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(61)
255 /* 63 used internally , reserved */
256 /* 64 old getpagesize */
257 #define __NR_msync VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(65)
258 #define __NR_vfork VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(66)
265 #define __NR_munmap VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(73)
266 #define __NR_mprotect VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(74)
267 #define __NR_madvise VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(75)
270 #define __NR_mincore VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(78)
271 #define __NR_getgroups VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(79)
272 #define __NR_setgroups VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(80)
273 #define __NR_getpgrp VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(81)
274 #define __NR_setpgid VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(82)
275 #define __NR_setitimer VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(83)
277 #define __NR_swapon VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(85)
278 #define __NR_getitimer VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(86)
279 /* 87 old gethostname */
280 /* 88 old sethostname */
281 #define __NR_getdtablesize VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(89)
282 #define __NR_dup2 VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(90)
284 #define __NR_fcntl VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(92)
285 #define __NR_select VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(93)
287 #define __NR_fsync VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(95)
288 #define __NR_setpriority VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(96)
289 #define __NR_socket VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(97)
290 #define __NR_connect VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(98)
292 #define __NR_getpriority VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(100)
295 /* 103 old sigreturn */
296 #define __NR_bind VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(104)
297 #define __NR_setsockopt VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(105)
298 #define __NR_listen VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(106)
301 /* 109 old sigblock */
302 /* 110 old sigsetmask */
303 #define __NR_sigsuspend VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(111)
304 /* 112 old sigstack */
305 /* 113 old recvmsg */
306 /* 114 old sendmsg */
308 #define __NR_gettimeofday VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(116)
309 #define __NR_getrusage VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(117)
310 #define __NR_getsockopt VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(118)
312 #define __NR_readv VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(120)
313 #define __NR_writev VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(121)
314 #define __NR_settimeofday VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(122)
315 #define __NR_fchown VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(123)
316 #define __NR_fchmod VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(124)
317 /* 125 old recvfrom */
318 #define __NR_setreuid VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(126)
319 #define __NR_setregid VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(127)
320 #define __NR_rename VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(128)
321 /* 129 old truncate */
322 /* 130 old ftruncate */
323 #define __NR_flock VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(131)
324 #define __NR_mkfifo VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(132)
325 #define __NR_sendto VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(133)
326 #define __NR_shutdown VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(134)
327 #define __NR_socketpair VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(135)
328 #define __NR_mkdir VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(136)
329 #define __NR_rmdir VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(137)
330 #define __NR_utimes VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(138)
331 #define __NR_futimes VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(139)
332 #define __NR_adjtime VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(140)
333 /* 141 old getpeername */
334 #define __NR_gethostuuid VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(142)
335 /* 143 old sethostid */
336 /* 144 old getrlimit */
337 /* 145 old setrlimit */
339 #define __NR_setsid VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(147)
340 /* 148 old setquota */
342 /* 150 old getsockname */
343 #define __NR_getpgid VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(151)
344 #define __NR_setprivexec VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(152)
345 #define __NR_pread VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(153)
346 #define __NR_pwrite VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(154)
347 #define __NR_nfssvc VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(155)
348 /* 156 old getdirentries */
349 #define __NR_statfs VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(157)
350 #define __NR_fstatfs VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(158)
351 #define __NR_unmount VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(159)
352 /* 160 old async_daemon */
353 #define __NR_getfh VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(161)
354 /* 162 old getdomainname */
355 /* 163 old setdomainname */
357 #define __NR_quotactl VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(165)
358 /* 166 old exportfs */
359 #define __NR_mount VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(167)
361 #define __NR_csops VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(169)
365 #define __NR_waitid VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(173)
366 /* 174 old getdents */
367 /* 175 old gc_control */
368 #define __NR_add_profil VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(176)
372 #define __NR_kdebug_trace VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(180)
373 #define __NR_setgid VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(181)
374 #define __NR_setegid VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(182)
375 #define __NR_seteuid VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(183)
376 #define __NR_sigreturn VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(184)
377 #define __NR_chud VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(185)
380 #define __NR_stat VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(188)
381 #define __NR_fstat VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(189)
382 #define __NR_lstat VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(190)
383 #define __NR_pathconf VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(191)
384 #define __NR_fpathconf VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(192)
386 #define __NR_getrlimit VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(194)
387 #define __NR_setrlimit VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(195)
388 #define __NR_getdirentries VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(196)
389 #define __NR_mmap VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(197)
391 #define __NR_lseek VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(199) // was UX64
392 #define __NR_truncate VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(200)
393 #define __NR_ftruncate VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(201)
394 #define __NR___sysctl VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(202)
395 #define __NR_mlock VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(203)
396 #define __NR_munlock VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(204)
397 #define __NR_undelete VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(205)
398 #define __NR_ATsocket VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(206)
399 #define __NR_ATgetmsg VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(207)
400 #define __NR_ATputmsg VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(208)
401 #define __NR_ATPsndreq VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(209)
402 #define __NR_ATPsndrsp VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(210)
403 #define __NR_ATPgetreq VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(211)
404 #define __NR_ATPgetrsp VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(212)
405 /* 213 Reserved for AppleTalk */
406 #define __NR_kqueue_from_portset_np VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(214)
407 #define __NR_kqueue_portset_np VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(215)
408 #define __NR_mkcomplex VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(216)
409 #define __NR_statv VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(217)
410 #define __NR_lstatv VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(218)
411 #define __NR_fstatv VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(219)
412 #define __NR_getattrlist VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(220)
413 #define __NR_setattrlist VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(221)
414 #define __NR_getdirentriesattr VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(222)
415 #define __NR_exchangedata VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(223)
416 /* 224 checkuseraccess */
417 #define __NR_searchfs VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(225)
418 #define __NR_delete VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(226)
419 #define __NR_copyfile VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(227)
422 #define __NR_poll VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(230)
423 #define __NR_watchevent VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(231)
424 #define __NR_waitevent VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(232)
425 #define __NR_modwatch VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(233)
426 #define __NR_getxattr VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(234)
427 #define __NR_fgetxattr VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(235)
428 #define __NR_setxattr VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(236)
429 #define __NR_fsetxattr VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(237)
430 #define __NR_removexattr VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(238)
431 #define __NR_fremovexattr VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(239)
432 #define __NR_listxattr VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(240)
433 #define __NR_flistxattr VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(241)
434 #define __NR_fsctl VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(242)
435 #define __NR_initgroups VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(243)
436 #define __NR_posix_spawn VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(244)
439 #define __NR_nfsclnt VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(247)
440 #define __NR_fhopen VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(248)
442 #define __NR_minherit VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(250)
443 #define __NR_semsys VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(251)
444 #define __NR_msgsys VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(252)
445 #define __NR_shmsys VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(253)
446 #define __NR_semctl VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(254)
447 #define __NR_semget VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(255)
448 #define __NR_semop VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(256)
450 #define __NR_msgctl VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(258)
451 #define __NR_msgget VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(259)
452 #define __NR_msgsnd VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(260)
453 #define __NR_msgrcv VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(261)
454 #define __NR_shmat VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(262)
455 #define __NR_shmctl VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(263)
456 #define __NR_shmdt VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(264)
457 #define __NR_shmget VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(265)
458 #define __NR_shm_open VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(266)
459 #define __NR_shm_unlink VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(267)
460 #define __NR_sem_open VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(268)
461 #define __NR_sem_close VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(269)
462 #define __NR_sem_unlink VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(270)
463 #define __NR_sem_wait VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(271)
464 #define __NR_sem_trywait VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(272)
465 #define __NR_sem_post VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(273)
466 #define __NR_sem_getvalue VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(274)
467 #define __NR_sem_init VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(275)
468 #define __NR_sem_destroy VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(276)
469 #define __NR_open_extended VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(277)
470 #define __NR_umask_extended VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(278)
471 #define __NR_stat_extended VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(279)
472 #define __NR_lstat_extended VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(280)
473 #define __NR_fstat_extended VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(281)
474 #define __NR_chmod_extended VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(282)
475 #define __NR_fchmod_extended VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(283)
476 #define __NR_access_extended VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(284)
477 #define __NR_settid VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(285)
478 #define __NR_gettid VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(286)
479 #define __NR_setsgroups VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(287)
480 #define __NR_getsgroups VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(288)
481 #define __NR_setwgroups VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(289)
482 #define __NR_getwgroups VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(290)
483 #define __NR_mkfifo_extended VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(291)
484 #define __NR_mkdir_extended VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(292)
485 #define __NR_identitysvc VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(293)
486 #define __NR_shared_region_check_np VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(294)
487 #define __NR_shared_region_map_np VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(295)
488 /* 296 old load_shared_file */
489 /* 297 old reset_shared_file */
490 /* 298 old new_system_shared_regions */
491 /* 299 old shared_region_map_file_np */
492 /* 300 old shared_region_make_private_np */
493 #define __NR___pthread_mutex_destroy VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(301)
494 #define __NR___pthread_mutex_init VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(302)
495 #define __NR___pthread_mutex_lock VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(303)
496 #define __NR___pthread_mutex_trylock VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(304)
497 #define __NR___pthread_mutex_unlock VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(305)
498 #define __NR___pthread_cond_init VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(306)
499 #define __NR___pthread_cond_destroy VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(307)
500 #define __NR___pthread_cond_broadcast VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(308)
501 #define __NR___pthread_cond_signal VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(309)
502 #define __NR_getsid VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(310)
503 #define __NR_settid_with_pid VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(311)
504 #define __NR___pthread_cond_timedwait VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(312)
505 #define __NR_aio_fsync VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(313)
506 #define __NR_aio_return VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(314)
507 #define __NR_aio_suspend VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(315)
508 #define __NR_aio_cancel VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(316)
509 #define __NR_aio_error VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(317)
510 #define __NR_aio_read VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(318)
511 #define __NR_aio_write VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(319)
512 #define __NR_lio_listio VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(320)
513 #define __NR___pthread_cond_wait VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(321)
514 #define __NR_iopolicysys VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(322)
516 #define __NR_mlockall VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(324)
517 #define __NR_munlockall VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(325)
519 #define __NR_issetugid VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(327)
520 #define __NR___pthread_kill VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(328)
521 #define __NR___pthread_sigmask VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(329)
522 #define __NR___sigwait VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(330)
523 #define __NR___disable_threadsignal VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(331)
524 #define __NR___pthread_markcancel VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(332)
525 #define __NR___pthread_canceled VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(333)
526 #define __NR___semwait_signal VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(334)
528 #define __NR_proc_info VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(336)
529 #define __NR_sendfile VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(337)
530 #define __NR_stat64 VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(338)
531 #define __NR_fstat64 VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(339)
532 #define __NR_lstat64 VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(340)
533 #define __NR_stat64_extended VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(341)
534 #define __NR_lstat64_extended VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(342)
535 #define __NR_fstat64_extended VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(343)
536 #define __NR_getdirentries64 VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(344)
537 #define __NR_statfs64 VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(345)
538 #define __NR_fstatfs64 VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(346)
539 #define __NR_getfsstat64 VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(347)
540 #define __NR___pthread_chdir VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(348)
541 #define __NR___pthread_fchdir VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(349)
543 #define __NR_audit VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(350)
544 #define __NR_auditon VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(351)
546 #define __NR_getauid VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(353)
547 #define __NR_setauid VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(354)
548 #define __NR_getaudit VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(355)
549 #define __NR_setaudit VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(356)
550 #define __NR_getaudit_addr VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(357)
551 #define __NR_setaudit_addr VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(358)
552 #define __NR_auditctl VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(359)
553 #define __NR_bsdthread_create VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(360)
554 #define __NR_bsdthread_terminate VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(361)
555 #define __NR_kqueue VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(362)
556 #define __NR_kevent VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(363)
557 #define __NR_lchown VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(364)
558 #define __NR_stack_snapshot VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(365)
559 #define __NR_bsdthread_register VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(366)
560 #define __NR_workq_open VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(367)
561 #define __NR_workq_ops VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(368)
573 #define __NR___mac_execve VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(380)
574 #define __NR___mac_syscall VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(381)
575 #define __NR___mac_get_file VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(382)
576 #define __NR___mac_set_file VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(383)
577 #define __NR___mac_get_link VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(384)
578 #define __NR___mac_set_link VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(385)
579 #define __NR___mac_get_proc VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(386)
580 #define __NR___mac_set_proc VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(387)
581 #define __NR___mac_get_fd VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(388)
582 #define __NR___mac_set_fd VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(389)
583 #define __NR___mac_get_pid VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(390)
584 #define __NR___mac_get_lcid VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(391)
585 #define __NR___mac_get_lctx VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(392)
586 #define __NR___mac_set_lctx VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(393)
587 #define __NR_setlcid VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(394)
588 #define __NR_getlcid VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(395)
589 #define __NR_read_nocancel VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(396)
590 #define __NR_write_nocancel VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(397)
591 #define __NR_open_nocancel VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(398)
592 #define __NR_close_nocancel VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(399)
593 #define __NR_wait4_nocancel VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(400)
594 #define __NR_recvmsg_nocancel VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(401)
595 #define __NR_sendmsg_nocancel VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(402)
596 #define __NR_recvfrom_nocancel VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(403)
597 #define __NR_accept_nocancel VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(404)
598 #define __NR_msync_nocancel VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(405)
599 #define __NR_fcntl_nocancel VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(406)
600 #define __NR_select_nocancel VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(407)
601 #define __NR_fsync_nocancel VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(408)
602 #define __NR_connect_nocancel VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(409)
603 #define __NR_sigsuspend_nocancel VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(410)
604 #define __NR_readv_nocancel VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(411)
605 #define __NR_writev_nocancel VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(412)
606 #define __NR_sendto_nocancel VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(413)
607 #define __NR_pread_nocancel VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(414)
608 #define __NR_pwrite_nocancel VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(415)
609 #define __NR_waitid_nocancel VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(416)
610 #define __NR_poll_nocancel VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(417)
611 #define __NR_msgsnd_nocancel VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(418)
612 #define __NR_msgrcv_nocancel VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(419)
613 #define __NR_sem_wait_nocancel VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(420)
614 #define __NR_aio_suspend_nocancel VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(421)
615 #define __NR___sigwait_nocancel VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(422)
616 #define __NR___semwait_signal_nocancel VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(423)
617 #define __NR___mac_mount VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(424)
618 #define __NR___mac_get_mount VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(425)
619 #define __NR___mac_getfsstat VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(426)
620 #define __NR_MAXSYSCALL VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(427)
622 #define __NR_DARWIN_FAKE_SIGRETURN (1 + __NR_MAXSYSCALL)