Files
Odin/core/sys/linux/syscall_amd64.odin

374 lines
16 KiB
Odin

#+build amd64
package linux
// AMD64 uses the new way to define syscalls, i.e. one that
// is different from the other architectures. Instead of using
// a .tbl file, they define constants to tell which syscalls they
// want and then include a generic unistd.h file.
SYS_read :: uintptr(0)
SYS_write :: uintptr(1)
SYS_open :: uintptr(2)
SYS_close :: uintptr(3)
SYS_stat :: uintptr(4)
SYS_fstat :: uintptr(5)
SYS_lstat :: uintptr(6)
SYS_poll :: uintptr(7)
SYS_lseek :: uintptr(8)
SYS_mmap :: uintptr(9)
SYS_mprotect :: uintptr(10)
SYS_munmap :: uintptr(11)
SYS_brk :: uintptr(12)
SYS_rt_sigaction :: uintptr(13)
SYS_rt_sigprocmask :: uintptr(14)
SYS_rt_sigreturn :: uintptr(15)
SYS_ioctl :: uintptr(16)
SYS_pread64 :: uintptr(17)
SYS_pwrite64 :: uintptr(18)
SYS_readv :: uintptr(19)
SYS_writev :: uintptr(20)
SYS_access :: uintptr(21)
SYS_pipe :: uintptr(22)
SYS_select :: uintptr(23)
SYS_sched_yield :: uintptr(24)
SYS_mremap :: uintptr(25)
SYS_msync :: uintptr(26)
SYS_mincore :: uintptr(27)
SYS_madvise :: uintptr(28)
SYS_shmget :: uintptr(29)
SYS_shmat :: uintptr(30)
SYS_shmctl :: uintptr(31)
SYS_dup :: uintptr(32)
SYS_dup2 :: uintptr(33)
SYS_pause :: uintptr(34)
SYS_nanosleep :: uintptr(35)
SYS_getitimer :: uintptr(36)
SYS_alarm :: uintptr(37)
SYS_setitimer :: uintptr(38)
SYS_getpid :: uintptr(39)
SYS_sendfile :: uintptr(40)
SYS_socket :: uintptr(41)
SYS_connect :: uintptr(42)
SYS_accept :: uintptr(43)
SYS_sendto :: uintptr(44)
SYS_recvfrom :: uintptr(45)
SYS_sendmsg :: uintptr(46)
SYS_recvmsg :: uintptr(47)
SYS_shutdown :: uintptr(48)
SYS_bind :: uintptr(49)
SYS_listen :: uintptr(50)
SYS_getsockname :: uintptr(51)
SYS_getpeername :: uintptr(52)
SYS_socketpair :: uintptr(53)
SYS_setsockopt :: uintptr(54)
SYS_getsockopt :: uintptr(55)
SYS_clone :: uintptr(56)
SYS_fork :: uintptr(57)
SYS_vfork :: uintptr(58)
SYS_execve :: uintptr(59)
SYS_exit :: uintptr(60)
SYS_wait4 :: uintptr(61)
SYS_kill :: uintptr(62)
SYS_uname :: uintptr(63)
SYS_semget :: uintptr(64)
SYS_semop :: uintptr(65)
SYS_semctl :: uintptr(66)
SYS_shmdt :: uintptr(67)
SYS_msgget :: uintptr(68)
SYS_msgsnd :: uintptr(69)
SYS_msgrcv :: uintptr(70)
SYS_msgctl :: uintptr(71)
SYS_fcntl :: uintptr(72)
SYS_flock :: uintptr(73)
SYS_fsync :: uintptr(74)
SYS_fdatasync :: uintptr(75)
SYS_truncate :: uintptr(76)
SYS_ftruncate :: uintptr(77)
SYS_getdents :: uintptr(78)
SYS_getcwd :: uintptr(79)
SYS_chdir :: uintptr(80)
SYS_fchdir :: uintptr(81)
SYS_rename :: uintptr(82)
SYS_mkdir :: uintptr(83)
SYS_rmdir :: uintptr(84)
SYS_creat :: uintptr(85)
SYS_link :: uintptr(86)
SYS_unlink :: uintptr(87)
SYS_symlink :: uintptr(88)
SYS_readlink :: uintptr(89)
SYS_chmod :: uintptr(90)
SYS_fchmod :: uintptr(91)
SYS_chown :: uintptr(92)
SYS_fchown :: uintptr(93)
SYS_lchown :: uintptr(94)
SYS_umask :: uintptr(95)
SYS_gettimeofday :: uintptr(96)
SYS_getrlimit :: uintptr(97)
SYS_getrusage :: uintptr(98)
SYS_sysinfo :: uintptr(99)
SYS_times :: uintptr(100)
SYS_ptrace :: uintptr(101)
SYS_getuid :: uintptr(102)
SYS_syslog :: uintptr(103)
SYS_getgid :: uintptr(104)
SYS_setuid :: uintptr(105)
SYS_setgid :: uintptr(106)
SYS_geteuid :: uintptr(107)
SYS_getegid :: uintptr(108)
SYS_setpgid :: uintptr(109)
SYS_getppid :: uintptr(110)
SYS_getpgrp :: uintptr(111)
SYS_setsid :: uintptr(112)
SYS_setreuid :: uintptr(113)
SYS_setregid :: uintptr(114)
SYS_getgroups :: uintptr(115)
SYS_setgroups :: uintptr(116)
SYS_setresuid :: uintptr(117)
SYS_getresuid :: uintptr(118)
SYS_setresgid :: uintptr(119)
SYS_getresgid :: uintptr(120)
SYS_getpgid :: uintptr(121)
SYS_setfsuid :: uintptr(122)
SYS_setfsgid :: uintptr(123)
SYS_getsid :: uintptr(124)
SYS_capget :: uintptr(125)
SYS_capset :: uintptr(126)
SYS_rt_sigpending :: uintptr(127)
SYS_rt_sigtimedwait :: uintptr(128)
SYS_rt_sigqueueinfo :: uintptr(129)
SYS_rt_sigsuspend :: uintptr(130)
SYS_sigaltstack :: uintptr(131)
SYS_utime :: uintptr(132)
SYS_mknod :: uintptr(133)
SYS_uselib :: uintptr(134)
SYS_personality :: uintptr(135)
SYS_ustat :: uintptr(136)
SYS_statfs :: uintptr(137)
SYS_fstatfs :: uintptr(138)
SYS_sysfs :: uintptr(139)
SYS_getpriority :: uintptr(140)
SYS_setpriority :: uintptr(141)
SYS_sched_setparam :: uintptr(142)
SYS_sched_getparam :: uintptr(143)
SYS_sched_setscheduler :: uintptr(144)
SYS_sched_getscheduler :: uintptr(145)
SYS_sched_get_priority_max :: uintptr(146)
SYS_sched_get_priority_min :: uintptr(147)
SYS_sched_rr_get_interval :: uintptr(148)
SYS_mlock :: uintptr(149)
SYS_munlock :: uintptr(150)
SYS_mlockall :: uintptr(151)
SYS_munlockall :: uintptr(152)
SYS_vhangup :: uintptr(153)
SYS_modify_ldt :: uintptr(154)
SYS_pivot_root :: uintptr(155)
SYS__sysctl :: uintptr(156)
SYS_prctl :: uintptr(157)
SYS_arch_prctl :: uintptr(158)
SYS_adjtimex :: uintptr(159)
SYS_setrlimit :: uintptr(160)
SYS_chroot :: uintptr(161)
SYS_sync :: uintptr(162)
SYS_acct :: uintptr(163)
SYS_settimeofday :: uintptr(164)
SYS_mount :: uintptr(165)
SYS_umount2 :: uintptr(166)
SYS_swapon :: uintptr(167)
SYS_swapoff :: uintptr(168)
SYS_reboot :: uintptr(169)
SYS_sethostname :: uintptr(170)
SYS_setdomainname :: uintptr(171)
SYS_iopl :: uintptr(172)
SYS_ioperm :: uintptr(173)
SYS_create_module :: uintptr(174)
SYS_init_module :: uintptr(175)
SYS_delete_module :: uintptr(176)
SYS_get_kernel_syms :: uintptr(177)
SYS_query_module :: uintptr(178)
SYS_quotactl :: uintptr(179)
SYS_nfsservctl :: uintptr(180)
SYS_getpmsg :: uintptr(181)
SYS_putpmsg :: uintptr(182)
SYS_afs_syscall :: uintptr(183)
SYS_tuxcall :: uintptr(184)
SYS_security :: uintptr(185)
SYS_gettid :: uintptr(186)
SYS_readahead :: uintptr(187)
SYS_setxattr :: uintptr(188)
SYS_lsetxattr :: uintptr(189)
SYS_fsetxattr :: uintptr(190)
SYS_getxattr :: uintptr(191)
SYS_lgetxattr :: uintptr(192)
SYS_fgetxattr :: uintptr(193)
SYS_listxattr :: uintptr(194)
SYS_llistxattr :: uintptr(195)
SYS_flistxattr :: uintptr(196)
SYS_removexattr :: uintptr(197)
SYS_lremovexattr :: uintptr(198)
SYS_fremovexattr :: uintptr(199)
SYS_tkill :: uintptr(200)
SYS_time :: uintptr(201)
SYS_futex :: uintptr(202)
SYS_sched_setaffinity :: uintptr(203)
SYS_sched_getaffinity :: uintptr(204)
SYS_set_thread_area :: uintptr(205)
SYS_io_setup :: uintptr(206)
SYS_io_destroy :: uintptr(207)
SYS_io_getevents :: uintptr(208)
SYS_io_submit :: uintptr(209)
SYS_io_cancel :: uintptr(210)
SYS_get_thread_area :: uintptr(211)
SYS_lookup_dcookie :: uintptr(212)
SYS_epoll_create :: uintptr(213)
SYS_epoll_ctl_old :: uintptr(214)
SYS_epoll_wait_old :: uintptr(215)
SYS_remap_file_pages :: uintptr(216)
SYS_getdents64 :: uintptr(217)
SYS_set_tid_address :: uintptr(218)
SYS_restart_syscall :: uintptr(219)
SYS_semtimedop :: uintptr(220)
SYS_fadvise64 :: uintptr(221)
SYS_timer_create :: uintptr(222)
SYS_timer_settime :: uintptr(223)
SYS_timer_gettime :: uintptr(224)
SYS_timer_getoverrun :: uintptr(225)
SYS_timer_delete :: uintptr(226)
SYS_clock_settime :: uintptr(227)
SYS_clock_gettime :: uintptr(228)
SYS_clock_getres :: uintptr(229)
SYS_clock_nanosleep :: uintptr(230)
SYS_exit_group :: uintptr(231)
SYS_epoll_wait :: uintptr(232)
SYS_epoll_ctl :: uintptr(233)
SYS_tgkill :: uintptr(234)
SYS_utimes :: uintptr(235)
SYS_vserver :: uintptr(236)
SYS_mbind :: uintptr(237)
SYS_set_mempolicy :: uintptr(238)
SYS_get_mempolicy :: uintptr(239)
SYS_mq_open :: uintptr(240)
SYS_mq_unlink :: uintptr(241)
SYS_mq_timedsend :: uintptr(242)
SYS_mq_timedreceive :: uintptr(243)
SYS_mq_notify :: uintptr(244)
SYS_mq_getsetattr :: uintptr(245)
SYS_kexec_load :: uintptr(246)
SYS_waitid :: uintptr(247)
SYS_add_key :: uintptr(248)
SYS_request_key :: uintptr(249)
SYS_keyctl :: uintptr(250)
SYS_ioprio_set :: uintptr(251)
SYS_ioprio_get :: uintptr(252)
SYS_inotify_init :: uintptr(253)
SYS_inotify_add_watch :: uintptr(254)
SYS_inotify_rm_watch :: uintptr(255)
SYS_migrate_pages :: uintptr(256)
SYS_openat :: uintptr(257)
SYS_mkdirat :: uintptr(258)
SYS_mknodat :: uintptr(259)
SYS_fchownat :: uintptr(260)
SYS_futimesat :: uintptr(261)
SYS_newfstatat :: uintptr(262)
SYS_unlinkat :: uintptr(263)
SYS_renameat :: uintptr(264)
SYS_linkat :: uintptr(265)
SYS_symlinkat :: uintptr(266)
SYS_readlinkat :: uintptr(267)
SYS_fchmodat :: uintptr(268)
SYS_faccessat :: uintptr(269)
SYS_pselect6 :: uintptr(270)
SYS_ppoll :: uintptr(271)
SYS_unshare :: uintptr(272)
SYS_set_robust_list :: uintptr(273)
SYS_get_robust_list :: uintptr(274)
SYS_splice :: uintptr(275)
SYS_tee :: uintptr(276)
SYS_sync_file_range :: uintptr(277)
SYS_vmsplice :: uintptr(278)
SYS_move_pages :: uintptr(279)
SYS_utimensat :: uintptr(280)
SYS_epoll_pwait :: uintptr(281)
SYS_signalfd :: uintptr(282)
SYS_timerfd_create :: uintptr(283)
SYS_eventfd :: uintptr(284)
SYS_fallocate :: uintptr(285)
SYS_timerfd_settime :: uintptr(286)
SYS_timerfd_gettime :: uintptr(287)
SYS_accept4 :: uintptr(288)
SYS_signalfd4 :: uintptr(289)
SYS_eventfd2 :: uintptr(290)
SYS_epoll_create1 :: uintptr(291)
SYS_dup3 :: uintptr(292)
SYS_pipe2 :: uintptr(293)
SYS_inotify_init1 :: uintptr(294)
SYS_preadv :: uintptr(295)
SYS_pwritev :: uintptr(296)
SYS_rt_tgsigqueueinfo :: uintptr(297)
SYS_perf_event_open :: uintptr(298)
SYS_recvmmsg :: uintptr(299)
SYS_fanotify_init :: uintptr(300)
SYS_fanotify_mark :: uintptr(301)
SYS_prlimit64 :: uintptr(302)
SYS_name_to_handle_at :: uintptr(303)
SYS_open_by_handle_at :: uintptr(304)
SYS_clock_adjtime :: uintptr(305)
SYS_syncfs :: uintptr(306)
SYS_sendmmsg :: uintptr(307)
SYS_setns :: uintptr(308)
SYS_getcpu :: uintptr(309)
SYS_process_vm_readv :: uintptr(310)
SYS_process_vm_writev :: uintptr(311)
SYS_kcmp :: uintptr(312)
SYS_finit_module :: uintptr(313)
SYS_sched_setattr :: uintptr(314)
SYS_sched_getattr :: uintptr(315)
SYS_renameat2 :: uintptr(316)
SYS_seccomp :: uintptr(317)
SYS_getrandom :: uintptr(318)
SYS_memfd_create :: uintptr(319)
SYS_kexec_file_load :: uintptr(320)
SYS_bpf :: uintptr(321)
SYS_execveat :: uintptr(322)
SYS_userfaultfd :: uintptr(323)
SYS_membarrier :: uintptr(324)
SYS_mlock2 :: uintptr(325)
SYS_copy_file_range :: uintptr(326)
SYS_preadv2 :: uintptr(327)
SYS_pwritev2 :: uintptr(328)
SYS_pkey_mprotect :: uintptr(329)
SYS_pkey_alloc :: uintptr(330)
SYS_pkey_free :: uintptr(331)
SYS_statx :: uintptr(332)
SYS_io_pgetevents :: uintptr(333)
SYS_rseq :: uintptr(334)
SYS_pidfd_send_signal :: uintptr(424)
SYS_io_uring_setup :: uintptr(425)
SYS_io_uring_enter :: uintptr(426)
SYS_io_uring_register :: uintptr(427)
SYS_open_tree :: uintptr(428)
SYS_move_mount :: uintptr(429)
SYS_fsopen :: uintptr(430)
SYS_fsconfig :: uintptr(431)
SYS_fsmount :: uintptr(432)
SYS_fspick :: uintptr(433)
SYS_pidfd_open :: uintptr(434)
SYS_clone3 :: uintptr(435)
SYS_close_range :: uintptr(436)
SYS_openat2 :: uintptr(437)
SYS_pidfd_getfd :: uintptr(438)
SYS_faccessat2 :: uintptr(439)
SYS_process_madvise :: uintptr(440)
SYS_epoll_pwait2 :: uintptr(441)
SYS_mount_setattr :: uintptr(442)
SYS_quotactl_fd :: uintptr(443)
SYS_landlock_create_ruleset :: uintptr(444)
SYS_landlock_add_rule :: uintptr(445)
SYS_landlock_restrict_self :: uintptr(446)
SYS_memfd_secret :: uintptr(447)
SYS_process_mrelease :: uintptr(448)
SYS_futex_waitv :: uintptr(449)
SYS_set_mempolicy_home_node :: uintptr(450)
SYS_cachestat :: uintptr(451)
SYS_fchmodat2 :: uintptr(452)
SYS_map_shadow_stack :: uintptr(453)