/*
 * Copyright (C) 2024 The Android Open Source Project
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */

#include "berberis/guest_os_primitives/gen_syscall_numbers.h"

namespace berberis {

int ToHostSyscallNumber(int nr) {
  switch (nr) {
    case 202:  // __NR_accept
      return 202;
    case 242:  // __NR_accept4
      return 242;
    case 89:  // __NR_acct
      return 89;
    case 217:  // __NR_add_key
      return 217;
    case 171:  // __NR_adjtimex
      return 171;
    case 200:  // __NR_bind
      return 200;
    case 280:  // __NR_bpf
      return 280;
    case 214:  // __NR_brk
      return 214;
    case 90:  // __NR_capget
      return 90;
    case 91:  // __NR_capset
      return 91;
    case 49:  // __NR_chdir
      return 49;
    case 51:  // __NR_chroot
      return 51;
    case 266:  // __NR_clock_adjtime
      return 266;
    case 114:  // __NR_clock_getres
      return 114;
    case 113:  // __NR_clock_gettime
      return 113;
    case 115:  // __NR_clock_nanosleep
      return 115;
    case 112:  // __NR_clock_settime
      return 112;
    case 220:  // __NR_clone
      return 220;
    case 435:  // __NR_clone3
      return 435;
    case 57:  // __NR_close
      return 57;
    case 436:  // __NR_close_range
      return 436;
    case 203:  // __NR_connect
      return 203;
    case 285:  // __NR_copy_file_range
      return 285;
    case 106:  // __NR_delete_module
      return 106;
    case 23:  // __NR_dup
      return 23;
    case 24:  // __NR_dup3
      return 24;
    case 20:  // __NR_epoll_create1
      return 20;
    case 21:  // __NR_epoll_ctl
      return 21;
    case 22:  // __NR_epoll_pwait
      return 22;
    case 441:  // __NR_epoll_pwait2
      return 441;
    case 19:  // __NR_eventfd2
      return 19;
    case 221:  // __NR_execve
      return 221;
    case 281:  // __NR_execveat
      return 281;
    case 93:  // __NR_exit
      return 93;
    case 94:  // __NR_exit_group
      return 94;
    case 48:  // __NR_faccessat
      return 48;
    case 439:  // __NR_faccessat2
      return 439;
    case 223:  // __NR_fadvise64
      return 223;
    case 47:  // __NR_fallocate
      return 47;
    case 262:  // __NR_fanotify_init
      return 262;
    case 263:  // __NR_fanotify_mark
      return 263;
    case 50:  // __NR_fchdir
      return 50;
    case 52:  // __NR_fchmod
      return 52;
    case 53:  // __NR_fchmodat
      return 53;
    case 55:  // __NR_fchown
      return 55;
    case 54:  // __NR_fchownat
      return 54;
    case 25:  // __NR_fcntl
      return 25;
    case 83:  // __NR_fdatasync
      return 83;
    case 10:  // __NR_fgetxattr
      return 10;
    case 273:  // __NR_finit_module
      return 273;
    case 13:  // __NR_flistxattr
      return 13;
    case 32:  // __NR_flock
      return 32;
    case 16:  // __NR_fremovexattr
      return 16;
    case 431:  // __NR_fsconfig
      return 431;
    case 7:  // __NR_fsetxattr
      return 7;
    case 432:  // __NR_fsmount
      return 432;
    case 430:  // __NR_fsopen
      return 430;
    case 433:  // __NR_fspick
      return 433;
    case 80:  // __NR_fstat
      return 80;
    case 44:  // __NR_fstatfs
      return 44;
    case 82:  // __NR_fsync
      return 82;
    case 46:  // __NR_ftruncate
      return 46;
    case 98:  // __NR_futex
      return 98;
    case 449:  // __NR_futex_waitv
      return 449;
    case 236:  // __NR_get_mempolicy
      return 236;
    case 100:  // __NR_get_robust_list
      return 100;
    case 168:  // __NR_getcpu
      return 168;
    case 17:  // __NR_getcwd
      return 17;
    case 61:  // __NR_getdents64
      return 61;
    case 177:  // __NR_getegid
      return 177;
    case 175:  // __NR_geteuid
      return 175;
    case 176:  // __NR_getgid
      return 176;
    case 158:  // __NR_getgroups
      return 158;
    case 102:  // __NR_getitimer
      return 102;
    case 205:  // __NR_getpeername
      return 205;
    case 155:  // __NR_getpgid
      return 155;
    case 172:  // __NR_getpid
      return 172;
    case 173:  // __NR_getppid
      return 173;
    case 141:  // __NR_getpriority
      return 141;
    case 278:  // __NR_getrandom
      return 278;
    case 150:  // __NR_getresgid
      return 150;
    case 148:  // __NR_getresuid
      return 148;
    case 163:  // __NR_getrlimit
      return 163;
    case 165:  // __NR_getrusage
      return 165;
    case 156:  // __NR_getsid
      return 156;
    case 204:  // __NR_getsockname
      return 204;
    case 209:  // __NR_getsockopt
      return 209;
    case 178:  // __NR_gettid
      return 178;
    case 169:  // __NR_gettimeofday
      return 169;
    case 174:  // __NR_getuid
      return 174;
    case 8:  // __NR_getxattr
      return 8;
    case 105:  // __NR_init_module
      return 105;
    case 27:  // __NR_inotify_add_watch
      return 27;
    case 26:  // __NR_inotify_init1
      return 26;
    case 28:  // __NR_inotify_rm_watch
      return 28;
    case 3:  // __NR_io_cancel
      return 3;
    case 1:  // __NR_io_destroy
      return 1;
    case 4:  // __NR_io_getevents
      return 4;
    case 292:  // __NR_io_pgetevents
      return 292;
    case 0:  // __NR_io_setup
      return 0;
    case 2:  // __NR_io_submit
      return 2;
    case 426:  // __NR_io_uring_enter
      return 426;
    case 427:  // __NR_io_uring_register
      return 427;
    case 425:  // __NR_io_uring_setup
      return 425;
    case 29:  // __NR_ioctl
      return 29;
    case 31:  // __NR_ioprio_get
      return 31;
    case 30:  // __NR_ioprio_set
      return 30;
    case 272:  // __NR_kcmp
      return 272;
    case 294:  // __NR_kexec_file_load
      return 294;
    case 104:  // __NR_kexec_load
      return 104;
    case 219:  // __NR_keyctl
      return 219;
    case 129:  // __NR_kill
      return 129;
    case 445:  // __NR_landlock_add_rule
      return 445;
    case 444:  // __NR_landlock_create_ruleset
      return 444;
    case 446:  // __NR_landlock_restrict_self
      return 446;
    case 9:  // __NR_lgetxattr
      return 9;
    case 37:  // __NR_linkat
      return 37;
    case 201:  // __NR_listen
      return 201;
    case 11:  // __NR_listxattr
      return 11;
    case 12:  // __NR_llistxattr
      return 12;
    case 18:  // __NR_lookup_dcookie
      return 18;
    case 15:  // __NR_lremovexattr
      return 15;
    case 62:  // __NR_lseek
      return 62;
    case 6:  // __NR_lsetxattr
      return 6;
    case 233:  // __NR_madvise
      return 233;
    case 235:  // __NR_mbind
      return 235;
    case 283:  // __NR_membarrier
      return 283;
    case 279:  // __NR_memfd_create
      return 279;
    case 447:  // __NR_memfd_secret
      return 447;
    case 238:  // __NR_migrate_pages
      return 238;
    case 232:  // __NR_mincore
      return 232;
    case 34:  // __NR_mkdirat
      return 34;
    case 33:  // __NR_mknodat
      return 33;
    case 228:  // __NR_mlock
      return 228;
    case 284:  // __NR_mlock2
      return 284;
    case 230:  // __NR_mlockall
      return 230;
    case 222:  // __NR_mmap
      return 222;
    case 40:  // __NR_mount
      return 40;
    case 442:  // __NR_mount_setattr
      return 442;
    case 429:  // __NR_move_mount
      return 429;
    case 239:  // __NR_move_pages
      return 239;
    case 226:  // __NR_mprotect
      return 226;
    case 185:  // __NR_mq_getsetattr
      return 185;
    case 184:  // __NR_mq_notify
      return 184;
    case 180:  // __NR_mq_open
      return 180;
    case 183:  // __NR_mq_timedreceive
      return 183;
    case 182:  // __NR_mq_timedsend
      return 182;
    case 181:  // __NR_mq_unlink
      return 181;
    case 216:  // __NR_mremap
      return 216;
    case 187:  // __NR_msgctl
      return 187;
    case 186:  // __NR_msgget
      return 186;
    case 188:  // __NR_msgrcv
      return 188;
    case 189:  // __NR_msgsnd
      return 189;
    case 227:  // __NR_msync
      return 227;
    case 229:  // __NR_munlock
      return 229;
    case 231:  // __NR_munlockall
      return 231;
    case 215:  // __NR_munmap
      return 215;
    case 264:  // __NR_name_to_handle_at
      return 264;
    case 101:  // __NR_nanosleep
      return 101;
    case 79:  // __NR_newfstatat
      return 79;
    case 42:  // __NR_nfsservctl
      return 42;
    case 265:  // __NR_open_by_handle_at
      return 265;
    case 428:  // __NR_open_tree
      return 428;
    case 56:  // __NR_openat
      return 56;
    case 437:  // __NR_openat2
      return 437;
    case 241:  // __NR_perf_event_open
      return 241;
    case 92:  // __NR_personality
      return 92;
    case 438:  // __NR_pidfd_getfd
      return 438;
    case 434:  // __NR_pidfd_open
      return 434;
    case 424:  // __NR_pidfd_send_signal
      return 424;
    case 59:  // __NR_pipe2
      return 59;
    case 41:  // __NR_pivot_root
      return 41;
    case 289:  // __NR_pkey_alloc
      return 289;
    case 290:  // __NR_pkey_free
      return 290;
    case 288:  // __NR_pkey_mprotect
      return 288;
    case 73:  // __NR_ppoll
      return 73;
    case 167:  // __NR_prctl
      return 167;
    case 67:  // __NR_pread64
      return 67;
    case 69:  // __NR_preadv
      return 69;
    case 286:  // __NR_preadv2
      return 286;
    case 261:  // __NR_prlimit64
      return 261;
    case 440:  // __NR_process_madvise
      return 440;
    case 448:  // __NR_process_mrelease
      return 448;
    case 270:  // __NR_process_vm_readv
      return 270;
    case 271:  // __NR_process_vm_writev
      return 271;
    case 72:  // __NR_pselect6
      return 72;
    case 117:  // __NR_ptrace
      return 117;
    case 68:  // __NR_pwrite64
      return 68;
    case 70:  // __NR_pwritev
      return 70;
    case 287:  // __NR_pwritev2
      return 287;
    case 60:  // __NR_quotactl
      return 60;
    case 443:  // __NR_quotactl_fd
      return 443;
    case 63:  // __NR_read
      return 63;
    case 213:  // __NR_readahead
      return 213;
    case 78:  // __NR_readlinkat
      return 78;
    case 65:  // __NR_readv
      return 65;
    case 142:  // __NR_reboot
      return 142;
    case 207:  // __NR_recvfrom
      return 207;
    case 243:  // __NR_recvmmsg
      return 243;
    case 212:  // __NR_recvmsg
      return 212;
    case 234:  // __NR_remap_file_pages
      return 234;
    case 14:  // __NR_removexattr
      return 14;
    case 38:  // __NR_renameat
      return 38;
    case 276:  // __NR_renameat2
      return 276;
    case 218:  // __NR_request_key
      return 218;
    case 128:  // __NR_restart_syscall
      return 128;
    case 293:  // __NR_rseq
      return 293;
    case 134:  // __NR_rt_sigaction
      return 134;
    case 136:  // __NR_rt_sigpending
      return 136;
    case 135:  // __NR_rt_sigprocmask
      return 135;
    case 138:  // __NR_rt_sigqueueinfo
      return 138;
    case 139:  // __NR_rt_sigreturn
      return 139;
    case 133:  // __NR_rt_sigsuspend
      return 133;
    case 137:  // __NR_rt_sigtimedwait
      return 137;
    case 240:  // __NR_rt_tgsigqueueinfo
      return 240;
    case 125:  // __NR_sched_get_priority_max
      return 125;
    case 126:  // __NR_sched_get_priority_min
      return 126;
    case 123:  // __NR_sched_getaffinity
      return 123;
    case 275:  // __NR_sched_getattr
      return 275;
    case 121:  // __NR_sched_getparam
      return 121;
    case 120:  // __NR_sched_getscheduler
      return 120;
    case 127:  // __NR_sched_rr_get_interval
      return 127;
    case 122:  // __NR_sched_setaffinity
      return 122;
    case 274:  // __NR_sched_setattr
      return 274;
    case 118:  // __NR_sched_setparam
      return 118;
    case 119:  // __NR_sched_setscheduler
      return 119;
    case 124:  // __NR_sched_yield
      return 124;
    case 277:  // __NR_seccomp
      return 277;
    case 191:  // __NR_semctl
      return 191;
    case 190:  // __NR_semget
      return 190;
    case 193:  // __NR_semop
      return 193;
    case 192:  // __NR_semtimedop
      return 192;
    case 71:  // __NR_sendfile
      return 71;
    case 269:  // __NR_sendmmsg
      return 269;
    case 211:  // __NR_sendmsg
      return 211;
    case 206:  // __NR_sendto
      return 206;
    case 237:  // __NR_set_mempolicy
      return 237;
    case 450:  // __NR_set_mempolicy_home_node
      return 450;
    case 99:  // __NR_set_robust_list
      return 99;
    case 96:  // __NR_set_tid_address
      return 96;
    case 162:  // __NR_setdomainname
      return 162;
    case 152:  // __NR_setfsgid
      return 152;
    case 151:  // __NR_setfsuid
      return 151;
    case 144:  // __NR_setgid
      return 144;
    case 159:  // __NR_setgroups
      return 159;
    case 161:  // __NR_sethostname
      return 161;
    case 103:  // __NR_setitimer
      return 103;
    case 268:  // __NR_setns
      return 268;
    case 154:  // __NR_setpgid
      return 154;
    case 140:  // __NR_setpriority
      return 140;
    case 143:  // __NR_setregid
      return 143;
    case 149:  // __NR_setresgid
      return 149;
    case 147:  // __NR_setresuid
      return 147;
    case 145:  // __NR_setreuid
      return 145;
    case 164:  // __NR_setrlimit
      return 164;
    case 157:  // __NR_setsid
      return 157;
    case 208:  // __NR_setsockopt
      return 208;
    case 170:  // __NR_settimeofday
      return 170;
    case 146:  // __NR_setuid
      return 146;
    case 5:  // __NR_setxattr
      return 5;
    case 196:  // __NR_shmat
      return 196;
    case 195:  // __NR_shmctl
      return 195;
    case 197:  // __NR_shmdt
      return 197;
    case 194:  // __NR_shmget
      return 194;
    case 210:  // __NR_shutdown
      return 210;
    case 132:  // __NR_sigaltstack
      return 132;
    case 74:  // __NR_signalfd4
      return 74;
    case 198:  // __NR_socket
      return 198;
    case 199:  // __NR_socketpair
      return 199;
    case 76:  // __NR_splice
      return 76;
    case 43:  // __NR_statfs
      return 43;
    case 291:  // __NR_statx
      return 291;
    case 225:  // __NR_swapoff
      return 225;
    case 224:  // __NR_swapon
      return 224;
    case 36:  // __NR_symlinkat
      return 36;
    case 81:  // __NR_sync
      return 81;
    case 84:  // __NR_sync_file_range
      return 84;
    case 267:  // __NR_syncfs
      return 267;
    case 179:  // __NR_sysinfo
      return 179;
    case 116:  // __NR_syslog
      return 116;
    case 77:  // __NR_tee
      return 77;
    case 131:  // __NR_tgkill
      return 131;
    case 107:  // __NR_timer_create
      return 107;
    case 111:  // __NR_timer_delete
      return 111;
    case 109:  // __NR_timer_getoverrun
      return 109;
    case 108:  // __NR_timer_gettime
      return 108;
    case 110:  // __NR_timer_settime
      return 110;
    case 85:  // __NR_timerfd_create
      return 85;
    case 87:  // __NR_timerfd_gettime
      return 87;
    case 86:  // __NR_timerfd_settime
      return 86;
    case 153:  // __NR_times
      return 153;
    case 130:  // __NR_tkill
      return 130;
    case 45:  // __NR_truncate
      return 45;
    case 166:  // __NR_umask
      return 166;
    case 39:  // __NR_umount2
      return 39;
    case 160:  // __NR_uname
      return 160;
    case 35:  // __NR_unlinkat
      return 35;
    case 97:  // __NR_unshare
      return 97;
    case 282:  // __NR_userfaultfd
      return 282;
    case 88:  // __NR_utimensat
      return 88;
    case 58:  // __NR_vhangup
      return 58;
    case 75:  // __NR_vmsplice
      return 75;
    case 260:  // __NR_wait4
      return 260;
    case 95:  // __NR_waitid
      return 95;
    case 64:  // __NR_write
      return 64;
    case 66:  // __NR_writev
      return 66;
    default:
      return -1;
  }
}

int ToGuestSyscallNumber(int nr) {
  switch (nr) {
    case 202:  // __NR_accept
      return 202;
    case 242:  // __NR_accept4
      return 242;
    case 89:  // __NR_acct
      return 89;
    case 217:  // __NR_add_key
      return 217;
    case 171:  // __NR_adjtimex
      return 171;
    case 200:  // __NR_bind
      return 200;
    case 280:  // __NR_bpf
      return 280;
    case 214:  // __NR_brk
      return 214;
    case 90:  // __NR_capget
      return 90;
    case 91:  // __NR_capset
      return 91;
    case 49:  // __NR_chdir
      return 49;
    case 51:  // __NR_chroot
      return 51;
    case 266:  // __NR_clock_adjtime
      return 266;
    case 114:  // __NR_clock_getres
      return 114;
    case 113:  // __NR_clock_gettime
      return 113;
    case 115:  // __NR_clock_nanosleep
      return 115;
    case 112:  // __NR_clock_settime
      return 112;
    case 220:  // __NR_clone
      return 220;
    case 435:  // __NR_clone3
      return 435;
    case 57:  // __NR_close
      return 57;
    case 436:  // __NR_close_range
      return 436;
    case 203:  // __NR_connect
      return 203;
    case 285:  // __NR_copy_file_range
      return 285;
    case 106:  // __NR_delete_module
      return 106;
    case 23:  // __NR_dup
      return 23;
    case 24:  // __NR_dup3
      return 24;
    case 20:  // __NR_epoll_create1
      return 20;
    case 21:  // __NR_epoll_ctl
      return 21;
    case 22:  // __NR_epoll_pwait
      return 22;
    case 441:  // __NR_epoll_pwait2
      return 441;
    case 19:  // __NR_eventfd2
      return 19;
    case 221:  // __NR_execve
      return 221;
    case 281:  // __NR_execveat
      return 281;
    case 93:  // __NR_exit
      return 93;
    case 94:  // __NR_exit_group
      return 94;
    case 48:  // __NR_faccessat
      return 48;
    case 439:  // __NR_faccessat2
      return 439;
    case 223:  // __NR_fadvise64
      return 223;
    case 47:  // __NR_fallocate
      return 47;
    case 262:  // __NR_fanotify_init
      return 262;
    case 263:  // __NR_fanotify_mark
      return 263;
    case 50:  // __NR_fchdir
      return 50;
    case 52:  // __NR_fchmod
      return 52;
    case 53:  // __NR_fchmodat
      return 53;
    case 55:  // __NR_fchown
      return 55;
    case 54:  // __NR_fchownat
      return 54;
    case 25:  // __NR_fcntl
      return 25;
    case 83:  // __NR_fdatasync
      return 83;
    case 10:  // __NR_fgetxattr
      return 10;
    case 273:  // __NR_finit_module
      return 273;
    case 13:  // __NR_flistxattr
      return 13;
    case 32:  // __NR_flock
      return 32;
    case 16:  // __NR_fremovexattr
      return 16;
    case 431:  // __NR_fsconfig
      return 431;
    case 7:  // __NR_fsetxattr
      return 7;
    case 432:  // __NR_fsmount
      return 432;
    case 430:  // __NR_fsopen
      return 430;
    case 433:  // __NR_fspick
      return 433;
    case 80:  // __NR_fstat
      return 80;
    case 44:  // __NR_fstatfs
      return 44;
    case 82:  // __NR_fsync
      return 82;
    case 46:  // __NR_ftruncate
      return 46;
    case 98:  // __NR_futex
      return 98;
    case 449:  // __NR_futex_waitv
      return 449;
    case 236:  // __NR_get_mempolicy
      return 236;
    case 100:  // __NR_get_robust_list
      return 100;
    case 168:  // __NR_getcpu
      return 168;
    case 17:  // __NR_getcwd
      return 17;
    case 61:  // __NR_getdents64
      return 61;
    case 177:  // __NR_getegid
      return 177;
    case 175:  // __NR_geteuid
      return 175;
    case 176:  // __NR_getgid
      return 176;
    case 158:  // __NR_getgroups
      return 158;
    case 102:  // __NR_getitimer
      return 102;
    case 205:  // __NR_getpeername
      return 205;
    case 155:  // __NR_getpgid
      return 155;
    case 172:  // __NR_getpid
      return 172;
    case 173:  // __NR_getppid
      return 173;
    case 141:  // __NR_getpriority
      return 141;
    case 278:  // __NR_getrandom
      return 278;
    case 150:  // __NR_getresgid
      return 150;
    case 148:  // __NR_getresuid
      return 148;
    case 163:  // __NR_getrlimit
      return 163;
    case 165:  // __NR_getrusage
      return 165;
    case 156:  // __NR_getsid
      return 156;
    case 204:  // __NR_getsockname
      return 204;
    case 209:  // __NR_getsockopt
      return 209;
    case 178:  // __NR_gettid
      return 178;
    case 169:  // __NR_gettimeofday
      return 169;
    case 174:  // __NR_getuid
      return 174;
    case 8:  // __NR_getxattr
      return 8;
    case 105:  // __NR_init_module
      return 105;
    case 27:  // __NR_inotify_add_watch
      return 27;
    case 26:  // __NR_inotify_init1
      return 26;
    case 28:  // __NR_inotify_rm_watch
      return 28;
    case 3:  // __NR_io_cancel
      return 3;
    case 1:  // __NR_io_destroy
      return 1;
    case 4:  // __NR_io_getevents
      return 4;
    case 292:  // __NR_io_pgetevents
      return 292;
    case 0:  // __NR_io_setup
      return 0;
    case 2:  // __NR_io_submit
      return 2;
    case 426:  // __NR_io_uring_enter
      return 426;
    case 427:  // __NR_io_uring_register
      return 427;
    case 425:  // __NR_io_uring_setup
      return 425;
    case 29:  // __NR_ioctl
      return 29;
    case 31:  // __NR_ioprio_get
      return 31;
    case 30:  // __NR_ioprio_set
      return 30;
    case 272:  // __NR_kcmp
      return 272;
    case 294:  // __NR_kexec_file_load
      return 294;
    case 104:  // __NR_kexec_load
      return 104;
    case 219:  // __NR_keyctl
      return 219;
    case 129:  // __NR_kill
      return 129;
    case 445:  // __NR_landlock_add_rule
      return 445;
    case 444:  // __NR_landlock_create_ruleset
      return 444;
    case 446:  // __NR_landlock_restrict_self
      return 446;
    case 9:  // __NR_lgetxattr
      return 9;
    case 37:  // __NR_linkat
      return 37;
    case 201:  // __NR_listen
      return 201;
    case 11:  // __NR_listxattr
      return 11;
    case 12:  // __NR_llistxattr
      return 12;
    case 18:  // __NR_lookup_dcookie
      return 18;
    case 15:  // __NR_lremovexattr
      return 15;
    case 62:  // __NR_lseek
      return 62;
    case 6:  // __NR_lsetxattr
      return 6;
    case 233:  // __NR_madvise
      return 233;
    case 235:  // __NR_mbind
      return 235;
    case 283:  // __NR_membarrier
      return 283;
    case 279:  // __NR_memfd_create
      return 279;
    case 447:  // __NR_memfd_secret
      return 447;
    case 238:  // __NR_migrate_pages
      return 238;
    case 232:  // __NR_mincore
      return 232;
    case 34:  // __NR_mkdirat
      return 34;
    case 33:  // __NR_mknodat
      return 33;
    case 228:  // __NR_mlock
      return 228;
    case 284:  // __NR_mlock2
      return 284;
    case 230:  // __NR_mlockall
      return 230;
    case 222:  // __NR_mmap
      return 222;
    case 40:  // __NR_mount
      return 40;
    case 442:  // __NR_mount_setattr
      return 442;
    case 429:  // __NR_move_mount
      return 429;
    case 239:  // __NR_move_pages
      return 239;
    case 226:  // __NR_mprotect
      return 226;
    case 185:  // __NR_mq_getsetattr
      return 185;
    case 184:  // __NR_mq_notify
      return 184;
    case 180:  // __NR_mq_open
      return 180;
    case 183:  // __NR_mq_timedreceive
      return 183;
    case 182:  // __NR_mq_timedsend
      return 182;
    case 181:  // __NR_mq_unlink
      return 181;
    case 216:  // __NR_mremap
      return 216;
    case 187:  // __NR_msgctl
      return 187;
    case 186:  // __NR_msgget
      return 186;
    case 188:  // __NR_msgrcv
      return 188;
    case 189:  // __NR_msgsnd
      return 189;
    case 227:  // __NR_msync
      return 227;
    case 229:  // __NR_munlock
      return 229;
    case 231:  // __NR_munlockall
      return 231;
    case 215:  // __NR_munmap
      return 215;
    case 264:  // __NR_name_to_handle_at
      return 264;
    case 101:  // __NR_nanosleep
      return 101;
    case 79:  // __NR_newfstatat
      return 79;
    case 42:  // __NR_nfsservctl
      return 42;
    case 265:  // __NR_open_by_handle_at
      return 265;
    case 428:  // __NR_open_tree
      return 428;
    case 56:  // __NR_openat
      return 56;
    case 437:  // __NR_openat2
      return 437;
    case 241:  // __NR_perf_event_open
      return 241;
    case 92:  // __NR_personality
      return 92;
    case 438:  // __NR_pidfd_getfd
      return 438;
    case 434:  // __NR_pidfd_open
      return 434;
    case 424:  // __NR_pidfd_send_signal
      return 424;
    case 59:  // __NR_pipe2
      return 59;
    case 41:  // __NR_pivot_root
      return 41;
    case 289:  // __NR_pkey_alloc
      return 289;
    case 290:  // __NR_pkey_free
      return 290;
    case 288:  // __NR_pkey_mprotect
      return 288;
    case 73:  // __NR_ppoll
      return 73;
    case 167:  // __NR_prctl
      return 167;
    case 67:  // __NR_pread64
      return 67;
    case 69:  // __NR_preadv
      return 69;
    case 286:  // __NR_preadv2
      return 286;
    case 261:  // __NR_prlimit64
      return 261;
    case 440:  // __NR_process_madvise
      return 440;
    case 448:  // __NR_process_mrelease
      return 448;
    case 270:  // __NR_process_vm_readv
      return 270;
    case 271:  // __NR_process_vm_writev
      return 271;
    case 72:  // __NR_pselect6
      return 72;
    case 117:  // __NR_ptrace
      return 117;
    case 68:  // __NR_pwrite64
      return 68;
    case 70:  // __NR_pwritev
      return 70;
    case 287:  // __NR_pwritev2
      return 287;
    case 60:  // __NR_quotactl
      return 60;
    case 443:  // __NR_quotactl_fd
      return 443;
    case 63:  // __NR_read
      return 63;
    case 213:  // __NR_readahead
      return 213;
    case 78:  // __NR_readlinkat
      return 78;
    case 65:  // __NR_readv
      return 65;
    case 142:  // __NR_reboot
      return 142;
    case 207:  // __NR_recvfrom
      return 207;
    case 243:  // __NR_recvmmsg
      return 243;
    case 212:  // __NR_recvmsg
      return 212;
    case 234:  // __NR_remap_file_pages
      return 234;
    case 14:  // __NR_removexattr
      return 14;
    case 38:  // __NR_renameat
      return 38;
    case 276:  // __NR_renameat2
      return 276;
    case 218:  // __NR_request_key
      return 218;
    case 128:  // __NR_restart_syscall
      return 128;
    case 293:  // __NR_rseq
      return 293;
    case 134:  // __NR_rt_sigaction
      return 134;
    case 136:  // __NR_rt_sigpending
      return 136;
    case 135:  // __NR_rt_sigprocmask
      return 135;
    case 138:  // __NR_rt_sigqueueinfo
      return 138;
    case 139:  // __NR_rt_sigreturn
      return 139;
    case 133:  // __NR_rt_sigsuspend
      return 133;
    case 137:  // __NR_rt_sigtimedwait
      return 137;
    case 240:  // __NR_rt_tgsigqueueinfo
      return 240;
    case 125:  // __NR_sched_get_priority_max
      return 125;
    case 126:  // __NR_sched_get_priority_min
      return 126;
    case 123:  // __NR_sched_getaffinity
      return 123;
    case 275:  // __NR_sched_getattr
      return 275;
    case 121:  // __NR_sched_getparam
      return 121;
    case 120:  // __NR_sched_getscheduler
      return 120;
    case 127:  // __NR_sched_rr_get_interval
      return 127;
    case 122:  // __NR_sched_setaffinity
      return 122;
    case 274:  // __NR_sched_setattr
      return 274;
    case 118:  // __NR_sched_setparam
      return 118;
    case 119:  // __NR_sched_setscheduler
      return 119;
    case 124:  // __NR_sched_yield
      return 124;
    case 277:  // __NR_seccomp
      return 277;
    case 191:  // __NR_semctl
      return 191;
    case 190:  // __NR_semget
      return 190;
    case 193:  // __NR_semop
      return 193;
    case 192:  // __NR_semtimedop
      return 192;
    case 71:  // __NR_sendfile
      return 71;
    case 269:  // __NR_sendmmsg
      return 269;
    case 211:  // __NR_sendmsg
      return 211;
    case 206:  // __NR_sendto
      return 206;
    case 237:  // __NR_set_mempolicy
      return 237;
    case 450:  // __NR_set_mempolicy_home_node
      return 450;
    case 99:  // __NR_set_robust_list
      return 99;
    case 96:  // __NR_set_tid_address
      return 96;
    case 162:  // __NR_setdomainname
      return 162;
    case 152:  // __NR_setfsgid
      return 152;
    case 151:  // __NR_setfsuid
      return 151;
    case 144:  // __NR_setgid
      return 144;
    case 159:  // __NR_setgroups
      return 159;
    case 161:  // __NR_sethostname
      return 161;
    case 103:  // __NR_setitimer
      return 103;
    case 268:  // __NR_setns
      return 268;
    case 154:  // __NR_setpgid
      return 154;
    case 140:  // __NR_setpriority
      return 140;
    case 143:  // __NR_setregid
      return 143;
    case 149:  // __NR_setresgid
      return 149;
    case 147:  // __NR_setresuid
      return 147;
    case 145:  // __NR_setreuid
      return 145;
    case 164:  // __NR_setrlimit
      return 164;
    case 157:  // __NR_setsid
      return 157;
    case 208:  // __NR_setsockopt
      return 208;
    case 170:  // __NR_settimeofday
      return 170;
    case 146:  // __NR_setuid
      return 146;
    case 5:  // __NR_setxattr
      return 5;
    case 196:  // __NR_shmat
      return 196;
    case 195:  // __NR_shmctl
      return 195;
    case 197:  // __NR_shmdt
      return 197;
    case 194:  // __NR_shmget
      return 194;
    case 210:  // __NR_shutdown
      return 210;
    case 132:  // __NR_sigaltstack
      return 132;
    case 74:  // __NR_signalfd4
      return 74;
    case 198:  // __NR_socket
      return 198;
    case 199:  // __NR_socketpair
      return 199;
    case 76:  // __NR_splice
      return 76;
    case 43:  // __NR_statfs
      return 43;
    case 291:  // __NR_statx
      return 291;
    case 225:  // __NR_swapoff
      return 225;
    case 224:  // __NR_swapon
      return 224;
    case 36:  // __NR_symlinkat
      return 36;
    case 81:  // __NR_sync
      return 81;
    case 84:  // __NR_sync_file_range
      return 84;
    case 267:  // __NR_syncfs
      return 267;
    case 179:  // __NR_sysinfo
      return 179;
    case 116:  // __NR_syslog
      return 116;
    case 77:  // __NR_tee
      return 77;
    case 131:  // __NR_tgkill
      return 131;
    case 107:  // __NR_timer_create
      return 107;
    case 111:  // __NR_timer_delete
      return 111;
    case 109:  // __NR_timer_getoverrun
      return 109;
    case 108:  // __NR_timer_gettime
      return 108;
    case 110:  // __NR_timer_settime
      return 110;
    case 85:  // __NR_timerfd_create
      return 85;
    case 87:  // __NR_timerfd_gettime
      return 87;
    case 86:  // __NR_timerfd_settime
      return 86;
    case 153:  // __NR_times
      return 153;
    case 130:  // __NR_tkill
      return 130;
    case 45:  // __NR_truncate
      return 45;
    case 166:  // __NR_umask
      return 166;
    case 39:  // __NR_umount2
      return 39;
    case 160:  // __NR_uname
      return 160;
    case 35:  // __NR_unlinkat
      return 35;
    case 97:  // __NR_unshare
      return 97;
    case 282:  // __NR_userfaultfd
      return 282;
    case 88:  // __NR_utimensat
      return 88;
    case 58:  // __NR_vhangup
      return 58;
    case 75:  // __NR_vmsplice
      return 75;
    case 260:  // __NR_wait4
      return 260;
    case 95:  // __NR_waitid
      return 95;
    case 64:  // __NR_write
      return 64;
    case 66:  // __NR_writev
      return 66;
    default:
      return -1;
  }
}

}  // namespace berberis
