vki-scnums-darwin.h 43 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863
  1. /*--------------------------------------------------------------------*/
  2. /*--- System call numbers for Darwin. vki-scnums-darwin.h ---*/
  3. /*--------------------------------------------------------------------*/
  4. /*
  5. This file is part of Valgrind, a dynamic binary instrumentation
  6. framework.
  7. Copyright (C) 2007-2017 Apple Inc.
  8. Greg Parker gparker@apple.com
  9. This program is free software; you can redistribute it and/or
  10. modify it under the terms of the GNU General Public License as
  11. published by the Free Software Foundation; either version 2 of the
  12. License, or (at your option) any later version.
  13. This program is distributed in the hope that it will be useful, but
  14. WITHOUT ANY WARRANTY; without even the implied warranty of
  15. MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
  16. General Public License for more details.
  17. You should have received a copy of the GNU General Public License
  18. along with this program; if not, write to the Free Software
  19. Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
  20. 02111-1307, USA.
  21. The GNU General Public License is contained in the file COPYING.
  22. */
  23. #ifndef __VKI_SCNUMS_DARWIN_H
  24. #define __VKI_SCNUMS_DARWIN_H
  25. // need DARWIN_10_x definitions
  26. #include "config.h"
  27. // osfmk/mach/i386/syscall_sw.h
  28. // There are two syscall number encodings in Darwin.
  29. //
  30. // The 64-bit encoding is that the top 8-bits are the syscall class. The low
  31. // 24 are the syscall number (index) within that class.
  32. //
  33. // The 32-bit encoding is that the syscall number (index) is stored as-is and
  34. // the syscall class is encoded as the argument to the 'int' instruction used
  35. // to trigger the syscall:
  36. // - 0x80: Unix
  37. // - 0x81: Mach
  38. // - 0x82: Machine-dependent
  39. // - 0x83: Diagnostic
  40. // Furthermore, just to make life interesting, for Mach traps the number is
  41. // negative.
  42. //
  43. // Within Valgrind we only use the 64-bit encoding -- on 32-bit systems, we
  44. // convert any syscall number to 64-bit encoding when we receive it, and
  45. // convert back with VG_DARWIN_SYSNO_FOR_KERNEL when passing any syscall
  46. // number back to the kernel (__NR_something shouldn't be passed directly to
  47. // the kernel).
  48. //
  49. // Hack: x86 `int $0x80` (unix, 64-bit result) are special.
  50. // [I haven't worked out why... --njn]
  51. #define VG_DARWIN_SYSCALL_CLASS_SHIFT 24
  52. #define VG_DARWIN_SYSCALL_CLASS_MASK (0xFF << VG_DARWIN_SYSCALL_CLASS_SHIFT)
  53. #define VG_DARWIN_SYSCALL_NUMBER_MASK (~VG_DARWIN_SYSCALL_CLASS_MASK)
  54. #define VG_DARWIN_SYSCALL_CLASS_NONE 0 /* Invalid */
  55. #define VG_DARWIN_SYSCALL_CLASS_MACH 1 /* Mach */
  56. #define VG_DARWIN_SYSCALL_CLASS_UNIX 2 /* Unix/BSD */
  57. #define VG_DARWIN_SYSCALL_CLASS_MDEP 3 /* Machine-dependent */
  58. #define VG_DARWIN_SYSCALL_CLASS_DIAG 4 /* Diagnostics */
  59. // Macros for encoding syscall numbers in the 64-bit encoding scheme.
  60. #define VG_DARWIN_SYSCALL_CONSTRUCT_MACH(syscall_number) \
  61. ((VG_DARWIN_SYSCALL_CLASS_MACH << VG_DARWIN_SYSCALL_CLASS_SHIFT) | \
  62. (VG_DARWIN_SYSCALL_NUMBER_MASK & (syscall_number)))
  63. #define VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(syscall_number) \
  64. ((VG_DARWIN_SYSCALL_CLASS_UNIX << VG_DARWIN_SYSCALL_CLASS_SHIFT) | \
  65. (VG_DARWIN_SYSCALL_NUMBER_MASK & (syscall_number)))
  66. #define VG_DARWIN_SYSCALL_CONSTRUCT_MDEP(syscall_number) \
  67. ((VG_DARWIN_SYSCALL_CLASS_MDEP << VG_DARWIN_SYSCALL_CLASS_SHIFT) | \
  68. (VG_DARWIN_SYSCALL_NUMBER_MASK & (syscall_number)))
  69. #define VG_DARWIN_SYSCALL_CONSTRUCT_DIAG(syscall_number) \
  70. ((VG_DARWIN_SYSCALL_CLASS_DIAG << VG_DARWIN_SYSCALL_CLASS_SHIFT) | \
  71. (VG_DARWIN_SYSCALL_NUMBER_MASK & (syscall_number)))
  72. /* Macros for decoding syscall numbers from the 64-bit encoding scheme. */
  73. #define VG_DARWIN_SYSNO_INDEX(sysno) ((sysno) & VG_DARWIN_SYSCALL_NUMBER_MASK)
  74. #define VG_DARWIN_SYSNO_CLASS(sysno) ((sysno) >> VG_DARWIN_SYSCALL_CLASS_SHIFT)
  75. /* Macros for converting syscall numbers to the form expected by the kernel.*/
  76. #if defined(VGA_x86)
  77. // This converts the 64-bit syscall number encoding, which we use
  78. // throughout Valgrind, into the 32-bit syscall number encoding, which is
  79. // suitable for passing to the (32-bit) kernel.
  80. # define VG_DARWIN_SYSNO_FOR_KERNEL(sysno) \
  81. ((VG_DARWIN_SYSNO_CLASS(sysno) == VG_DARWIN_SYSCALL_CLASS_MACH) \
  82. ? -VG_DARWIN_SYSNO_INDEX(sysno) \
  83. : VG_DARWIN_SYSNO_INDEX(sysno) \
  84. )
  85. #elif defined(VGA_amd64)
  86. // For 64-bit systems, we don't need to do anything to the syscall number.
  87. # define VG_DARWIN_SYSNO_FOR_KERNEL(sysno) (sysno)
  88. #else
  89. # error Unknown architecture
  90. #endif
  91. // mdep syscalls
  92. #if defined(VGA_x86)
  93. // osfmk/i386/machdep_call.c
  94. // DDD: the last two are BSD_CALL instead of CALL...
  95. //#define __NR_thread_get_cthread_self VG_DARWIN_SYSCALL_CONSTRUCT_MDEP(0)
  96. //#define __NR_thread_set_cthread_self VG_DARWIN_SYSCALL_CONSTRUCT_MDEP(1)
  97. // 2 is invalid
  98. #define __NR_thread_fast_set_cthread_self VG_DARWIN_SYSCALL_CONSTRUCT_MDEP(3)
  99. //#define __NR_thread_set_user_ldt VG_DARWIN_SYSCALL_CONSTRUCT_MDEP(4)
  100. //#define __NR_i386_set_ldt VG_DARWIN_SYSCALL_CONSTRUCT_MDEP(5)
  101. //#define __NR_i386_get_ldt VG_DARWIN_SYSCALL_CONSTRUCT_MDEP(6)
  102. #elif defined(VGA_amd64)
  103. // osfmk/i386/machdep_call.c
  104. // 0, 1, 2 are invalid
  105. #define __NR_thread_fast_set_cthread_self VG_DARWIN_SYSCALL_CONSTRUCT_MDEP(3)
  106. // 4, 5, 6 are invalid
  107. #else
  108. # error unknown architecture
  109. #endif
  110. // osfmk/mach/syscall_sw.h
  111. #define __NR_kernelrpc_mach_vm_allocate_trap VG_DARWIN_SYSCALL_CONSTRUCT_MACH(10)
  112. #define __NR_kernelrpc_mach_vm_deallocate_trap VG_DARWIN_SYSCALL_CONSTRUCT_MACH(12)
  113. #define __NR_kernelrpc_mach_vm_protect_trap VG_DARWIN_SYSCALL_CONSTRUCT_MACH(14)
  114. #define __NR_kernelrpc_mach_vm_map_trap VG_DARWIN_SYSCALL_CONSTRUCT_MACH(15)
  115. #define __NR_kernelrpc_mach_port_allocate_trap VG_DARWIN_SYSCALL_CONSTRUCT_MACH(16)
  116. #define __NR_kernelrpc_mach_port_destroy_trap VG_DARWIN_SYSCALL_CONSTRUCT_MACH(17)
  117. #define __NR_kernelrpc_mach_port_deallocate_trap VG_DARWIN_SYSCALL_CONSTRUCT_MACH(18)
  118. #define __NR_kernelrpc_mach_port_mod_refs_trap VG_DARWIN_SYSCALL_CONSTRUCT_MACH(19)
  119. #define __NR_kernelrpc_mach_port_move_member_trap VG_DARWIN_SYSCALL_CONSTRUCT_MACH(20)
  120. #define __NR_kernelrpc_mach_port_insert_right_trap VG_DARWIN_SYSCALL_CONSTRUCT_MACH(21)
  121. #define __NR_kernelrpc_mach_port_insert_member_trap VG_DARWIN_SYSCALL_CONSTRUCT_MACH(22)
  122. #define __NR_kernelrpc_mach_port_extract_member_trap VG_DARWIN_SYSCALL_CONSTRUCT_MACH(23)
  123. #define __NR_kernelrpc_mach_port_construct_trap VG_DARWIN_SYSCALL_CONSTRUCT_MACH(24)
  124. #define __NR_kernelrpc_mach_port_destruct_trap VG_DARWIN_SYSCALL_CONSTRUCT_MACH(25)
  125. #define __NR_mach_reply_port VG_DARWIN_SYSCALL_CONSTRUCT_MACH(26)
  126. #define __NR_thread_self_trap VG_DARWIN_SYSCALL_CONSTRUCT_MACH(27)
  127. #define __NR_task_self_trap VG_DARWIN_SYSCALL_CONSTRUCT_MACH(28)
  128. #define __NR_host_self_trap VG_DARWIN_SYSCALL_CONSTRUCT_MACH(29)
  129. #define __NR_mach_msg_trap VG_DARWIN_SYSCALL_CONSTRUCT_MACH(31)
  130. #define __NR_mach_msg_overwrite_trap VG_DARWIN_SYSCALL_CONSTRUCT_MACH(32)
  131. #define __NR_semaphore_signal_trap VG_DARWIN_SYSCALL_CONSTRUCT_MACH(33)
  132. #define __NR_semaphore_signal_all_trap VG_DARWIN_SYSCALL_CONSTRUCT_MACH(34)
  133. #define __NR_semaphore_signal_thread_trap VG_DARWIN_SYSCALL_CONSTRUCT_MACH(35)
  134. #define __NR_semaphore_wait_trap VG_DARWIN_SYSCALL_CONSTRUCT_MACH(36)
  135. #define __NR_semaphore_wait_signal_trap VG_DARWIN_SYSCALL_CONSTRUCT_MACH(37)
  136. #define __NR_semaphore_timedwait_trap VG_DARWIN_SYSCALL_CONSTRUCT_MACH(38)
  137. #define __NR_semaphore_timedwait_signal_trap VG_DARWIN_SYSCALL_CONSTRUCT_MACH(39)
  138. #if DARWIN_VERS >= DARWIN_10_9
  139. #define __NR_kernelrpc_mach_port_guard_trap VG_DARWIN_SYSCALL_CONSTRUCT_MACH(41)
  140. #define __NR_kernelrpc_mach_port_unguard_trap VG_DARWIN_SYSCALL_CONSTRUCT_MACH(42)
  141. #endif
  142. #if DARWIN_VERS >= DARWIN_10_12
  143. #define __NR_mach_generate_activity_id VG_DARWIN_SYSCALL_CONSTRUCT_MACH(43)
  144. #elif defined(VGA_x86) || DARWIN_VERS == DARWIN_10_9
  145. #define __NR_map_fd VG_DARWIN_SYSCALL_CONSTRUCT_MACH(43)
  146. #endif
  147. #define __NR_task_name_for_pid VG_DARWIN_SYSCALL_CONSTRUCT_MACH(44)
  148. #define __NR_task_for_pid VG_DARWIN_SYSCALL_CONSTRUCT_MACH(45)
  149. #define __NR_pid_for_task VG_DARWIN_SYSCALL_CONSTRUCT_MACH(46)
  150. #if defined(VGA_x86)
  151. #define __NR_macx_swapon VG_DARWIN_SYSCALL_CONSTRUCT_MACH(48)
  152. #define __NR_macx_swapoff VG_DARWIN_SYSCALL_CONSTRUCT_MACH(49)
  153. #endif
  154. #if DARWIN_VERS >= DARWIN_10_13
  155. #define __NR_thread_get_special_reply_port VG_DARWIN_SYSCALL_CONSTRUCT_MACH(50)
  156. #endif /* DARWIN_VERS >= DARWIN_10_13 */
  157. #if defined(VGA_x86)
  158. #define __NR_macx_triggers VG_DARWIN_SYSCALL_CONSTRUCT_MACH(51)
  159. #define __NR_macx_backing_store_suspend VG_DARWIN_SYSCALL_CONSTRUCT_MACH(52)
  160. #define __NR_macx_backing_store_recovery VG_DARWIN_SYSCALL_CONSTRUCT_MACH(53)
  161. #endif
  162. #define __NR_swtch_pri VG_DARWIN_SYSCALL_CONSTRUCT_MACH(59)
  163. #define __NR_swtch VG_DARWIN_SYSCALL_CONSTRUCT_MACH(60)
  164. #define __NR_sched_yield __NR_swtch /* linux-alike name */
  165. #define __NR_syscall_thread_switch VG_DARWIN_SYSCALL_CONSTRUCT_MACH(61)
  166. #define __NR_clock_sleep_trap VG_DARWIN_SYSCALL_CONSTRUCT_MACH(62)
  167. #if DARWIN_VERS >= DARWIN_10_12
  168. #define __NR_host_create_mach_voucher_trap VG_DARWIN_SYSCALL_CONSTRUCT_MACH(70)
  169. #endif
  170. #define __NR_mach_timebase_info VG_DARWIN_SYSCALL_CONSTRUCT_MACH(89)
  171. #define __NR_mach_wait_until VG_DARWIN_SYSCALL_CONSTRUCT_MACH(90)
  172. #define __NR_mk_timer_create VG_DARWIN_SYSCALL_CONSTRUCT_MACH(91)
  173. #define __NR_mk_timer_destroy VG_DARWIN_SYSCALL_CONSTRUCT_MACH(92)
  174. #define __NR_mk_timer_arm VG_DARWIN_SYSCALL_CONSTRUCT_MACH(93)
  175. #define __NR_mk_timer_cancel VG_DARWIN_SYSCALL_CONSTRUCT_MACH(94)
  176. #define __NR_iokit_user_client_trap VG_DARWIN_SYSCALL_CONSTRUCT_MACH(100)
  177. // bsd/sys/syscall.h
  178. #define __NR_syscall VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(0)
  179. #define __NR_exit VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(1)
  180. #define __NR_fork VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(2) // was UX64
  181. #define __NR_read VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(3)
  182. #define __NR_write VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(4)
  183. #define __NR_open VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(5)
  184. #define __NR_close VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(6)
  185. #define __NR_wait4 VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(7)
  186. /* 8 old creat */
  187. #define __NR_link VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(9)
  188. #define __NR_unlink VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(10)
  189. /* 11 old execv */
  190. #define __NR_chdir VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(12)
  191. #define __NR_fchdir VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(13)
  192. #define __NR_mknod VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(14)
  193. #define __NR_chmod VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(15)
  194. #define __NR_chown VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(16)
  195. /* 17 old break */
  196. #define __NR_getfsstat VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(18)
  197. /* 19 old lseek */
  198. #define __NR_getpid VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(20)
  199. /* 21 old mount */
  200. /* 22 old umount */
  201. #define __NR_setuid VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(23)
  202. #define __NR_getuid VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(24)
  203. #define __NR_geteuid VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(25)
  204. #define __NR_ptrace VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(26)
  205. #define __NR_recvmsg VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(27)
  206. #define __NR_sendmsg VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(28)
  207. #define __NR_recvfrom VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(29)
  208. #define __NR_accept VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(30)
  209. #define __NR_getpeername VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(31)
  210. #define __NR_getsockname VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(32)
  211. #define __NR_access VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(33)
  212. #define __NR_chflags VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(34)
  213. #define __NR_fchflags VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(35)
  214. #define __NR_sync VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(36)
  215. #define __NR_kill VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(37)
  216. /* 38 old stat */
  217. #define __NR_getppid VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(39)
  218. /* 40 old lstat */
  219. #define __NR_dup VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(41)
  220. #define __NR_pipe VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(42) // was UX64
  221. #define __NR_getegid VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(43)
  222. #define __NR_profil VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(44)
  223. /* 45 old ktrace */
  224. #define __NR_sigaction VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(46)
  225. #define __NR_getgid VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(47)
  226. #define __NR_sigprocmask VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(48)
  227. #define __NR_getlogin VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(49)
  228. #define __NR_setlogin VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(50)
  229. #define __NR_acct VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(51)
  230. #define __NR_sigpending VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(52)
  231. #define __NR_sigaltstack VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(53)
  232. #define __NR_ioctl VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(54)
  233. #define __NR_reboot VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(55)
  234. #define __NR_revoke VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(56)
  235. #define __NR_symlink VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(57)
  236. #define __NR_readlink VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(58)
  237. #define __NR_execve VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(59)
  238. #define __NR_umask VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(60)
  239. #define __NR_chroot VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(61)
  240. /* 62 old fstat */
  241. /* 63 used internally , reserved */
  242. /* 64 old getpagesize */
  243. #define __NR_msync VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(65)
  244. #define __NR_vfork VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(66)
  245. /* 67 old vread */
  246. /* 68 old vwrite */
  247. /* 69 old sbrk */
  248. /* 70 old sstk */
  249. /* 71 old mmap */
  250. /* 72 old vadvise */
  251. #define __NR_munmap VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(73)
  252. #define __NR_mprotect VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(74)
  253. #define __NR_madvise VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(75)
  254. /* 76 old vhangup */
  255. /* 77 old vlimit */
  256. #define __NR_mincore VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(78)
  257. #define __NR_getgroups VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(79)
  258. #define __NR_setgroups VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(80)
  259. #define __NR_getpgrp VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(81)
  260. #define __NR_setpgid VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(82)
  261. #define __NR_setitimer VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(83)
  262. /* 84 old wait */
  263. #define __NR_swapon VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(85)
  264. #define __NR_getitimer VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(86)
  265. /* 87 old gethostname */
  266. /* 88 old sethostname */
  267. #define __NR_getdtablesize VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(89)
  268. #define __NR_dup2 VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(90)
  269. /* 91 old getdopt */
  270. #define __NR_fcntl VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(92)
  271. #define __NR_select VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(93)
  272. /* 94 old setdopt */
  273. #define __NR_fsync VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(95)
  274. #define __NR_setpriority VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(96)
  275. #define __NR_socket VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(97)
  276. #define __NR_connect VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(98)
  277. /* 99 old accept */
  278. #define __NR_getpriority VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(100)
  279. /* 101 old send */
  280. /* 102 old recv */
  281. /* 103 old sigreturn */
  282. #define __NR_bind VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(104)
  283. #define __NR_setsockopt VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(105)
  284. #define __NR_listen VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(106)
  285. /* 107 old vtimes */
  286. /* 108 old sigvec */
  287. /* 109 old sigblock */
  288. /* 110 old sigsetmask */
  289. #define __NR_sigsuspend VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(111)
  290. /* 112 old sigstack */
  291. /* 113 old recvmsg */
  292. /* 114 old sendmsg */
  293. /* 115 old vtrace */
  294. #define __NR_gettimeofday VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(116)
  295. #define __NR_getrusage VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(117)
  296. #define __NR_getsockopt VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(118)
  297. /* 119 old resuba */
  298. #define __NR_readv VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(120)
  299. #define __NR_writev VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(121)
  300. #define __NR_settimeofday VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(122)
  301. #define __NR_fchown VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(123)
  302. #define __NR_fchmod VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(124)
  303. /* 125 old recvfrom */
  304. #define __NR_setreuid VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(126)
  305. #define __NR_setregid VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(127)
  306. #define __NR_rename VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(128)
  307. /* 129 old truncate */
  308. /* 130 old ftruncate */
  309. #define __NR_flock VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(131)
  310. #define __NR_mkfifo VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(132)
  311. #define __NR_sendto VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(133)
  312. #define __NR_shutdown VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(134)
  313. #define __NR_socketpair VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(135)
  314. #define __NR_mkdir VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(136)
  315. #define __NR_rmdir VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(137)
  316. #define __NR_utimes VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(138)
  317. #define __NR_futimes VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(139)
  318. #define __NR_adjtime VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(140)
  319. /* 141 old getpeername */
  320. #define __NR_gethostuuid VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(142)
  321. /* 143 old sethostid */
  322. /* 144 old getrlimit */
  323. /* 145 old setrlimit */
  324. /* 146 old killpg */
  325. #define __NR_setsid VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(147)
  326. /* 148 old setquota */
  327. /* 149 old qquota */
  328. /* 150 old getsockname */
  329. #define __NR_getpgid VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(151)
  330. #define __NR_setprivexec VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(152)
  331. #define __NR_pread VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(153)
  332. #define __NR_pwrite VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(154)
  333. #define __NR_nfssvc VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(155)
  334. /* 156 old getdirentries */
  335. #define __NR_statfs VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(157)
  336. #define __NR_fstatfs VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(158)
  337. #define __NR_unmount VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(159)
  338. /* 160 old async_daemon */
  339. #define __NR_getfh VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(161)
  340. /* 162 old getdomainname */
  341. /* 163 old setdomainname */
  342. /* 164 */
  343. #define __NR_quotactl VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(165)
  344. /* 166 old exportfs */
  345. #define __NR_mount VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(167)
  346. /* 168 old ustat */
  347. #define __NR_csops VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(169)
  348. /* 170 old table */
  349. /* 171 old wait3 */
  350. /* 172 old rpause */
  351. #define __NR_waitid VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(173)
  352. /* 174 old getdents */
  353. /* 175 old gc_control */
  354. #define __NR_add_profil VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(176)
  355. #if DARWIN_VERS >= DARWIN_10_12
  356. #define __NR_kdebug_typefilter VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(177)
  357. #endif /* DARWIN_VERS >= DARWIN_10_12 */
  358. #if DARWIN_VERS >= DARWIN_10_11
  359. #define __NR_kdebug_trace_string VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(178)
  360. #endif /* DARWIN_VERS >= DARWIN_10_11 */
  361. /* 179 */
  362. #define __NR_kdebug_trace VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(180)
  363. #define __NR_setgid VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(181)
  364. #define __NR_setegid VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(182)
  365. #define __NR_seteuid VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(183)
  366. #define __NR_sigreturn VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(184)
  367. #define __NR_chud VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(185)
  368. #if DARWIN_VERS >= DARWIN_10_13
  369. #define __NR_thread_selfcounts VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(186)
  370. #else
  371. /* 186 */
  372. #endif /* DARWIN_VERS >= DARWIN_10_13 */
  373. #if DARWIN_VERS >= DARWIN_10_6
  374. #define __NR_fdatasync VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(187)
  375. #else
  376. /* 187 */
  377. #endif
  378. #define __NR_stat VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(188)
  379. #define __NR_fstat VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(189)
  380. #define __NR_lstat VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(190)
  381. #define __NR_pathconf VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(191)
  382. #define __NR_fpathconf VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(192)
  383. /* 193 */
  384. #define __NR_getrlimit VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(194)
  385. #define __NR_setrlimit VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(195)
  386. #define __NR_getdirentries VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(196)
  387. #define __NR_mmap VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(197)
  388. /* 198 __syscall */
  389. #define __NR_lseek VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(199) // was UX64
  390. #define __NR_truncate VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(200)
  391. #define __NR_ftruncate VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(201)
  392. #define __NR___sysctl VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(202)
  393. #define __NR_mlock VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(203)
  394. #define __NR_munlock VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(204)
  395. #define __NR_undelete VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(205)
  396. #define __NR_ATsocket VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(206)
  397. #define __NR_ATgetmsg VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(207)
  398. #define __NR_ATputmsg VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(208)
  399. #define __NR_ATPsndreq VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(209)
  400. #define __NR_ATPsndrsp VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(210)
  401. #define __NR_ATPgetreq VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(211)
  402. #define __NR_ATPgetrsp VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(212)
  403. /* 213 Reserved for AppleTalk */
  404. #if DARWIN_VERS >= DARWIN_10_6
  405. /* 214 old kqueue_from_portset_np*/
  406. /* 215 old kqueue_portset_np*/
  407. #else
  408. #define __NR_kqueue_from_portset_np VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(214)
  409. #define __NR_kqueue_portset_np VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(215)
  410. #endif
  411. #define __NR_mkcomplex VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(216)
  412. #define __NR_statv VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(217)
  413. #define __NR_lstatv VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(218)
  414. #define __NR_fstatv VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(219)
  415. #define __NR_getattrlist VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(220)
  416. #define __NR_setattrlist VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(221)
  417. #define __NR_getdirentriesattr VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(222)
  418. #define __NR_exchangedata VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(223)
  419. /* 224 old checkuseraccess */
  420. #define __NR_searchfs VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(225)
  421. #define __NR_delete VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(226)
  422. #define __NR_copyfile VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(227)
  423. #if DARWIN_VERS >= DARWIN_10_6
  424. #define __NR_fgetattrlist VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(228)
  425. #define __NR_fsetattrlist VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(229)
  426. #else
  427. /* 228 */
  428. /* 229 */
  429. #endif
  430. #define __NR_poll VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(230)
  431. #define __NR_watchevent VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(231)
  432. #define __NR_waitevent VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(232)
  433. #define __NR_modwatch VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(233)
  434. #define __NR_getxattr VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(234)
  435. #define __NR_fgetxattr VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(235)
  436. #define __NR_setxattr VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(236)
  437. #define __NR_fsetxattr VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(237)
  438. #define __NR_removexattr VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(238)
  439. #define __NR_fremovexattr VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(239)
  440. #define __NR_listxattr VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(240)
  441. #define __NR_flistxattr VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(241)
  442. #define __NR_fsctl VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(242)
  443. #define __NR_initgroups VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(243)
  444. #define __NR_posix_spawn VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(244)
  445. #if DARWIN_VERS >= DARWIN_10_6
  446. #define __NR_ffsctl VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(245)
  447. #else
  448. /* 245 */
  449. #endif
  450. /* 246 */
  451. #define __NR_nfsclnt VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(247)
  452. #define __NR_fhopen VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(248)
  453. /* 249 */
  454. #define __NR_minherit VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(250)
  455. #define __NR_semsys VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(251)
  456. #define __NR_msgsys VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(252)
  457. #define __NR_shmsys VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(253)
  458. #define __NR_semctl VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(254)
  459. #define __NR_semget VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(255)
  460. #define __NR_semop VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(256)
  461. /* 257 */
  462. #define __NR_msgctl VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(258)
  463. #define __NR_msgget VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(259)
  464. #define __NR_msgsnd VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(260)
  465. #define __NR_msgrcv VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(261)
  466. #define __NR_shmat VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(262)
  467. #define __NR_shmctl VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(263)
  468. #define __NR_shmdt VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(264)
  469. #define __NR_shmget VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(265)
  470. #define __NR_shm_open VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(266)
  471. #define __NR_shm_unlink VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(267)
  472. #define __NR_sem_open VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(268)
  473. #define __NR_sem_close VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(269)
  474. #define __NR_sem_unlink VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(270)
  475. #define __NR_sem_wait VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(271)
  476. #define __NR_sem_trywait VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(272)
  477. #define __NR_sem_post VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(273)
  478. #if DARWIN_VERS < DARWIN_10_10
  479. #define __NR_sem_getvalue VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(274)
  480. #elif DARWIN_VERS >= DARWIN_10_10
  481. #define __NR_sysctlbyname VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(274)
  482. #endif
  483. #define __NR_sem_init VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(275)
  484. #define __NR_sem_destroy VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(276)
  485. #define __NR_open_extended VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(277)
  486. #define __NR_umask_extended VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(278)
  487. #define __NR_stat_extended VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(279)
  488. #define __NR_lstat_extended VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(280)
  489. #define __NR_fstat_extended VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(281)
  490. #define __NR_chmod_extended VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(282)
  491. #define __NR_fchmod_extended VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(283)
  492. #define __NR_access_extended VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(284)
  493. #define __NR_settid VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(285)
  494. #define __NR_gettid VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(286)
  495. #define __NR_setsgroups VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(287)
  496. #define __NR_getsgroups VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(288)
  497. #define __NR_setwgroups VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(289)
  498. #define __NR_getwgroups VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(290)
  499. #define __NR_mkfifo_extended VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(291)
  500. #define __NR_mkdir_extended VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(292)
  501. #define __NR_identitysvc VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(293)
  502. #define __NR_shared_region_check_np VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(294)
  503. #define __NR_shared_region_map_np VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(295)
  504. #if DARWIN_VERS >= DARWIN_10_6
  505. #define __NR_vm_pressure_monitor VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(296)
  506. #define __NR_psynch_rw_longrdlock VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(297)
  507. #define __NR_psynch_rw_yieldwrlock VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(298)
  508. #define __NR_psynch_rw_downgrade VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(299)
  509. #define __NR_psynch_rw_upgrade VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(300)
  510. #define __NR_psynch_mutexwait VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(301)
  511. #define __NR_psynch_mutexdrop VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(302)
  512. #define __NR_psynch_cvbroad VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(303)
  513. #define __NR_psynch_cvsignal VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(304)
  514. #define __NR_psynch_cvwait VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(305)
  515. #define __NR_psynch_rw_rdlock VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(306)
  516. #define __NR_psynch_rw_wrlock VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(307)
  517. #define __NR_psynch_rw_unlock VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(308)
  518. #define __NR_psynch_rw_unlock2 VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(309)
  519. #else
  520. /* 296 old load_shared_file */
  521. /* 297 old reset_shared_file */
  522. /* 298 old new_system_shared_regions */
  523. /* 299 old shared_region_map_file_np */
  524. /* 300 old shared_region_make_private_np */
  525. #define __NR___pthread_mutex_destroy VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(301)
  526. #define __NR___pthread_mutex_init VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(302)
  527. #define __NR___pthread_mutex_lock VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(303)
  528. #define __NR___pthread_mutex_trylock VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(304)
  529. #define __NR___pthread_mutex_unlock VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(305)
  530. #define __NR___pthread_cond_init VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(306)
  531. #define __NR___pthread_cond_destroy VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(307)
  532. #define __NR___pthread_cond_broadcast VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(308)
  533. #define __NR___pthread_cond_signal VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(309)
  534. #endif
  535. #define __NR_getsid VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(310)
  536. #define __NR_settid_with_pid VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(311)
  537. #if DARWIN_VERS >= DARWIN_10_7
  538. #define __NR_psynch_cvclrprepost VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(312)
  539. #else
  540. #define __NR___pthread_cond_timedwait VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(312)
  541. #endif
  542. #define __NR_aio_fsync VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(313)
  543. #define __NR_aio_return VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(314)
  544. #define __NR_aio_suspend VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(315)
  545. #define __NR_aio_cancel VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(316)
  546. #define __NR_aio_error VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(317)
  547. #define __NR_aio_read VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(318)
  548. #define __NR_aio_write VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(319)
  549. #define __NR_lio_listio VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(320)
  550. /* 321 */
  551. #define __NR_iopolicysys VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(322)
  552. #define __NR_process_policy VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(323)
  553. #define __NR_mlockall VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(324)
  554. #define __NR_munlockall VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(325)
  555. /* 326 */
  556. #define __NR_issetugid VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(327)
  557. #define __NR___pthread_kill VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(328)
  558. #define __NR___pthread_sigmask VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(329)
  559. #define __NR___sigwait VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(330)
  560. #define __NR___disable_threadsignal VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(331)
  561. #define __NR___pthread_markcancel VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(332)
  562. #define __NR___pthread_canceled VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(333)
  563. #define __NR___semwait_signal VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(334)
  564. /* 335 old utrace */
  565. #define __NR_proc_info VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(336)
  566. #define __NR_sendfile VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(337)
  567. #define __NR_stat64 VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(338)
  568. #define __NR_fstat64 VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(339)
  569. #define __NR_lstat64 VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(340)
  570. #define __NR_stat64_extended VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(341)
  571. #define __NR_lstat64_extended VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(342)
  572. #define __NR_fstat64_extended VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(343)
  573. #define __NR_getdirentries64 VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(344)
  574. #define __NR_statfs64 VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(345)
  575. #define __NR_fstatfs64 VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(346)
  576. #define __NR_getfsstat64 VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(347)
  577. #define __NR___pthread_chdir VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(348)
  578. #define __NR___pthread_fchdir VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(349)
  579. #define __NR_audit VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(350)
  580. #define __NR_auditon VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(351)
  581. /* 352 */
  582. #define __NR_getauid VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(353)
  583. #define __NR_setauid VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(354)
  584. #define __NR_getaudit VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(355)
  585. #define __NR_setaudit VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(356)
  586. #define __NR_getaudit_addr VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(357)
  587. #define __NR_setaudit_addr VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(358)
  588. #define __NR_auditctl VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(359)
  589. #define __NR_bsdthread_create VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(360)
  590. #define __NR_bsdthread_terminate VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(361)
  591. #define __NR_kqueue VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(362)
  592. #define __NR_kevent VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(363)
  593. #define __NR_lchown VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(364)
  594. #define __NR_stack_snapshot VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(365)
  595. #define __NR_bsdthread_register VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(366)
  596. #define __NR_workq_open VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(367)
  597. #define __NR_workq_ops VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(368)
  598. #if DARWIN_VERS >= DARWIN_10_6
  599. #define __NR_kevent64 VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(369)
  600. #else
  601. /* 369 */
  602. #endif
  603. /* 370 */
  604. /* 371 */
  605. #if DARWIN_VERS >= DARWIN_10_6
  606. #define __NR___thread_selfid VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(372) // was UX64
  607. #else
  608. /* 372 */
  609. #endif
  610. /* 373 */
  611. #if DARWIN_VERS >= DARWIN_10_11
  612. #define __NR_kevent_qos VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(374)
  613. #endif /* DARWIN_VERS >= DARWIN_10_11 */
  614. #if DARWIN_VERS >= DARWIN_10_13
  615. #define __NR_kevent_id VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(375)
  616. #else
  617. /* 375 */
  618. #endif /* DARWIN_VERS >= DARWIN_10_13 */
  619. /* 376 */
  620. /* 377 */
  621. /* 378 */
  622. /* 379 */
  623. #define __NR___mac_execve VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(380)
  624. #define __NR___mac_syscall VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(381)
  625. #define __NR___mac_get_file VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(382)
  626. #define __NR___mac_set_file VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(383)
  627. #define __NR___mac_get_link VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(384)
  628. #define __NR___mac_set_link VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(385)
  629. #define __NR___mac_get_proc VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(386)
  630. #define __NR___mac_set_proc VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(387)
  631. #define __NR___mac_get_fd VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(388)
  632. #define __NR___mac_set_fd VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(389)
  633. #define __NR___mac_get_pid VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(390)
  634. #define __NR___mac_get_lcid VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(391)
  635. #define __NR___mac_get_lctx VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(392)
  636. #define __NR___mac_set_lctx VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(393)
  637. #if DARWIN_VERS >= DARWIN_10_11
  638. #define __NR_pselect VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(394)
  639. #else
  640. #define __NR_setlcid VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(394)
  641. #endif /* DARWIN_VERS >= DARWIN_10_11 */
  642. #define __NR_getlcid VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(395)
  643. #define __NR_read_nocancel VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(396)
  644. #define __NR_write_nocancel VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(397)
  645. #define __NR_open_nocancel VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(398)
  646. #define __NR_close_nocancel VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(399)
  647. #define __NR_wait4_nocancel VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(400)
  648. #define __NR_recvmsg_nocancel VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(401)
  649. #define __NR_sendmsg_nocancel VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(402)
  650. #define __NR_recvfrom_nocancel VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(403)
  651. #define __NR_accept_nocancel VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(404)
  652. #define __NR_msync_nocancel VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(405)
  653. #define __NR_fcntl_nocancel VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(406)
  654. #define __NR_select_nocancel VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(407)
  655. #define __NR_fsync_nocancel VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(408)
  656. #define __NR_connect_nocancel VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(409)
  657. #define __NR_sigsuspend_nocancel VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(410)
  658. #define __NR_readv_nocancel VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(411)
  659. #define __NR_writev_nocancel VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(412)
  660. #define __NR_sendto_nocancel VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(413)
  661. #define __NR_pread_nocancel VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(414)
  662. #define __NR_pwrite_nocancel VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(415)
  663. #define __NR_waitid_nocancel VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(416)
  664. #define __NR_poll_nocancel VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(417)
  665. #define __NR_msgsnd_nocancel VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(418)
  666. #define __NR_msgrcv_nocancel VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(419)
  667. #define __NR_sem_wait_nocancel VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(420)
  668. #define __NR_aio_suspend_nocancel VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(421)
  669. #define __NR___sigwait_nocancel VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(422)
  670. #define __NR___semwait_signal_nocancel VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(423)
  671. #define __NR___mac_mount VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(424)
  672. #define __NR___mac_get_mount VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(425)
  673. #define __NR___mac_getfsstat VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(426)
  674. #if DARWIN_VERS >= DARWIN_10_6
  675. #define __NR_fsgetpath VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(427)
  676. #define __NR_audit_session_self VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(428)
  677. #define __NR_audit_session_join VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(429)
  678. #endif /* DARWIN_VERS >= DARWIN_10_6 */
  679. #if DARWIN_VERS >= DARWIN_10_9
  680. #define __NR_fileport_makeport VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(430)
  681. #define __NR_fileport_makefd VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(431)
  682. #define __NR_audit_session_port VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(432)
  683. #define __NR_pid_suspend VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(433)
  684. #define __NR_pid_resume VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(434)
  685. /* 435 */
  686. /* 436 */
  687. /* 437 */
  688. #define __NR_shared_region_map_and_slide_np VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(438)
  689. #define __NR_kas_info VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(439)
  690. #define __NR_memorystatus_control VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(440)
  691. #define __NR_guarded_open_np VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(441)
  692. #define __NR_guarded_close_np VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(442)
  693. #define __NR_guarded_kqueue_np VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(443)
  694. #define __NR_change_fdguard_np VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(444)
  695. /* 445 */
  696. #define __NR_proc_rlimit_control VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(446)
  697. #define __NR_connectx VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(447)
  698. #define __NR_disconnectx VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(448)
  699. #define __NR_peeloff VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(449)
  700. #define __NR_socket_delegate VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(450)
  701. #define __NR_telemetry VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(451)
  702. #define __NR_proc_uuid_policy VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(452)
  703. #define __NR_memorystatus_get_level VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(453)
  704. #define __NR_system_override VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(454)
  705. #define __NR_vfs_purge VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(455)
  706. #endif /* DARWIN_VERS >= DARWIN_10_9 */
  707. #if DARWIN_VERS >= DARWIN_10_10
  708. #define __NR_necp_match_policy VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(460)
  709. #define __NR_getattrlistbulk VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(461)
  710. #endif /* DARWIN_VERS >= DARWIN_10_10 */
  711. #if DARWIN_VERS >= DARWIN_10_12
  712. #define __NR_clonefileat VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(462)
  713. #endif /* DARWIN_VERS >= DARWIN_10_12 */
  714. #if DARWIN_VERS >= DARWIN_10_10
  715. #define __NR_faccessat VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(466)
  716. #define __NR_fstatat64 VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(470)
  717. #define __NR_readlinkat VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(473)
  718. #define __NR_bsdthread_ctl VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(478)
  719. #define __NR_csrctl VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(483)
  720. #define __NR_guarded_open_dprotected_np VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(484)
  721. #define __NR_guarded_write_np VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(485)
  722. #define __NR_guarded_pwrite_np VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(486)
  723. #define __NR_guarded_writev_np VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(487)
  724. #endif /* DARWIN_VERS >= DARWIN_10_10 */
  725. #if DARWIN_VERS >= DARWIN_10_12
  726. #define __NR_renameatx_np VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(488)
  727. #endif /* DARWIN_VERS >= DARWIN_10_12 */
  728. /* 489 */
  729. #if DARWIN_VERS >= DARWIN_10_11
  730. #define __NR_netagent_trigger VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(490)
  731. #define __NR_stack_snapshot_with_config VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(491)
  732. #define __NR_microstackshot VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(492)
  733. #define __NR_grab_pgo_data VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(493)
  734. #define __NR_persona VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(494)
  735. /* 495 */
  736. /* 496 */
  737. /* 497 */
  738. /* 498 */
  739. #define __NR_work_interval_ctl VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(499)
  740. #endif /* DARWIN_VERS >= DARWIN_10_11 */
  741. #if DARWIN_VERS >= DARWIN_10_12
  742. #define __NR_getentropy VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(500)
  743. #define __NR_necp_open VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(501)
  744. #define __NR_necp_client_action VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(502)
  745. /* 503 */
  746. /* 504 */
  747. /* 505 */
  748. /* 506 */
  749. /* 507 */
  750. /* 508 */
  751. /* 509 */
  752. /* 510 */
  753. /* 511 */
  754. /* 512 */
  755. /* 513 */
  756. /* 514 */
  757. #define __NR_ulock_wait VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(515)
  758. #define __NR_ulock_wake VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(516)
  759. #define __NR_fclonefileat VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(517)
  760. #define __NR_fs_snapshot VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(518)
  761. /* 519 */
  762. #define __NR_terminate_with_payload VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(520)
  763. #define __NR_abort_with_payload VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(521)
  764. #endif /* DARWIN_VERS >= DARWIN_10_12 */
  765. #if DARWIN_VERS >= DARWIN_10_13
  766. #define __NR_necp_session_open VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(522)
  767. #define __NR_necp_session_action VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(523)
  768. #define __NR_setattrlistat VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(524)
  769. #define __NR_net_qos_guideline VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(525)
  770. #define __NR_fmount VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(526)
  771. #define __NR_ntp_adjtime VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(527)
  772. #define __NR_ntp_gettime VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(528)
  773. #define __NR_os_fault_with_payload VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(529)
  774. #endif /* DARWIN_VERS >= DARWIN_10_13 */
  775. #if DARWIN_VERS < DARWIN_10_6
  776. #define __NR_MAXSYSCALL VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(427)
  777. #elif DARWIN_VERS < DARWIN_10_7
  778. #define __NR_MAXSYSCALL VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(430)
  779. #elif DARWIN_VERS < DARWIN_10_9
  780. #define __NR_MAXSYSCALL VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(430)
  781. #elif DARWIN_VERS == DARWIN_10_9
  782. #define __NR_MAXSYSCALL VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(456)
  783. #elif DARWIN_VERS == DARWIN_10_10
  784. #define __NR_MAXSYSCALL VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(490)
  785. #elif DARWIN_VERS == DARWIN_10_11
  786. #define __NR_MAXSYSCALL VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(500)
  787. #elif DARWIN_VERS == DARWIN_10_12
  788. #define __NR_MAXSYSCALL VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(522)
  789. #elif DARWIN_VERS == DARWIN_10_13
  790. #define __NR_MAXSYSCALL VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(530)
  791. #else
  792. #error unknown darwin version
  793. #endif
  794. #define __NR_DARWIN_FAKE_SIGRETURN (1 + __NR_MAXSYSCALL)
  795. #endif