
/*
   This file is part of Valgrind, a dynamic binary instrumentation
   framework.

   Copyright (C) 2005 Julian Seward
      jseward@acm.org

   This program is free software; you can redistribute it and/or
   modify it under the terms of the GNU General Public License as
   published by the Free Software Foundation; either version 2 of the
   License, or (at your option) any later version.

   This program is distributed in the hope that it will be useful, but
   WITHOUT ANY WARRANTY; without even the implied warranty of
   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
   General Public License for more details.

   You should have received a copy of the GNU General Public License
   along with this program; if not, write to the Free Software
   Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
   02111-1307, USA.

   The GNU General Public License is contained in the file COPYING.
*/

#ifndef __VKI_UNISTD_PPC32_LINUX_H
#define __VKI_UNISTD_PPC32_LINUX_H

// From linux-2.6.9/include/asm-ppc/unistd.h

#define __NR_restart_syscall		  0
#define __NR_exit			  1
#define __NR_fork			  2
#define __NR_read			  3
#define __NR_write			  4
#define __NR_open			  5
#define __NR_close			  6
#define __NR_waitpid			  7
#define __NR_creat			  8
#define __NR_link			  9
#define __NR_unlink			 10
#define __NR_execve			 11
#define __NR_chdir			 12
#define __NR_time			 13
//#define __NR_mknod			 14
#define __NR_chmod			 15
#define __NR_lchown			 16
//#define __NR_break			 17
//#define __NR_oldstat			 18
#define __NR_lseek			 19
#define __NR_getpid			 20
//#define __NR_mount			 21
//#define __NR_umount			 22
#define __NR_setuid			 23
#define __NR_getuid			 24
//#define __NR_stime			 25
#define __NR_ptrace			 26
#define __NR_alarm			 27
//#define __NR_oldfstat			 28
#define __NR_pause			 29
#define __NR_utime			 30
//#define __NR_stty			 31
//#define __NR_gtty			 32
#define __NR_access			 33
//#define __NR_nice			 34
//#define __NR_ftime			 35
//#define __NR_sync			 36
#define __NR_kill			 37
#define __NR_rename			 38
#define __NR_mkdir			 39
#define __NR_rmdir			 40
#define __NR_dup			 41
#define __NR_pipe			 42
#define __NR_times			 43
//#define __NR_prof			 44
#define __NR_brk			 45
#define __NR_setgid			 46
#define __NR_getgid			 47
//#define __NR_signal			 48
#define __NR_geteuid			 49
#define __NR_getegid			 50
//#define __NR_acct			 51
//#define __NR_umount2			 52
//#define __NR_lock			 53
#define __NR_ioctl			 54
#define __NR_fcntl			 55
//#define __NR_mpx			 56
#define __NR_setpgid			 57
//#define __NR_ulimit			 58
//#define __NR_oldolduname		 59
#define __NR_umask			 60
//#define __NR_chroot			 61
//#define __NR_ustat			 62
#define __NR_dup2			 63
#define __NR_getppid			 64
#define __NR_getpgrp			 65
#define __NR_setsid			 66
//#define __NR_sigaction		 67
//#define __NR_sgetmask			 68
//#define __NR_ssetmask			 69
//#define __NR_setreuid			 70
//#define __NR_setregid			 71
//#define __NR_sigsuspend		 72
#define __NR_sigpending			 73
//#define __NR_sethostname		 74
#define __NR_setrlimit			 75
#define __NR_getrlimit			 76
#define __NR_getrusage			 77
#define __NR_gettimeofday		 78
//#define __NR_settimeofday		 79
#define __NR_getgroups			 80
//#define __NR_setgroups		 81
//#define __NR_select			 82
#define __NR_symlink			 83
//#define __NR_oldlstat			 84
#define __NR_readlink			 85
//#define __NR_uselib			 86
//#define __NR_swapon			 87
//#define __NR_reboot			 88
//#define __NR_readdir			 89
#define __NR_mmap			 90
#define __NR_munmap			 91
//#define __NR_truncate			 92
#define __NR_ftruncate			 93
#define __NR_fchmod			 94
#define __NR_fchown			 95
//#define __NR_getpriority		 96
//#define __NR_setpriority		 97
//#define __NR_profil			 98
//#define __NR_statfs			 99
//#define __NR_fstatfs			100
//#define __NR_ioperm			101
#define __NR_socketcall			102
//#define __NR_syslog			103
#define __NR_setitimer			104
//#define __NR_getitimer		105
#define __NR_stat			106
//#define __NR_lstat			107
#define __NR_fstat			108
//#define __NR_olduname			109
//#define __NR_iopl			110
//#define __NR_vhangup			111
//#define __NR_idle			112
//#define __NR_vm86old			113
#define __NR_wait4			114
//#define __NR_swapoff			115
//#define __NR_sysinfo			116
#define __NR_ipc			117
#define __NR_fsync			118
#define __NR_sigreturn			119
#define __NR_clone			120
//#define __NR_setdomainname		121
#define __NR_uname			122
//#define __NR_modify_ldt		123
//#define __NR_adjtimex			124
#define __NR_mprotect			125
#define __NR_sigprocmask		126
//#define __NR_create_module		127
//#define __NR_init_module		128
//#define __NR_delete_module		129
//#define __NR_get_kernel_syms		130
//#define __NR_quotactl			131
#define __NR_getpgid			132
//#define __NR_fchdir			133
//#define __NR_bdflush			134
//#define __NR_sysfs			135
//#define __NR_personality		136
//#define __NR_afs_syscall		137 /* Syscall for Andrew File System */
#define __NR_setfsuid			138
#define __NR_setfsgid			139
#define __NR__llseek			140
#define __NR_getdents			141
#define __NR__newselect			142
#define __NR_flock			143
//#define __NR_msync			144
#define __NR_readv			145
#define __NR_writev			146
//#define __NR_getsid			147
#define __NR_fdatasync			148
#define __NR__sysctl			149
//#define __NR_mlock			150
//#define __NR_munlock			151
//#define __NR_mlockall			152
//#define __NR_munlockall		153
//#define __NR_sched_setparam		154
#define __NR_sched_getparam		155
#define __NR_sched_setscheduler		156
#define __NR_sched_getscheduler		157
#define __NR_sched_yield		158
#define __NR_sched_get_priority_max	159
#define __NR_sched_get_priority_min	160
//#define __NR_sched_rr_get_interval	161
#define __NR_nanosleep			162
#define __NR_mremap			163
#define __NR_setresuid			164
#define __NR_getresuid			165
//#define __NR_query_module		166
#define __NR_poll			167
//#define __NR_nfsservctl		168
//#define __NR_setresgid		169
#define __NR_getresgid			170
#define __NR_prctl			171
#define __NR_rt_sigreturn		172
#define __NR_rt_sigaction		173
#define __NR_rt_sigprocmask		174
//#define __NR_rt_sigpending		175
#define __NR_rt_sigtimedwait		176
//#define __NR_rt_sigqueueinfo		177
//#define __NR_rt_sigsuspend		178
#define __NR_pread64			179
#define __NR_pwrite64			180
#define __NR_chown			181
#define __NR_getcwd			182
//#define __NR_capget			183
//#define __NR_capset			184
#define __NR_sigaltstack		185
//#define __NR_sendfile			186
//#define __NR_getpmsg			187   /* some people actually want streams */
//#define __NR_putpmsg			188   /* some people actually want streams */
#define __NR_vfork			189
#define __NR_ugetrlimit			190   /* SuS compliant getrlimit */
//#define __NR_readahead		191
#define __NR_mmap2			192
//#define __NR_truncate64		193
#define __NR_ftruncate64		194
#define __NR_stat64			195
#define __NR_lstat64			196
#define __NR_fstat64			197
//#define __NR_pciconfig_read		198
//#define __NR_pciconfig_write		199
//#define __NR_pciconfig_iobase		200
//#define __NR_multiplexer		201
#define __NR_getdents64			202
//#define __NR_pivot_root		203
#define __NR_fcntl64			204
#define __NR_madvise			205
//#define __NR_mincore			206
#define __NR_gettid			207
#define __NR_tkill			208
//#define __NR_setxattr			209
//#define __NR_lsetxattr		210
//#define __NR_fsetxattr		211
#define __NR_getxattr			212
//#define __NR_lgetxattr		213
//#define __NR_fgetxattr		214
//#define __NR_listxattr		215
//#define __NR_llistxattr		216
//#define __NR_flistxattr		217
//#define __NR_removexattr		218
//#define __NR_lremovexattr		219
//#define __NR_fremovexattr		220
#define __NR_futex			221
//#define __NR_sched_setaffinity	222
//#define __NR_sched_getaffinity	223
/* 224 currently unused */
//#define __NR_tuxcall			225
//#define __NR_sendfile64		226
//#define __NR_io_setup			227
//#define __NR_io_destroy		228
//#define __NR_io_getevents		229
//#define __NR_io_submit		230
//#define __NR_io_cancel		231
#define __NR_set_tid_address		232
//#define __NR_fadvise64		233
#define __NR_exit_group			234
//#define __NR_lookup_dcookie		235
//#define __NR_epoll_create		236
//#define __NR_epoll_ctl		237
//#define __NR_epoll_wait		238
//#define __NR_remap_file_pages		239
//#define __NR_timer_create		240
//#define __NR_timer_settime		241
//#define __NR_timer_gettime		242
//#define __NR_timer_getoverrun		243
//#define __NR_timer_delete		244
//#define __NR_clock_settime		245
#define __NR_clock_gettime		246
//#define __NR_clock_getres		247
//#define __NR_clock_nanosleep		248
//#define __NR_swapcontext		249
#define __NR_tgkill			250
//#define __NR_utimes			251
//#define __NR_statfs64			252
//#define __NR_fstatfs64		253
//#define __NR_fadvise64_64		254
//#define __NR_rtas			255
/* Number 256 is reserved for sys_debug_setcontext */
/* Number 257 is reserved for vserver */
/* Number 258 is reserved for new sys_remap_file_pages */
/* Number 259 is reserved for new sys_mbind */
/* Number 260 is reserved for new sys_get_mempolicy */
/* Number 261 is reserved for new sys_set_mempolicy */
//#define __NR_mq_open			262
//#define __NR_mq_unlink		263
//#define __NR_mq_timedsend		264
//#define __NR_mq_timedreceive		265
//#define __NR_mq_notify		266
//#define __NR_mq_getsetattr		267
//#define __NR_kexec_load		268
//#define __NR_add_key		269
//#define __NR_request_key	270
//#define __NR_keyctl		271
//#define __NR_waitid		272
//#define __NR_ioprio_set		273
//#define __NR_ioprio_get		274
//#define __NR_inotify_init	275
//#define __NR_inotify_add_watch	276
//#define __NR_inotify_rm_watch	277

#endif /* __VKI_UNISTD_PPC32_LINUX_H */
