2 /*--------------------------------------------------------------------*/
3 /*--- Notional "implementation" for m_vkiscnums. ---*/
4 /*--- m_vkiscnums.c ---*/
5 /*--------------------------------------------------------------------*/
8 This file is part of Valgrind, a dynamic binary instrumentation
11 Copyright (C) 2006-2010 OpenWorks LLP
14 This program is free software; you can redistribute it and/or
15 modify it under the terms of the GNU General Public License as
16 published by the Free Software Foundation; either version 2 of the
17 License, or (at your option) any later version.
19 This program is distributed in the hope that it will be useful, but
20 WITHOUT ANY WARRANTY; without even the implied warranty of
21 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
22 General Public License for more details.
24 You should have received a copy of the GNU General Public License
25 along with this program; if not, write to the Free Software
26 Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
29 The GNU General Public License is contained in the file COPYING.
32 #include "pub_core_basics.h"
33 #include "pub_core_libcassert.h"
34 #include "pub_core_libcprint.h"
36 #include "pub_core_vkiscnums.h" /* self */
38 /* We have pub_{core,tool}_vkiscnums.h. This is the matching implementation
41 On Linux, the interface exports a bunch of "#define __NR_foo 42" style
42 definitions, so there is no implementation.
44 On AIX, syscall numbers are not fixed ahead of time; in principle
45 each process can have its own assignment of numbers to actual
46 syscalls. As a result we have a bunch of global variables to store
47 the number for each syscall, which are assigned to at system
48 startup, and a bunch of #defines which map "__NR_foo" names to
49 these global variables. Initially, when we don't know what a
50 syscall's number is, it is set to __NR_AIX5_UNKNOWN.
52 Therefore, on AIX, this module provides a home for those variables.
54 It also provides VG_(aix5_register_syscall) to assign numbers to
58 //---------------------------------------------------------------------------
59 #if defined(VGO_linux) || defined(VGO_l4re)
60 //---------------------------------------------------------------------------
62 Char* VG_(sysnum_string)(Word sysnum, SizeT n_buf, Char* buf)
64 VG_(snprintf)(buf, n_buf, "%3ld", sysnum);
68 Char* VG_(sysnum_string_extra)(Word sysnum, SizeT n_buf, Char* buf)
70 return VG_(sysnum_string)(sysnum, n_buf, buf);
73 //---------------------------------------------------------------------------
74 #elif defined(VGO_aix5)
75 //---------------------------------------------------------------------------
77 /* These ones are for AIX 5.2. */
78 Int VG_(aix5_NR_utrchook_sc) = __NR_AIX5_UNKNOWN;
79 Int VG_(aix5_NR_thread_create) = __NR_AIX5_UNKNOWN;
80 Int VG_(aix5_NR_kfork) = __NR_AIX5_UNKNOWN;
81 Int VG_(aix5_NR_kra_fork) = __NR_AIX5_UNKNOWN;
82 Int VG_(aix5_NR_execve) = __NR_AIX5_UNKNOWN;
83 Int VG_(aix5_NR_ra_execve) = __NR_AIX5_UNKNOWN;
84 Int VG_(aix5_NR__load) = __NR_AIX5_UNKNOWN;
85 Int VG_(aix5_NR___unload) = __NR_AIX5_UNKNOWN;
86 Int VG_(aix5_NR_loadbind) = __NR_AIX5_UNKNOWN;
87 Int VG_(aix5_NR___loadx) = __NR_AIX5_UNKNOWN;
88 Int VG_(aix5_NR_bindprocessor) = __NR_AIX5_UNKNOWN;
89 Int VG_(aix5_NR_trcgent) = __NR_AIX5_UNKNOWN;
90 Int VG_(aix5_NR_trcgen) = __NR_AIX5_UNKNOWN;
91 Int VG_(aix5_NR_trchk) = __NR_AIX5_UNKNOWN;
92 Int VG_(aix5_NR_trchkt) = __NR_AIX5_UNKNOWN;
93 Int VG_(aix5_NR_trchkl) = __NR_AIX5_UNKNOWN;
94 Int VG_(aix5_NR_trchklt) = __NR_AIX5_UNKNOWN;
95 Int VG_(aix5_NR_trchkg) = __NR_AIX5_UNKNOWN;
96 Int VG_(aix5_NR_trchkgt) = __NR_AIX5_UNKNOWN;
97 Int VG_(aix5_NR_kill) = __NR_AIX5_UNKNOWN;
98 Int VG_(aix5_NR__addcpucosts) = __NR_AIX5_UNKNOWN;
99 Int VG_(aix5_NR_mycpu) = __NR_AIX5_UNKNOWN;
100 Int VG_(aix5_NR_adjtime) = __NR_AIX5_UNKNOWN;
101 Int VG_(aix5_NR_checkpnt_block) = __NR_AIX5_UNKNOWN;
102 Int VG_(aix5_NR__checkpnt_kill) = __NR_AIX5_UNKNOWN;
103 Int VG_(aix5_NR__checkpnt_fail) = __NR_AIX5_UNKNOWN;
104 Int VG_(aix5_NR__checkpnt_commit) = __NR_AIX5_UNKNOWN;
105 Int VG_(aix5_NR__checkpnt_register) = __NR_AIX5_UNKNOWN;
106 Int VG_(aix5_NR__checkpnt) = __NR_AIX5_UNKNOWN;
107 Int VG_(aix5_NR_setcrid) = __NR_AIX5_UNKNOWN;
108 Int VG_(aix5_NR_getcrid) = __NR_AIX5_UNKNOWN;
109 Int VG_(aix5_NR_mkcrid) = __NR_AIX5_UNKNOWN;
110 Int VG_(aix5_NR_checkpnt_wait) = __NR_AIX5_UNKNOWN;
111 Int VG_(aix5_NR_checkpnt_deliver) = __NR_AIX5_UNKNOWN;
112 Int VG_(aix5_NR_gencore) = __NR_AIX5_UNKNOWN;
113 Int VG_(aix5_NR_thread_terminate) = __NR_AIX5_UNKNOWN;
114 Int VG_(aix5_NR__exit) = __NR_AIX5_UNKNOWN;
115 Int VG_(aix5_NR_kwaitpid64) = __NR_AIX5_UNKNOWN;
116 Int VG_(aix5_NR_kwaitpid) = __NR_AIX5_UNKNOWN;
117 Int VG_(aix5_NR_yield) = __NR_AIX5_UNKNOWN;
118 Int VG_(aix5_NR_getprocs64) = __NR_AIX5_UNKNOWN;
119 Int VG_(aix5_NR_getevars) = __NR_AIX5_UNKNOWN;
120 Int VG_(aix5_NR_getargs) = __NR_AIX5_UNKNOWN;
121 Int VG_(aix5_NR_getthrds64) = __NR_AIX5_UNKNOWN;
122 Int VG_(aix5_NR_getthrds) = __NR_AIX5_UNKNOWN;
123 Int VG_(aix5_NR_getprocs) = __NR_AIX5_UNKNOWN;
124 Int VG_(aix5_NR_sigcleanup) = __NR_AIX5_UNKNOWN;
125 Int VG_(aix5_NR__setpri) = __NR_AIX5_UNKNOWN;
126 Int VG_(aix5_NR__getpri) = __NR_AIX5_UNKNOWN;
127 Int VG_(aix5_NR_profil) = __NR_AIX5_UNKNOWN;
128 Int VG_(aix5_NR_reboot) = __NR_AIX5_UNKNOWN;
129 Int VG_(aix5_NR_appgetrlimit) = __NR_AIX5_UNKNOWN;
130 Int VG_(aix5_NR_appsetrlimit) = __NR_AIX5_UNKNOWN;
131 Int VG_(aix5_NR__setpriority) = __NR_AIX5_UNKNOWN;
132 Int VG_(aix5_NR__getpriority) = __NR_AIX5_UNKNOWN;
133 Int VG_(aix5_NR_setrlimit64) = __NR_AIX5_UNKNOWN;
134 Int VG_(aix5_NR_getrlimit64) = __NR_AIX5_UNKNOWN;
135 Int VG_(aix5_NR_appgetrusage) = __NR_AIX5_UNKNOWN;
136 Int VG_(aix5_NR_getrusage64) = __NR_AIX5_UNKNOWN;
137 Int VG_(aix5_NR_getvtid) = __NR_AIX5_UNKNOWN;
138 Int VG_(aix5_NR_getrtid) = __NR_AIX5_UNKNOWN;
139 Int VG_(aix5_NR_getrpid) = __NR_AIX5_UNKNOWN;
140 Int VG_(aix5_NR_restart_wait) = __NR_AIX5_UNKNOWN;
141 Int VG_(aix5_NR_restart) = __NR_AIX5_UNKNOWN;
142 Int VG_(aix5_NR__rmcpucosts) = __NR_AIX5_UNKNOWN;
143 Int VG_(aix5_NR__clock_getcpuclockid) = __NR_AIX5_UNKNOWN;
144 Int VG_(aix5_NR__clock_settime) = __NR_AIX5_UNKNOWN;
145 Int VG_(aix5_NR__clock_gettime) = __NR_AIX5_UNKNOWN;
146 Int VG_(aix5_NR__clock_getres) = __NR_AIX5_UNKNOWN;
147 Int VG_(aix5_NR__timer_settime) = __NR_AIX5_UNKNOWN;
148 Int VG_(aix5_NR__timer_gettime) = __NR_AIX5_UNKNOWN;
149 Int VG_(aix5_NR__timer_getoverrun) = __NR_AIX5_UNKNOWN;
150 Int VG_(aix5_NR__timer_delete) = __NR_AIX5_UNKNOWN;
151 Int VG_(aix5_NR__timer_create) = __NR_AIX5_UNKNOWN;
152 Int VG_(aix5_NR__sigqueue) = __NR_AIX5_UNKNOWN;
153 Int VG_(aix5_NR__sigsuspend) = __NR_AIX5_UNKNOWN;
154 Int VG_(aix5_NR__sigaction) = __NR_AIX5_UNKNOWN;
155 Int VG_(aix5_NR_sigprocmask) = __NR_AIX5_UNKNOWN;
156 Int VG_(aix5_NR_siglocalmask) = __NR_AIX5_UNKNOWN;
157 Int VG_(aix5_NR_count_event_waiters) = __NR_AIX5_UNKNOWN;
158 Int VG_(aix5_NR_thread_waitact) = __NR_AIX5_UNKNOWN;
159 Int VG_(aix5_NR_thread_waitlock_local) = __NR_AIX5_UNKNOWN;
160 Int VG_(aix5_NR_thread_waitlock) = __NR_AIX5_UNKNOWN;
161 Int VG_(aix5_NR_thread_wait) = __NR_AIX5_UNKNOWN;
162 Int VG_(aix5_NR_thread_unlock) = __NR_AIX5_UNKNOWN;
163 Int VG_(aix5_NR_thread_twakeup_unlock) = __NR_AIX5_UNKNOWN;
164 Int VG_(aix5_NR_thread_twakeup_event) = __NR_AIX5_UNKNOWN;
165 Int VG_(aix5_NR_thread_twakeup) = __NR_AIX5_UNKNOWN;
166 Int VG_(aix5_NR_thread_tsleep_event) = __NR_AIX5_UNKNOWN;
167 Int VG_(aix5_NR_thread_tsleep_chkpnt) = __NR_AIX5_UNKNOWN;
168 Int VG_(aix5_NR_thread_tsleep) = __NR_AIX5_UNKNOWN;
169 Int VG_(aix5_NR_thread_post_many) = __NR_AIX5_UNKNOWN;
170 Int VG_(aix5_NR_thread_post) = __NR_AIX5_UNKNOWN;
171 Int VG_(aix5_NR_ue_proc_unregister) = __NR_AIX5_UNKNOWN;
172 Int VG_(aix5_NR_ue_proc_register) = __NR_AIX5_UNKNOWN;
173 Int VG_(aix5_NR_kthread_ctl) = __NR_AIX5_UNKNOWN;
174 Int VG_(aix5_NR__thread_setsched) = __NR_AIX5_UNKNOWN;
175 Int VG_(aix5_NR_threads_runnable) = __NR_AIX5_UNKNOWN;
176 Int VG_(aix5_NR_thread_getregs) = __NR_AIX5_UNKNOWN;
177 Int VG_(aix5_NR_thread_terminate_unlock) = __NR_AIX5_UNKNOWN;
178 Int VG_(aix5_NR_thread_terminate_ack) = __NR_AIX5_UNKNOWN;
179 Int VG_(aix5_NR_thread_setstate_fast) = __NR_AIX5_UNKNOWN;
180 Int VG_(aix5_NR_thread_setstate) = __NR_AIX5_UNKNOWN;
181 Int VG_(aix5_NR_thread_setmymask_fast) = __NR_AIX5_UNKNOWN;
182 Int VG_(aix5_NR_thread_setmystate_fast) = __NR_AIX5_UNKNOWN;
183 Int VG_(aix5_NR_thread_setmystate) = __NR_AIX5_UNKNOWN;
184 Int VG_(aix5_NR_thread_init) = __NR_AIX5_UNKNOWN;
185 Int VG_(aix5_NR_times) = __NR_AIX5_UNKNOWN;
186 Int VG_(aix5_NR__nsleep) = __NR_AIX5_UNKNOWN;
187 Int VG_(aix5_NR_reltimerid) = __NR_AIX5_UNKNOWN;
188 Int VG_(aix5_NR_appresinc) = __NR_AIX5_UNKNOWN;
189 Int VG_(aix5_NR_apprestimer) = __NR_AIX5_UNKNOWN;
190 Int VG_(aix5_NR_appresabs) = __NR_AIX5_UNKNOWN;
191 Int VG_(aix5_NR_appsettimer) = __NR_AIX5_UNKNOWN;
192 Int VG_(aix5_NR_appgettimer) = __NR_AIX5_UNKNOWN;
193 Int VG_(aix5_NR_gettimerid) = __NR_AIX5_UNKNOWN;
194 Int VG_(aix5_NR_incinterval) = __NR_AIX5_UNKNOWN;
195 Int VG_(aix5_NR_absinterval) = __NR_AIX5_UNKNOWN;
196 Int VG_(aix5_NR_getinterval) = __NR_AIX5_UNKNOWN;
197 Int VG_(aix5_NR_upfget) = __NR_AIX5_UNKNOWN;
198 Int VG_(aix5_NR__wlm_wait) = __NR_AIX5_UNKNOWN;
199 Int VG_(aix5_NR__wlm_post) = __NR_AIX5_UNKNOWN;
200 Int VG_(aix5_NR__wlm_event_init) = __NR_AIX5_UNKNOWN;
201 Int VG_(aix5_NR__wlm_set_tag) = __NR_AIX5_UNKNOWN;
202 Int VG_(aix5_NR__wlm_set) = __NR_AIX5_UNKNOWN;
203 Int VG_(aix5_NR_ptrace64) = __NR_AIX5_UNKNOWN;
204 Int VG_(aix5_NR_ptracex) = __NR_AIX5_UNKNOWN;
205 Int VG_(aix5_NR_ptrace) = __NR_AIX5_UNKNOWN;
206 Int VG_(aix5_NR_ksetcontext_sigreturn) = __NR_AIX5_UNKNOWN;
207 Int VG_(aix5_NR_ksetcontext) = __NR_AIX5_UNKNOWN;
208 Int VG_(aix5_NR_kgetcontext) = __NR_AIX5_UNKNOWN;
209 Int VG_(aix5_NR_sigreturn) = __NR_AIX5_UNKNOWN;
210 Int VG_(aix5_NR__wlm_get_bio_stats) = __NR_AIX5_UNKNOWN;
211 Int VG_(aix5_NR_splice) = __NR_AIX5_UNKNOWN;
212 Int VG_(aix5_NR_rmsock) = __NR_AIX5_UNKNOWN;
213 Int VG_(aix5_NR_nrecvmsg) = __NR_AIX5_UNKNOWN;
214 Int VG_(aix5_NR_socket_aio_dequeue) = __NR_AIX5_UNKNOWN;
215 Int VG_(aix5_NR_getkerninfo) = __NR_AIX5_UNKNOWN;
216 Int VG_(aix5_NR_getpeereid) = __NR_AIX5_UNKNOWN;
217 Int VG_(aix5_NR_getpeername) = __NR_AIX5_UNKNOWN;
218 Int VG_(aix5_NR_ngetpeername) = __NR_AIX5_UNKNOWN;
219 Int VG_(aix5_NR_getsockname) = __NR_AIX5_UNKNOWN;
220 Int VG_(aix5_NR_ngetsockname) = __NR_AIX5_UNKNOWN;
221 Int VG_(aix5_NR_getsockopt) = __NR_AIX5_UNKNOWN;
222 Int VG_(aix5_NR_setsockopt) = __NR_AIX5_UNKNOWN;
223 Int VG_(aix5_NR_shutdown) = __NR_AIX5_UNKNOWN;
224 Int VG_(aix5_NR_recvmsg) = __NR_AIX5_UNKNOWN;
225 Int VG_(aix5_NR_recv) = __NR_AIX5_UNKNOWN;
226 Int VG_(aix5_NR_nrecvfrom) = __NR_AIX5_UNKNOWN;
227 Int VG_(aix5_NR_recvfrom) = __NR_AIX5_UNKNOWN;
228 Int VG_(aix5_NR_nsendmsg) = __NR_AIX5_UNKNOWN;
229 Int VG_(aix5_NR_sendmsg) = __NR_AIX5_UNKNOWN;
230 Int VG_(aix5_NR_send) = __NR_AIX5_UNKNOWN;
231 Int VG_(aix5_NR_sendto) = __NR_AIX5_UNKNOWN;
232 Int VG_(aix5_NR_socketpair) = __NR_AIX5_UNKNOWN;
233 Int VG_(aix5_NR_accept) = __NR_AIX5_UNKNOWN;
234 Int VG_(aix5_NR_naccept) = __NR_AIX5_UNKNOWN;
235 Int VG_(aix5_NR_listen) = __NR_AIX5_UNKNOWN;
236 Int VG_(aix5_NR_bind) = __NR_AIX5_UNKNOWN;
237 Int VG_(aix5_NR_socket) = __NR_AIX5_UNKNOWN;
238 Int VG_(aix5_NR_connext) = __NR_AIX5_UNKNOWN;
239 Int VG_(aix5_NR_setdomainname) = __NR_AIX5_UNKNOWN;
240 Int VG_(aix5_NR_getdomainname) = __NR_AIX5_UNKNOWN;
241 Int VG_(aix5_NR_sethostname) = __NR_AIX5_UNKNOWN;
242 Int VG_(aix5_NR_sethostid) = __NR_AIX5_UNKNOWN;
243 Int VG_(aix5_NR_gethostid) = __NR_AIX5_UNKNOWN;
244 Int VG_(aix5_NR_gethostname) = __NR_AIX5_UNKNOWN;
245 Int VG_(aix5_NR_send_file) = __NR_AIX5_UNKNOWN;
246 Int VG_(aix5_NR__rmlmbcost) = __NR_AIX5_UNKNOWN;
247 Int VG_(aix5_NR___rs_pickmcm) = __NR_AIX5_UNKNOWN;
248 Int VG_(aix5_NR_rs_getsystem) = __NR_AIX5_UNKNOWN;
249 Int VG_(aix5_NR_rs_getassociativity) = __NR_AIX5_UNKNOWN;
250 Int VG_(aix5_NR_rs_setpartition) = __NR_AIX5_UNKNOWN;
251 Int VG_(aix5_NR_rs_getpartition) = __NR_AIX5_UNKNOWN;
252 Int VG_(aix5_NR_ra_getrset) = __NR_AIX5_UNKNOWN;
253 Int VG_(aix5_NR_rs_getinfo) = __NR_AIX5_UNKNOWN;
254 Int VG_(aix5_NR_rs_getrad) = __NR_AIX5_UNKNOWN;
255 Int VG_(aix5_NR_rs_numrads) = __NR_AIX5_UNKNOWN;
256 Int VG_(aix5_NR___kdb_format_print_rele) = __NR_AIX5_UNKNOWN;
257 Int VG_(aix5_NR___kdb_format_print_init) = __NR_AIX5_UNKNOWN;
258 Int VG_(aix5_NR_close) = __NR_AIX5_UNKNOWN;
259 Int VG_(aix5_NR_kfsync_range) = __NR_AIX5_UNKNOWN;
260 Int VG_(aix5_NR_fsync) = __NR_AIX5_UNKNOWN;
261 Int VG_(aix5_NR_kpwrite) = __NR_AIX5_UNKNOWN;
262 Int VG_(aix5_NR_kwritev) = __NR_AIX5_UNKNOWN;
263 Int VG_(aix5_NR_kwrite) = __NR_AIX5_UNKNOWN;
264 Int VG_(aix5_NR_kpread) = __NR_AIX5_UNKNOWN;
265 Int VG_(aix5_NR_kreadv) = __NR_AIX5_UNKNOWN;
266 Int VG_(aix5_NR_kread) = __NR_AIX5_UNKNOWN;
267 Int VG_(aix5_NR_klseek) = __NR_AIX5_UNKNOWN;
268 Int VG_(aix5_NR__lseek) = __NR_AIX5_UNKNOWN;
269 Int VG_(aix5_NR_lseek) = __NR_AIX5_UNKNOWN;
270 Int VG_(aix5_NR__setsid) = __NR_AIX5_UNKNOWN;
271 Int VG_(aix5_NR__setpgid) = __NR_AIX5_UNKNOWN;
272 Int VG_(aix5_NR__setpgrp) = __NR_AIX5_UNKNOWN;
273 Int VG_(aix5_NR__getpgrpx) = __NR_AIX5_UNKNOWN;
274 Int VG_(aix5_NR__getpgrp) = __NR_AIX5_UNKNOWN;
275 Int VG_(aix5_NR__getppid) = __NR_AIX5_UNKNOWN;
276 Int VG_(aix5_NR__thread_self) = __NR_AIX5_UNKNOWN;
277 Int VG_(aix5_NR__getpid) = __NR_AIX5_UNKNOWN;
278 Int VG_(aix5_NR_kgetpgidx) = __NR_AIX5_UNKNOWN;
279 Int VG_(aix5_NR_setuid) = __NR_AIX5_UNKNOWN;
280 Int VG_(aix5_NR_setuidx) = __NR_AIX5_UNKNOWN;
281 Int VG_(aix5_NR_getuidx) = __NR_AIX5_UNKNOWN;
282 Int VG_(aix5_NR_seteuid) = __NR_AIX5_UNKNOWN;
283 Int VG_(aix5_NR_setreuid) = __NR_AIX5_UNKNOWN;
284 Int VG_(aix5_NR_chdir) = __NR_AIX5_UNKNOWN;
285 Int VG_(aix5_NR_fchdir) = __NR_AIX5_UNKNOWN;
286 Int VG_(aix5_NR_chroot) = __NR_AIX5_UNKNOWN;
287 Int VG_(aix5_NR_fchmod) = __NR_AIX5_UNKNOWN;
288 Int VG_(aix5_NR_chmod) = __NR_AIX5_UNKNOWN;
289 Int VG_(aix5_NR_chown) = __NR_AIX5_UNKNOWN;
290 Int VG_(aix5_NR_lchown) = __NR_AIX5_UNKNOWN;
291 Int VG_(aix5_NR_fchown) = __NR_AIX5_UNKNOWN;
292 Int VG_(aix5_NR_fchownx) = __NR_AIX5_UNKNOWN;
293 Int VG_(aix5_NR_chownx) = __NR_AIX5_UNKNOWN;
294 Int VG_(aix5_NR_kfclear) = __NR_AIX5_UNKNOWN;
295 Int VG_(aix5_NR_fclear) = __NR_AIX5_UNKNOWN;
296 Int VG_(aix5_NR_ffinfo) = __NR_AIX5_UNKNOWN;
297 Int VG_(aix5_NR_finfo) = __NR_AIX5_UNKNOWN;
298 Int VG_(aix5_NR_fscntl) = __NR_AIX5_UNKNOWN;
299 Int VG_(aix5_NR_ktruncate) = __NR_AIX5_UNKNOWN;
300 Int VG_(aix5_NR_kftruncate) = __NR_AIX5_UNKNOWN;
301 Int VG_(aix5_NR_truncate) = __NR_AIX5_UNKNOWN;
302 Int VG_(aix5_NR_ftruncate) = __NR_AIX5_UNKNOWN;
303 Int VG_(aix5_NR_getdirent64) = __NR_AIX5_UNKNOWN;
304 Int VG_(aix5_NR_getdirent) = __NR_AIX5_UNKNOWN;
305 Int VG_(aix5_NR_kioctl32) = __NR_AIX5_UNKNOWN;
306 Int VG_(aix5_NR_kioctl) = __NR_AIX5_UNKNOWN;
307 Int VG_(aix5_NR_link) = __NR_AIX5_UNKNOWN;
308 Int VG_(aix5_NR_klockf) = __NR_AIX5_UNKNOWN;
309 Int VG_(aix5_NR_lockf) = __NR_AIX5_UNKNOWN;
310 Int VG_(aix5_NR_mkdir) = __NR_AIX5_UNKNOWN;
311 Int VG_(aix5_NR_mknod) = __NR_AIX5_UNKNOWN;
312 Int VG_(aix5_NR_mntctl) = __NR_AIX5_UNKNOWN;
313 Int VG_(aix5_NR_vmount) = __NR_AIX5_UNKNOWN;
314 Int VG_(aix5_NR_creat) = __NR_AIX5_UNKNOWN;
315 Int VG_(aix5_NR_openx) = __NR_AIX5_UNKNOWN;
316 Int VG_(aix5_NR_open) = __NR_AIX5_UNKNOWN;
317 Int VG_(aix5_NR_quotactl) = __NR_AIX5_UNKNOWN;
318 Int VG_(aix5_NR_rename) = __NR_AIX5_UNKNOWN;
319 Int VG_(aix5_NR_rmdir) = __NR_AIX5_UNKNOWN;
320 Int VG_(aix5_NR_fstatx) = __NR_AIX5_UNKNOWN;
321 Int VG_(aix5_NR_statx) = __NR_AIX5_UNKNOWN;
322 Int VG_(aix5_NR_symlink) = __NR_AIX5_UNKNOWN;
323 Int VG_(aix5_NR_readlink) = __NR_AIX5_UNKNOWN;
324 Int VG_(aix5_NR_syncvfs) = __NR_AIX5_UNKNOWN;
325 Int VG_(aix5_NR_sync) = __NR_AIX5_UNKNOWN;
326 Int VG_(aix5_NR_umask) = __NR_AIX5_UNKNOWN;
327 Int VG_(aix5_NR_uvmount) = __NR_AIX5_UNKNOWN;
328 Int VG_(aix5_NR_umount) = __NR_AIX5_UNKNOWN;
329 Int VG_(aix5_NR_unameu) = __NR_AIX5_UNKNOWN;
330 Int VG_(aix5_NR_unamex) = __NR_AIX5_UNKNOWN;
331 Int VG_(aix5_NR_uname) = __NR_AIX5_UNKNOWN;
332 Int VG_(aix5_NR_unlink) = __NR_AIX5_UNKNOWN;
333 Int VG_(aix5_NR_ustat) = __NR_AIX5_UNKNOWN;
334 Int VG_(aix5_NR_utimes) = __NR_AIX5_UNKNOWN;
335 Int VG_(aix5_NR___msgxrcv) = __NR_AIX5_UNKNOWN;
336 Int VG_(aix5_NR___msgrcv) = __NR_AIX5_UNKNOWN;
337 Int VG_(aix5_NR___msgsnd) = __NR_AIX5_UNKNOWN;
338 Int VG_(aix5_NR_msgctl) = __NR_AIX5_UNKNOWN;
339 Int VG_(aix5_NR_msgget) = __NR_AIX5_UNKNOWN;
340 Int VG_(aix5_NR_getgidx) = __NR_AIX5_UNKNOWN;
341 Int VG_(aix5_NR___semop) = __NR_AIX5_UNKNOWN;
342 Int VG_(aix5_NR_semget) = __NR_AIX5_UNKNOWN;
343 Int VG_(aix5_NR_semctl) = __NR_AIX5_UNKNOWN;
344 Int VG_(aix5_NR_shmctl) = __NR_AIX5_UNKNOWN;
345 Int VG_(aix5_NR_shmdt) = __NR_AIX5_UNKNOWN;
346 Int VG_(aix5_NR_shmat) = __NR_AIX5_UNKNOWN;
347 Int VG_(aix5_NR_shmget) = __NR_AIX5_UNKNOWN;
348 Int VG_(aix5_NR_ra_shmgetv) = __NR_AIX5_UNKNOWN;
349 Int VG_(aix5_NR_ra_shmget) = __NR_AIX5_UNKNOWN;
350 Int VG_(aix5_NR_privcheck) = __NR_AIX5_UNKNOWN;
351 Int VG_(aix5_NR_disclaim) = __NR_AIX5_UNKNOWN;
352 Int VG_(aix5_NR__sem_destroy_unnamed) = __NR_AIX5_UNKNOWN;
353 Int VG_(aix5_NR__sem_wait) = __NR_AIX5_UNKNOWN;
354 Int VG_(aix5_NR__sem_close) = __NR_AIX5_UNKNOWN;
355 Int VG_(aix5_NR__sem_open) = __NR_AIX5_UNKNOWN;
356 Int VG_(aix5_NR_sem_unlink) = __NR_AIX5_UNKNOWN;
357 Int VG_(aix5_NR_sem_post) = __NR_AIX5_UNKNOWN;
358 Int VG_(aix5_NR_sem_init) = __NR_AIX5_UNKNOWN;
359 Int VG_(aix5_NR_sem_getvalue) = __NR_AIX5_UNKNOWN;
360 Int VG_(aix5_NR_sem_destroy) = __NR_AIX5_UNKNOWN;
361 Int VG_(aix5_NR__mq_notify) = __NR_AIX5_UNKNOWN;
362 Int VG_(aix5_NR__mq_open) = __NR_AIX5_UNKNOWN;
363 Int VG_(aix5_NR_mq_unlink) = __NR_AIX5_UNKNOWN;
364 Int VG_(aix5_NR_mq_setattr) = __NR_AIX5_UNKNOWN;
365 Int VG_(aix5_NR_mq_send) = __NR_AIX5_UNKNOWN;
366 Int VG_(aix5_NR_mq_receive) = __NR_AIX5_UNKNOWN;
367 Int VG_(aix5_NR_mq_getattr) = __NR_AIX5_UNKNOWN;
368 Int VG_(aix5_NR_mq_close) = __NR_AIX5_UNKNOWN;
369 Int VG_(aix5_NR_shm_unlink) = __NR_AIX5_UNKNOWN;
370 Int VG_(aix5_NR_shm_open) = __NR_AIX5_UNKNOWN;
371 Int VG_(aix5_NR__poll) = __NR_AIX5_UNKNOWN;
372 Int VG_(aix5_NR__select) = __NR_AIX5_UNKNOWN;
373 Int VG_(aix5_NR_sysconfig) = __NR_AIX5_UNKNOWN;
374 Int VG_(aix5_NR_sys_parm) = __NR_AIX5_UNKNOWN;
375 Int VG_(aix5_NR_loadquery) = __NR_AIX5_UNKNOWN;
376 Int VG_(aix5_NR_knlist) = __NR_AIX5_UNKNOWN;
377 Int VG_(aix5_NR_brk) = __NR_AIX5_UNKNOWN;
378 Int VG_(aix5_NR_fjfs_sys_call) = __NR_AIX5_UNKNOWN;
379 Int VG_(aix5_NR_jfs_sys_call) = __NR_AIX5_UNKNOWN;
380 Int VG_(aix5_NR_acct) = __NR_AIX5_UNKNOWN;
381 Int VG_(aix5_NR__dr_unregister) = __NR_AIX5_UNKNOWN;
382 Int VG_(aix5_NR__dr_notify) = __NR_AIX5_UNKNOWN;
383 Int VG_(aix5_NR__dr_register) = __NR_AIX5_UNKNOWN;
384 Int VG_(aix5_NR_getlparload) = __NR_AIX5_UNKNOWN;
385 Int VG_(aix5_NR_dr_reconfig) = __NR_AIX5_UNKNOWN;
386 Int VG_(aix5_NR_projctl) = __NR_AIX5_UNKNOWN;
387 Int VG_(aix5_NR_sbrk) = __NR_AIX5_UNKNOWN;
388 Int VG_(aix5_NR__sigpending) = __NR_AIX5_UNKNOWN;
389 Int VG_(aix5_NR__pause) = __NR_AIX5_UNKNOWN;
390 Int VG_(aix5_NR_thread_kill) = __NR_AIX5_UNKNOWN;
391 Int VG_(aix5_NR_sigstack) = __NR_AIX5_UNKNOWN;
392 Int VG_(aix5_NR_sigaltstack) = __NR_AIX5_UNKNOWN;
393 Int VG_(aix5_NR_appulimit) = __NR_AIX5_UNKNOWN;
394 Int VG_(aix5_NR_ras_service) = __NR_AIX5_UNKNOWN;
395 Int VG_(aix5_NR__wlm_class_descr2key) = __NR_AIX5_UNKNOWN;
396 Int VG_(aix5_NR__wlm_get_procinfo) = __NR_AIX5_UNKNOWN;
397 Int VG_(aix5_NR__wlm_get_info) = __NR_AIX5_UNKNOWN;
398 Int VG_(aix5_NR__wlm_getclassname) = __NR_AIX5_UNKNOWN;
399 Int VG_(aix5_NR__wlm_unload_classes) = __NR_AIX5_UNKNOWN;
400 Int VG_(aix5_NR__wlm_load) = __NR_AIX5_UNKNOWN;
401 Int VG_(aix5_NR__wlm_tune) = __NR_AIX5_UNKNOWN;
402 Int VG_(aix5_NR__wlm_assign) = __NR_AIX5_UNKNOWN;
403 Int VG_(aix5_NR__wlm_classify) = __NR_AIX5_UNKNOWN;
404 Int VG_(aix5_NR_fp_cpusync) = __NR_AIX5_UNKNOWN;
405 Int VG_(aix5_NR__fp_trapstate_ker) = __NR_AIX5_UNKNOWN;
406 Int VG_(aix5_NR__ewlm_classify_correlator) = __NR_AIX5_UNKNOWN;
407 Int VG_(aix5_NR__arm_stop_transaction) = __NR_AIX5_UNKNOWN;
408 Int VG_(aix5_NR__arm_destroy_application) = __NR_AIX5_UNKNOWN;
409 Int VG_(aix5_NR__arm_stop_application) = __NR_AIX5_UNKNOWN;
410 Int VG_(aix5_NR__arm_generate_correlator) = __NR_AIX5_UNKNOWN;
411 Int VG_(aix5_NR__arm_discard_transaction) = __NR_AIX5_UNKNOWN;
412 Int VG_(aix5_NR__arm_unbind_thread) = __NR_AIX5_UNKNOWN;
413 Int VG_(aix5_NR__arm_bind_thread) = __NR_AIX5_UNKNOWN;
414 Int VG_(aix5_NR__arm_unblock_transaction) = __NR_AIX5_UNKNOWN;
415 Int VG_(aix5_NR__arm_block_transaction) = __NR_AIX5_UNKNOWN;
416 Int VG_(aix5_NR__arm_update_transaction) = __NR_AIX5_UNKNOWN;
417 Int VG_(aix5_NR__arm_register_metric) = __NR_AIX5_UNKNOWN;
418 Int VG_(aix5_NR__arm_report_transaction) = __NR_AIX5_UNKNOWN;
419 Int VG_(aix5_NR__arm_start_transaction) = __NR_AIX5_UNKNOWN;
420 Int VG_(aix5_NR__arm_register_transaction) = __NR_AIX5_UNKNOWN;
421 Int VG_(aix5_NR__arm_start_application) = __NR_AIX5_UNKNOWN;
422 Int VG_(aix5_NR__arm_register_application) = __NR_AIX5_UNKNOWN;
423 Int VG_(aix5_NR__lsarm_getinfo) = __NR_AIX5_UNKNOWN;
424 Int VG_(aix5_NR__ewlm_init) = __NR_AIX5_UNKNOWN;
425 Int VG_(aix5_NR__ewlm_query) = __NR_AIX5_UNKNOWN;
426 Int VG_(aix5_NR_ewlm_verify_policy) = __NR_AIX5_UNKNOWN;
427 Int VG_(aix5_NR_ewlm_abort_policy) = __NR_AIX5_UNKNOWN;
428 Int VG_(aix5_NR_ewlm_commit_policy) = __NR_AIX5_UNKNOWN;
429 Int VG_(aix5_NR_ewlm_prepare_policy) = __NR_AIX5_UNKNOWN;
430 Int VG_(aix5_NR_ewlm_get_completions) = __NR_AIX5_UNKNOWN;
431 Int VG_(aix5_NR_ewlm_get_activedata) = __NR_AIX5_UNKNOWN;
432 Int VG_(aix5_NR_ewlm_get_appldata) = __NR_AIX5_UNKNOWN;
433 Int VG_(aix5_NR_ewlm_collect_samples) = __NR_AIX5_UNKNOWN;
434 Int VG_(aix5_NR_ewlm_disconnect) = __NR_AIX5_UNKNOWN;
435 Int VG_(aix5_NR_ewlm_connect) = __NR_AIX5_UNKNOWN;
436 Int VG_(aix5_NR_auditlog) = __NR_AIX5_UNKNOWN;
437 Int VG_(aix5_NR_auditproc) = __NR_AIX5_UNKNOWN;
438 Int VG_(aix5_NR_getgroups) = __NR_AIX5_UNKNOWN;
439 Int VG_(aix5_NR_setgid) = __NR_AIX5_UNKNOWN;
440 Int VG_(aix5_NR_setgidx) = __NR_AIX5_UNKNOWN;
441 Int VG_(aix5_NR_setgroups) = __NR_AIX5_UNKNOWN;
442 Int VG_(aix5_NR_frevoke) = __NR_AIX5_UNKNOWN;
443 Int VG_(aix5_NR_revoke) = __NR_AIX5_UNKNOWN;
444 Int VG_(aix5_NR___pag_setvalue) = __NR_AIX5_UNKNOWN;
445 Int VG_(aix5_NR___pag_getvalue) = __NR_AIX5_UNKNOWN;
446 Int VG_(aix5_NR___pag_getid) = __NR_AIX5_UNKNOWN;
447 Int VG_(aix5_NR___pag_getname) = __NR_AIX5_UNKNOWN;
448 Int VG_(aix5_NR___pag_setname) = __NR_AIX5_UNKNOWN;
449 Int VG_(aix5_NR_kcap_set_proc) = __NR_AIX5_UNKNOWN;
450 Int VG_(aix5_NR_kcap_get_proc) = __NR_AIX5_UNKNOWN;
451 Int VG_(aix5_NR_pipe) = __NR_AIX5_UNKNOWN;
452 Int VG_(aix5_NR_mwakeup) = __NR_AIX5_UNKNOWN;
453 Int VG_(aix5_NR___msleep) = __NR_AIX5_UNKNOWN;
454 Int VG_(aix5_NR_kmmap) = __NR_AIX5_UNKNOWN;
455 Int VG_(aix5_NR_msem_remove) = __NR_AIX5_UNKNOWN;
456 Int VG_(aix5_NR_mincore) = __NR_AIX5_UNKNOWN;
457 Int VG_(aix5_NR_madvise) = __NR_AIX5_UNKNOWN;
458 Int VG_(aix5_NR_munmap) = __NR_AIX5_UNKNOWN;
459 Int VG_(aix5_NR_msync) = __NR_AIX5_UNKNOWN;
460 Int VG_(aix5_NR_mprotect) = __NR_AIX5_UNKNOWN;
461 Int VG_(aix5_NR_mmap) = __NR_AIX5_UNKNOWN;
462 Int VG_(aix5_NR_swapqry) = __NR_AIX5_UNKNOWN;
463 Int VG_(aix5_NR_swapon) = __NR_AIX5_UNKNOWN;
464 Int VG_(aix5_NR_swapoff) = __NR_AIX5_UNKNOWN;
465 Int VG_(aix5_NR_psdanger) = __NR_AIX5_UNKNOWN;
466 Int VG_(aix5_NR_vmgetinfo) = __NR_AIX5_UNKNOWN;
467 Int VG_(aix5_NR_rs_admregistername) = __NR_AIX5_UNKNOWN;
468 Int VG_(aix5_NR_rs_discardname) = __NR_AIX5_UNKNOWN;
469 Int VG_(aix5_NR_rs_setnameattr) = __NR_AIX5_UNKNOWN;
470 Int VG_(aix5_NR_rs_registername) = __NR_AIX5_UNKNOWN;
471 Int VG_(aix5_NR_rs_getnamedrset) = __NR_AIX5_UNKNOWN;
472 Int VG_(aix5_NR_rs_getnameattr) = __NR_AIX5_UNKNOWN;
473 Int VG_(aix5_NR_rs_getrsetnames) = __NR_AIX5_UNKNOWN;
474 Int VG_(aix5_NR_ra_attachrset) = __NR_AIX5_UNKNOWN;
475 Int VG_(aix5_NR_ra_detachrset) = __NR_AIX5_UNKNOWN;
476 Int VG_(aix5_NR_dmapi_init) = __NR_AIX5_UNKNOWN;
477 Int VG_(aix5_NR_kdm_ioctl) = __NR_AIX5_UNKNOWN;
478 Int VG_(aix5_NR_access) = __NR_AIX5_UNKNOWN;
479 Int VG_(aix5_NR_accessx) = __NR_AIX5_UNKNOWN;
480 Int VG_(aix5_NR_kfcntl) = __NR_AIX5_UNKNOWN;
481 Int VG_(aix5_NR___pfcntl) = __NR_AIX5_UNKNOWN;
482 Int VG_(aix5_NR_fstatfs64) = __NR_AIX5_UNKNOWN;
483 Int VG_(aix5_NR_statfs64) = __NR_AIX5_UNKNOWN;
484 Int VG_(aix5_NR_fstatfs) = __NR_AIX5_UNKNOWN;
485 Int VG_(aix5_NR_statfs) = __NR_AIX5_UNKNOWN;
486 Int VG_(aix5_NR_probe) = __NR_AIX5_UNKNOWN;
487 Int VG_(aix5_NR_cmp_swap) = __NR_AIX5_UNKNOWN;
488 Int VG_(aix5_NR__validate_pag) = __NR_AIX5_UNKNOWN;
489 Int VG_(aix5_NR_kgetsidx) = __NR_AIX5_UNKNOWN;
490 Int VG_(aix5_NR_kgetsid) = __NR_AIX5_UNKNOWN;
491 Int VG_(aix5_NR_plock) = __NR_AIX5_UNKNOWN;
492 Int VG_(aix5_NR_upfput) = __NR_AIX5_UNKNOWN;
493 Int VG_(aix5_NR_usrinfo) = __NR_AIX5_UNKNOWN;
494 Int VG_(aix5_NR_audit) = __NR_AIX5_UNKNOWN;
495 Int VG_(aix5_NR_auditobj) = __NR_AIX5_UNKNOWN;
496 Int VG_(aix5_NR_auditbin) = __NR_AIX5_UNKNOWN;
497 Int VG_(aix5_NR_auditevents) = __NR_AIX5_UNKNOWN;
498 Int VG_(aix5_NR_faccessx) = __NR_AIX5_UNKNOWN;
499 Int VG_(aix5_NR___fchaclx) = __NR_AIX5_UNKNOWN;
500 Int VG_(aix5_NR___chaclx) = __NR_AIX5_UNKNOWN;
501 Int VG_(aix5_NR_fchacl) = __NR_AIX5_UNKNOWN;
502 Int VG_(aix5_NR_chacl) = __NR_AIX5_UNKNOWN;
503 Int VG_(aix5_NR___fstataclx) = __NR_AIX5_UNKNOWN;
504 Int VG_(aix5_NR___stataclx) = __NR_AIX5_UNKNOWN;
505 Int VG_(aix5_NR_fstatacl) = __NR_AIX5_UNKNOWN;
506 Int VG_(aix5_NR_statacl) = __NR_AIX5_UNKNOWN;
507 Int VG_(aix5_NR_setpriv) = __NR_AIX5_UNKNOWN;
508 Int VG_(aix5_NR_getpriv) = __NR_AIX5_UNKNOWN;
509 Int VG_(aix5_NR_fstatpriv) = __NR_AIX5_UNKNOWN;
510 Int VG_(aix5_NR_statpriv) = __NR_AIX5_UNKNOWN;
511 Int VG_(aix5_NR_fchpriv) = __NR_AIX5_UNKNOWN;
512 Int VG_(aix5_NR_chpriv) = __NR_AIX5_UNKNOWN;
513 Int VG_(aix5_NR_i_int2cpu_pal) = __NR_AIX5_UNKNOWN;
514 Int VG_(aix5_NR_hd_cfg) = __NR_AIX5_UNKNOWN;
515 Int VG_(aix5_NR_putpmsg) = __NR_AIX5_UNKNOWN;
516 Int VG_(aix5_NR_putmsg) = __NR_AIX5_UNKNOWN;
517 Int VG_(aix5_NR_getpmsg) = __NR_AIX5_UNKNOWN;
518 Int VG_(aix5_NR_getmsg) = __NR_AIX5_UNKNOWN;
519 Int VG_(aix5_NR_strinfo) = __NR_AIX5_UNKNOWN;
520 Int VG_(aix5_NR_strreset) = __NR_AIX5_UNKNOWN;
521 Int VG_(aix5_NR_dupmsg) = __NR_AIX5_UNKNOWN;
522 Int VG_(aix5_NR__kgrantpt) = __NR_AIX5_UNKNOWN;
523 Int VG_(aix5_NR_aixgsc) = __NR_AIX5_UNKNOWN;
524 Int VG_(aix5_NR_smaccept) = __NR_AIX5_UNKNOWN;
525 Int VG_(aix5_NR_smconnect) = __NR_AIX5_UNKNOWN;
526 Int VG_(aix5_NR_smlisten) = __NR_AIX5_UNKNOWN;
527 Int VG_(aix5_NR_smbind) = __NR_AIX5_UNKNOWN;
528 Int VG_(aix5_NR_smsocket) = __NR_AIX5_UNKNOWN;
529 Int VG_(aix5_NR_smdetatt) = __NR_AIX5_UNKNOWN;
530 Int VG_(aix5_NR_smattach) = __NR_AIX5_UNKNOWN;
531 Int VG_(aix5_NR_smselect) = __NR_AIX5_UNKNOWN;
532 Int VG_(aix5_NR_smwait) = __NR_AIX5_UNKNOWN;
533 Int VG_(aix5_NR_smsetthresh) = __NR_AIX5_UNKNOWN;
534 Int VG_(aix5_NR_smsendbuff) = __NR_AIX5_UNKNOWN;
535 Int VG_(aix5_NR_smfreebuff) = __NR_AIX5_UNKNOWN;
536 Int VG_(aix5_NR_smrcvbuff) = __NR_AIX5_UNKNOWN;
537 Int VG_(aix5_NR_smgetbuff) = __NR_AIX5_UNKNOWN;
538 Int VG_(aix5_NR_smversion) = __NR_AIX5_UNKNOWN;
539 Int VG_(aix5_NR_smtcheckinit) = __NR_AIX5_UNKNOWN;
540 Int VG_(aix5_NR_aio_nwait_timeout) = __NR_AIX5_UNKNOWN;
541 Int VG_(aix5_NR_kaio_stats) = __NR_AIX5_UNKNOWN;
542 Int VG_(aix5_NR_aio_cntl) = __NR_AIX5_UNKNOWN;
543 Int VG_(aix5_NR_listio) = __NR_AIX5_UNKNOWN;
544 Int VG_(aix5_NR_acancel) = __NR_AIX5_UNKNOWN;
545 Int VG_(aix5_NR_iosuspend) = __NR_AIX5_UNKNOWN;
546 Int VG_(aix5_NR_kaio_rdwr) = __NR_AIX5_UNKNOWN;
547 Int VG_(aix5_NR_aio_nwait) = __NR_AIX5_UNKNOWN;
548 Int VG_(aix5_NR__posix_iofsync) = __NR_AIX5_UNKNOWN;
549 Int VG_(aix5_NR__posix_aio_nwait_timeout) = __NR_AIX5_UNKNOWN;
550 Int VG_(aix5_NR__posix_kaio_stats) = __NR_AIX5_UNKNOWN;
551 Int VG_(aix5_NR__posix_listio) = __NR_AIX5_UNKNOWN;
552 Int VG_(aix5_NR__posix_acancel) = __NR_AIX5_UNKNOWN;
553 Int VG_(aix5_NR__posix_iosuspend) = __NR_AIX5_UNKNOWN;
554 Int VG_(aix5_NR__posix_kaio_rdwr) = __NR_AIX5_UNKNOWN;
555 Int VG_(aix5_NR__posix_aio_cntl) = __NR_AIX5_UNKNOWN;
556 Int VG_(aix5_NR__posix_aio_nwait) = __NR_AIX5_UNKNOWN;
557 Int VG_(aix5_NR_nfs_cntl) = __NR_AIX5_UNKNOWN;
558 Int VG_(aix5_NR_nfssvc) = __NR_AIX5_UNKNOWN;
559 Int VG_(aix5_NR_nfs_getfh) = __NR_AIX5_UNKNOWN;
560 Int VG_(aix5_NR_exportfs) = __NR_AIX5_UNKNOWN;
561 Int VG_(aix5_NR_lm_svc) = __NR_AIX5_UNKNOWN;
562 Int VG_(aix5_NR_pw_config) = __NR_AIX5_UNKNOWN;
563 Int VG_(aix5_NR_pw_post) = __NR_AIX5_UNKNOWN;
564 Int VG_(aix5_NR_pw_wait) = __NR_AIX5_UNKNOWN;
565 Int VG_(aix5_NR_pw_loadavg) = __NR_AIX5_UNKNOWN;
566 Int VG_(aix5_NR_pw_debug) = __NR_AIX5_UNKNOWN;
568 /* Extras for AIX 5.3 */
569 Int VG_(aix5_NR___libc_sbrk) = __NR_AIX5_UNKNOWN;
570 Int VG_(aix5_NR_thread_waitlock_) = __NR_AIX5_UNKNOWN;
571 Int VG_(aix5_NR__fp_fpscrx_sc) = __NR_AIX5_UNKNOWN;
572 Int VG_(aix5_NR_sched_get_priority_max) = __NR_AIX5_UNKNOWN;
574 /* Extras for AIX 5.3 64-bit mode. */
575 Int VG_(aix5_NR_kload) = __NR_AIX5_UNKNOWN;
576 Int VG_(aix5_NR__fp_fpscrx64_) = __NR_AIX5_UNKNOWN;
577 Int VG_(aix5_NR_kunload64) = __NR_AIX5_UNKNOWN;
579 /* We need an extra fake syscall to denote signal handler returns, as
580 used in sigframe-ppc{32,64}-aix5.c. Since we don't know what
581 number we can assign to it, monitor the numbers passed to
582 VG_(aix5_register_syscall), and set it to 10000+the largest syscall
584 Int VG_(aix5_NR_FAKE_SIGRETURN) = __NR_AIX5_UNKNOWN;
588 /* Also make a record of the registered syscalls, so we can print the
589 name in bad_before() (syswrap-main.c) if needed. The obvious
590 approach would be to dump them in an XArray, but that requires
591 dynamic memory allocation, and syscall registration is done before
592 dynamic memory allocation is available. So just use a fixed size
593 array and hope it doesn't fill up. */
594 #define N_BINDINGS 2000
595 static Int bindings_used = 0;
596 static Int bindings_sysno[N_BINDINGS];
597 static UChar* bindings_sysname[N_BINDINGS];
599 Char* VG_(sysnum_string)(Word sysnum, SizeT n_buf, Char* buf)
601 VG_(snprintf)(buf, n_buf, "%3ld", sysnum);
605 Char* VG_(sysnum_string_extra)(Word sysnum, SizeT n_buf, Char* buf)
608 Char* name = "(unknown name)";
609 for (i = 0; i < bindings_used; i++) {
610 if (bindings_sysno[i] == sysnum) {
611 name = bindings_sysname[i];
615 VG_(snprintf)(buf, n_buf, "%3ld (%s)", sysnum, name);
619 static Bool local_streq ( UChar* s1, UChar* s2 ); /* fwds */
621 Bool VG_(aix5_register_syscall)( Int sysno, UChar* sysname )
623 /* Establish the FAKE_SIGRETURN number. */
624 if (VG_(aix5_NR_FAKE_SIGRETURN) == __NR_AIX5_UNKNOWN)
625 VG_(aix5_NR_FAKE_SIGRETURN) = sysno + 10000;
627 if (sysno + 10000 > VG_(aix5_NR_FAKE_SIGRETURN))
628 VG_(aix5_NR_FAKE_SIGRETURN) = sysno + 10000;
630 /* Note the name, just in case bad_before() needs to complain. */
631 if (bindings_used < N_BINDINGS) {
632 bindings_sysno[bindings_used] = sysno;
633 bindings_sysname[bindings_used] = sysname;
637 /* Now do the normal name-to-number binding checks. */
639 if (local_streq(sysname, #name)) { \
640 VG_(aix5_NR_##name) = sysno; \
670 XXX(_checkpnt_commit)
671 XXX(_checkpnt_register)
677 XXX(checkpnt_deliver)
679 XXX(thread_terminate)
709 XXX(_clock_getcpuclockid)
715 XXX(_timer_getoverrun)
723 XXX(count_event_waiters)
725 XXX(thread_waitlock_local)
729 XXX(thread_twakeup_unlock)
730 XXX(thread_twakeup_event)
732 XXX(thread_tsleep_event)
733 XXX(thread_tsleep_chkpnt)
735 XXX(thread_post_many)
737 XXX(ue_proc_unregister)
738 XXX(ue_proc_register)
740 XXX(_thread_setsched)
741 XXX(threads_runnable)
743 XXX(thread_terminate_unlock)
744 XXX(thread_terminate_ack)
745 XXX(thread_setstate_fast)
747 XXX(thread_setmymask_fast)
748 XXX(thread_setmystate_fast)
749 XXX(thread_setmystate)
772 XXX(ksetcontext_sigreturn)
776 XXX(_wlm_get_bio_stats)
780 XXX(socket_aio_dequeue)
815 XXX(rs_getassociativity)
822 XXX(__kdb_format_print_rele)
823 XXX(__kdb_format_print_init)
918 XXX(_sem_destroy_unnamed)
961 XXX(_wlm_class_descr2key)
962 XXX(_wlm_get_procinfo)
964 XXX(_wlm_getclassname)
965 XXX(_wlm_unload_classes)
971 XXX(_fp_trapstate_ker)
972 XXX(_ewlm_classify_correlator)
973 XXX(_arm_stop_transaction)
974 XXX(_arm_destroy_application)
975 XXX(_arm_stop_application)
976 XXX(_arm_generate_correlator)
977 XXX(_arm_discard_transaction)
978 XXX(_arm_unbind_thread)
979 XXX(_arm_bind_thread)
980 XXX(_arm_unblock_transaction)
981 XXX(_arm_block_transaction)
982 XXX(_arm_update_transaction)
983 XXX(_arm_register_metric)
984 XXX(_arm_report_transaction)
985 XXX(_arm_start_transaction)
986 XXX(_arm_register_transaction)
987 XXX(_arm_start_application)
988 XXX(_arm_register_application)
992 XXX(ewlm_verify_policy)
993 XXX(ewlm_abort_policy)
994 XXX(ewlm_commit_policy)
995 XXX(ewlm_prepare_policy)
996 XXX(ewlm_get_completions)
997 XXX(ewlm_get_activedata)
998 XXX(ewlm_get_appldata)
999 XXX(ewlm_collect_samples)
1000 XXX(ewlm_disconnect)
1033 XXX(rs_admregistername)
1036 XXX(rs_registername)
1037 XXX(rs_getnamedrset)
1039 XXX(rs_getrsetnames)
1106 XXX(aio_nwait_timeout)
1115 XXX(_posix_aio_nwait_timeout)
1116 XXX(_posix_kaio_stats)
1119 XXX(_posix_iosuspend)
1120 XXX(_posix_kaio_rdwr)
1121 XXX(_posix_aio_cntl)
1122 XXX(_posix_aio_nwait)
1133 /* Extras for AIX 5.3 */
1135 XXX(thread_waitlock_)
1137 XXX(sched_get_priority_max)
1138 /* Extras for AIX 5.3 64-bit */
1147 static Bool local_streq ( UChar* s1, UChar* s2 )
1150 if (*s1 == 0 && *s2 == 0) return True;
1151 if (*s1 == 0) return False;
1152 if (*s2 == 0) return False;
1153 if (*s1 != *s2) return False;
1158 //---------------------------------------------------------------------------
1159 #elif defined(VGO_darwin)
1160 //---------------------------------------------------------------------------
1162 Char* VG_(sysnum_string)(Word sysnum, SizeT n_buf, Char* buf)
1164 Char* classname = NULL;
1165 switch (VG_DARWIN_SYSNO_CLASS(sysnum)) {
1166 case VG_DARWIN_SYSCALL_CLASS_MACH: classname = "mach"; break;
1167 case VG_DARWIN_SYSCALL_CLASS_UNIX: classname = "unix"; break;
1168 case VG_DARWIN_SYSCALL_CLASS_MDEP: classname = "mdep"; break;
1169 case VG_DARWIN_SYSCALL_CLASS_DIAG: classname = "diag"; break;
1171 VG_(core_panic)("unknown Darwin sysnum class");
1173 VG_(snprintf)(buf, n_buf, "%s:%3ld",
1174 classname, VG_DARWIN_SYSNO_INDEX(sysnum));
1178 Char* VG_(sysnum_string_extra)(Word sysnum, SizeT n_buf, Char* buf)
1180 return VG_(sysnum_string)(sysnum, n_buf, buf);
1183 //---------------------------------------------------------------------------
1185 //---------------------------------------------------------------------------
1189 /*--------------------------------------------------------------------*/
1191 /*--------------------------------------------------------------------*/