|
From: <sv...@va...> - 2006-10-14 19:34:15
|
Author: sewardj
Date: 2006-10-14 20:34:11 +0100 (Sat, 14 Oct 2006)
New Revision: 6227
Log:
This should also have been added as part of r6224.
Added:
trunk/coregrind/m_vkiscnums.c
Added: trunk/coregrind/m_vkiscnums.c
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
--- trunk/coregrind/m_vkiscnums.c (rev 0)
+++ trunk/coregrind/m_vkiscnums.c 2006-10-14 19:34:11 UTC (rev 6227)
@@ -0,0 +1,1099 @@
+
+/*--------------------------------------------------------------------*/
+/*--- Notional "implementation" for m_vkiscnums. ---*/
+/*--- m_vkiscnums.c ---*/
+/*--------------------------------------------------------------------*/
+
+/*
+ This file is part of Valgrind, a dynamic binary instrumentation
+ framework.
+
+ Copyright (C) 2006-2006 OpenWorks LLP
+ in...@op...
+
+ 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.
+*/
+
+#include "pub_core_basics.h"
+#include "pub_core_vkiscnums.h" /* self */
+
+/* We have pub_{core,tool}_vkiscnums.h. This is the matching implementa=
tion
+ for that interface. =20
+
+ On Linux, the interface exports a bunch of "#define __NR_foo 42" styl=
e
+ definitions, so there is no implementation.
+
+ On AIX, syscall numbers are not fixed ahead of time; in principle
+ each process can have its own assignment of numbers to actual
+ syscalls. As a result we have a bunch of global variables to store
+ the number for each syscall, which are assigned to at system
+ startup, and a bunch of #defines which map "__NR_foo" names to
+ these global variables. Initially, when we don't know what a
+ syscall's number is, it is set to __NR_AIX5_UNKNOWN.
+
+ Therefore, on AIX, this module provides a home for those variables.
+
+ It also provides VG_(aix5_register_syscall) to assign numbers to
+ those variables.
+*/
+
+#if defined(VGO_aix5)
+/* These ones are for AIX 5.2. */
+Int VG_(aix5_NR_utrchook_sc) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_thread_create) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_kfork) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_kra_fork) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_execve) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_ra_execve) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR__load) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR___unload) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_loadbind) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR___loadx) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_bindprocessor) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_trcgent) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_trcgen) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_trchk) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_trchkt) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_trchkl) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_trchklt) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_trchkg) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_trchkgt) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_kill) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR__addcpucosts) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_mycpu) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_adjtime) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_checkpnt_block) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR__checkpnt_kill) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR__checkpnt_fail) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR__checkpnt_commit) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR__checkpnt_register) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR__checkpnt) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_setcrid) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_getcrid) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_mkcrid) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_checkpnt_wait) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_checkpnt_deliver) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_gencore) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_thread_terminate) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR__exit) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_kwaitpid64) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_kwaitpid) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_yield) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_getprocs64) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_getevars) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_getargs) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_getthrds64) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_getthrds) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_getprocs) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_sigcleanup) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR__setpri) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR__getpri) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_profil) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_reboot) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_appgetrlimit) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_appsetrlimit) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR__setpriority) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR__getpriority) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_setrlimit64) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_getrlimit64) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_appgetrusage) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_getrusage64) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_getvtid) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_getrtid) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_getrpid) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_restart_wait) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_restart) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR__rmcpucosts) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR__clock_getcpuclockid) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR__clock_settime) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR__clock_gettime) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR__clock_getres) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR__timer_settime) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR__timer_gettime) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR__timer_getoverrun) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR__timer_delete) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR__timer_create) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR__sigqueue) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR__sigsuspend) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR__sigaction) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_sigprocmask) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_siglocalmask) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_count_event_waiters) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_thread_waitact) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_thread_waitlock_local) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_thread_waitlock) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_thread_wait) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_thread_unlock) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_thread_twakeup_unlock) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_thread_twakeup_event) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_thread_twakeup) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_thread_tsleep_event) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_thread_tsleep_chkpnt) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_thread_tsleep) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_thread_post_many) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_thread_post) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_ue_proc_unregister) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_ue_proc_register) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_kthread_ctl) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR__thread_setsched) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_threads_runnable) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_thread_getregs) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_thread_terminate_unlock) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_thread_terminate_ack) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_thread_setstate_fast) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_thread_setstate) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_thread_setmymask_fast) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_thread_setmystate_fast) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_thread_setmystate) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_thread_init) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_times) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR__nsleep) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_reltimerid) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_appresinc) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_apprestimer) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_appresabs) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_appsettimer) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_appgettimer) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_gettimerid) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_incinterval) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_absinterval) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_getinterval) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_upfget) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR__wlm_wait) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR__wlm_post) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR__wlm_event_init) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR__wlm_set_tag) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR__wlm_set) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_ptrace64) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_ptracex) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_ptrace) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_ksetcontext_sigreturn) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_ksetcontext) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_kgetcontext) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_sigreturn) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR__wlm_get_bio_stats) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_splice) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_rmsock) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_nrecvmsg) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_socket_aio_dequeue) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_getkerninfo) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_getpeereid) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_getpeername) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_ngetpeername) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_getsockname) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_ngetsockname) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_getsockopt) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_setsockopt) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_shutdown) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_recvmsg) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_recv) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_nrecvfrom) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_recvfrom) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_nsendmsg) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_sendmsg) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_send) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_sendto) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_socketpair) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_accept) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_naccept) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_listen) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_bind) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_socket) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_connext) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_setdomainname) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_getdomainname) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_sethostname) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_sethostid) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_gethostid) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_gethostname) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_send_file) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR__rmlmbcost) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR___rs_pickmcm) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_rs_getsystem) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_rs_getassociativity) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_rs_setpartition) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_rs_getpartition) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_ra_getrset) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_rs_getinfo) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_rs_getrad) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_rs_numrads) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR___kdb_format_print_rele) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR___kdb_format_print_init) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_close) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_kfsync_range) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_fsync) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_kpwrite) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_kwritev) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_kwrite) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_kpread) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_kreadv) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_kread) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_klseek) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR__lseek) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_lseek) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR__setsid) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR__setpgid) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR__setpgrp) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR__getpgrpx) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR__getpgrp) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR__getppid) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR__thread_self) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR__getpid) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_kgetpgidx) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_setuid) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_setuidx) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_getuidx) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_seteuid) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_setreuid) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_chdir) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_fchdir) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_chroot) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_fchmod) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_chmod) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_chown) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_lchown) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_fchown) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_fchownx) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_chownx) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_kfclear) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_fclear) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_ffinfo) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_finfo) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_fscntl) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_ktruncate) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_kftruncate) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_truncate) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_ftruncate) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_getdirent64) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_getdirent) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_kioctl32) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_kioctl) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_link) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_klockf) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_lockf) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_mkdir) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_mknod) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_mntctl) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_vmount) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_creat) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_openx) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_open) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_quotactl) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_rename) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_rmdir) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_fstatx) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_statx) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_symlink) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_readlink) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_syncvfs) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_sync) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_umask) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_uvmount) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_umount) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_unameu) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_unamex) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_uname) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_unlink) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_ustat) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_utimes) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR___msgxrcv) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR___msgrcv) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR___msgsnd) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_msgctl) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_msgget) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_getgidx) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR___semop) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_semget) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_semctl) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_shmctl) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_shmdt) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_shmat) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_shmget) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_ra_shmgetv) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_ra_shmget) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_privcheck) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_disclaim) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR__sem_destroy_unnamed) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR__sem_wait) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR__sem_close) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR__sem_open) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_sem_unlink) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_sem_post) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_sem_init) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_sem_getvalue) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_sem_destroy) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR__mq_notify) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR__mq_open) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_mq_unlink) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_mq_setattr) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_mq_send) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_mq_receive) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_mq_getattr) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_mq_close) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_shm_unlink) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_shm_open) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR__poll) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR__select) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_sysconfig) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_sys_parm) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_loadquery) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_knlist) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_brk) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_fjfs_sys_call) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_jfs_sys_call) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_acct) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR__dr_unregister) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR__dr_notify) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR__dr_register) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_getlparload) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_dr_reconfig) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_projctl) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_sbrk) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR__sigpending) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR__pause) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_thread_kill) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_sigstack) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_sigaltstack) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_appulimit) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_ras_service) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR__wlm_class_descr2key) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR__wlm_get_procinfo) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR__wlm_get_info) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR__wlm_getclassname) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR__wlm_unload_classes) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR__wlm_load) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR__wlm_tune) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR__wlm_assign) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR__wlm_classify) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_fp_cpusync) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR__fp_trapstate_ker) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR__ewlm_classify_correlator) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR__arm_stop_transaction) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR__arm_destroy_application) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR__arm_stop_application) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR__arm_generate_correlator) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR__arm_discard_transaction) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR__arm_unbind_thread) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR__arm_bind_thread) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR__arm_unblock_transaction) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR__arm_block_transaction) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR__arm_update_transaction) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR__arm_register_metric) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR__arm_report_transaction) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR__arm_start_transaction) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR__arm_register_transaction) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR__arm_start_application) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR__arm_register_application) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR__lsarm_getinfo) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR__ewlm_init) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR__ewlm_query) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_ewlm_verify_policy) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_ewlm_abort_policy) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_ewlm_commit_policy) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_ewlm_prepare_policy) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_ewlm_get_completions) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_ewlm_get_activedata) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_ewlm_get_appldata) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_ewlm_collect_samples) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_ewlm_disconnect) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_ewlm_connect) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_auditlog) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_auditproc) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_getgroups) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_setgid) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_setgidx) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_setgroups) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_frevoke) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_revoke) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR___pag_setvalue) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR___pag_getvalue) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR___pag_getid) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR___pag_getname) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR___pag_setname) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_kcap_set_proc) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_kcap_get_proc) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_pipe) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_mwakeup) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR___msleep) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_kmmap) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_msem_remove) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_mincore) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_madvise) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_munmap) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_msync) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_mprotect) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_mmap) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_swapqry) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_swapon) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_swapoff) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_psdanger) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_vmgetinfo) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_rs_admregistername) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_rs_discardname) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_rs_setnameattr) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_rs_registername) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_rs_getnamedrset) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_rs_getnameattr) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_rs_getrsetnames) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_ra_attachrset) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_ra_detachrset) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_dmapi_init) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_kdm_ioctl) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_access) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_accessx) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_kfcntl) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR___pfcntl) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_fstatfs64) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_statfs64) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_fstatfs) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_statfs) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_probe) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_cmp_swap) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR__validate_pag) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_kgetsidx) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_kgetsid) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_plock) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_upfput) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_usrinfo) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_audit) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_auditobj) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_auditbin) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_auditevents) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_faccessx) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR___fchaclx) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR___chaclx) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_fchacl) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_chacl) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR___fstataclx) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR___stataclx) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_fstatacl) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_statacl) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_setpriv) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_getpriv) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_fstatpriv) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_statpriv) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_fchpriv) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_chpriv) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_i_int2cpu_pal) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_hd_cfg) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_putpmsg) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_putmsg) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_getpmsg) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_getmsg) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_strinfo) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_strreset) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_dupmsg) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR__kgrantpt) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_aixgsc) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_smaccept) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_smconnect) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_smlisten) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_smbind) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_smsocket) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_smdetatt) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_smattach) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_smselect) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_smwait) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_smsetthresh) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_smsendbuff) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_smfreebuff) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_smrcvbuff) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_smgetbuff) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_smversion) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_smtcheckinit) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_aio_nwait_timeout) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_kaio_stats) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_aio_cntl) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_listio) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_acancel) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_iosuspend) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_kaio_rdwr) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_aio_nwait) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR__posix_iofsync) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR__posix_aio_nwait_timeout) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR__posix_kaio_stats) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR__posix_listio) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR__posix_acancel) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR__posix_iosuspend) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR__posix_kaio_rdwr) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR__posix_aio_cntl) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR__posix_aio_nwait) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_nfs_cntl) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_nfssvc) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_nfs_getfh) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_exportfs) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_lm_svc) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_pw_config) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_pw_post) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_pw_wait) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_pw_loadavg) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_pw_debug) =3D __NR_AIX5_UNKNOWN;
+
+/* Extras for AIX 5.3 */
+Int VG_(aix5_NR___libc_sbrk) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_thread_waitlock_) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR__fp_fpscrx_sc) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_sched_get_priority_max) =3D __NR_AIX5_UNKNOWN;
+
+/* Extras for AIX 5.3 64-bit mode. */
+Int VG_(aix5_NR_kload) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR__fp_fpscrx64_) =3D __NR_AIX5_UNKNOWN;
+Int VG_(aix5_NR_kunload64) =3D __NR_AIX5_UNKNOWN;
+
+/* We need an extra fake syscall to denote signal handler returns, as
+ used in sigframe-ppc{32,64}-aix5.c. Since we don't know what
+ number we can assign to it, monitor the numbers passed to
+ VG_(aix5_register_syscall), and set it to 10000+the largest syscall
+ nummber seen. */
+Int VG_(aix5_NR_FAKE_SIGRETURN) =3D __NR_AIX5_UNKNOWN;
+
+
+static Bool local_streq ( UChar* s1, UChar* s2 )
+{
+ while (True) {
+ if (*s1 =3D=3D 0 && *s2 =3D=3D 0) return True;
+ if (*s1 =3D=3D 0) return False;
+ if (*s2 =3D=3D 0) return False;
+ if (*s1 !=3D *s2) return False;
+ s1++; s2++;
+ }
+}
+
+Bool VG_(aix5_register_syscall)( Int sysno, UChar* sysname )
+{
+ /* Establish the FAKE_SIGRETURN number. */
+ if (VG_(aix5_NR_FAKE_SIGRETURN) =3D=3D __NR_AIX5_UNKNOWN)
+ VG_(aix5_NR_FAKE_SIGRETURN) =3D sysno + 10000;
+ else
+ if (sysno + 10000 > VG_(aix5_NR_FAKE_SIGRETURN))
+ VG_(aix5_NR_FAKE_SIGRETURN) =3D sysno + 10000;
+
+ /* Now do the normal name-to-number binding checks. */
+# define XXX(name) \
+ if (local_streq(sysname, #name)) { \
+ VG_(aix5_NR_##name) =3D sysno; \
+ return True; \
+ }
+ /* AIX 5.2 */
+ XXX(utrchook_sc)
+ XXX(thread_create)
+ XXX(kfork)
+ XXX(kra_fork)
+ XXX(execve)
+ XXX(ra_execve)
+ XXX(_load)
+ XXX(__unload)
+ XXX(loadbind)
+ XXX(__loadx)
+ XXX(bindprocessor)
+ XXX(trcgent)
+ XXX(trcgen)
+ XXX(trchk)
+ XXX(trchkt)
+ XXX(trchkl)
+ XXX(trchklt)
+ XXX(trchkg)
+ XXX(trchkgt)
+ XXX(kill)
+ XXX(_addcpucosts)
+ XXX(mycpu)
+ XXX(adjtime)
+ XXX(checkpnt_block)
+ XXX(_checkpnt_kill)
+ XXX(_checkpnt_fail)
+ XXX(_checkpnt_commit)
+ XXX(_checkpnt_register)
+ XXX(_checkpnt)
+ XXX(setcrid)
+ XXX(getcrid)
+ XXX(mkcrid)
+ XXX(checkpnt_wait)
+ XXX(checkpnt_deliver)
+ XXX(gencore)
+ XXX(thread_terminate)
+ XXX(_exit)
+ XXX(kwaitpid64)
+ XXX(kwaitpid)
+ XXX(yield)
+ XXX(getprocs64)
+ XXX(getevars)
+ XXX(getargs)
+ XXX(getthrds64)
+ XXX(getthrds)
+ XXX(getprocs)
+ XXX(sigcleanup)
+ XXX(_setpri)
+ XXX(_getpri)
+ XXX(profil)
+ XXX(reboot)
+ XXX(appgetrlimit)
+ XXX(appsetrlimit)
+ XXX(_setpriority)
+ XXX(_getpriority)
+ XXX(setrlimit64)
+ XXX(getrlimit64)
+ XXX(appgetrusage)
+ XXX(getrusage64)
+ XXX(getvtid)
+ XXX(getrtid)
+ XXX(getrpid)
+ XXX(restart_wait)
+ XXX(restart)
+ XXX(_rmcpucosts)
+ XXX(_clock_getcpuclockid)
+ XXX(_clock_settime)
+ XXX(_clock_gettime)
+ XXX(_clock_getres)
+ XXX(_timer_settime)
+ XXX(_timer_gettime)
+ XXX(_timer_getoverrun)
+ XXX(_timer_delete)
+ XXX(_timer_create)
+ XXX(_sigqueue)
+ XXX(_sigsuspend)
+ XXX(_sigaction)
+ XXX(sigprocmask)
+ XXX(siglocalmask)
+ XXX(count_event_waiters)
+ XXX(thread_waitact)
+ XXX(thread_waitlock_local)
+ XXX(thread_waitlock)
+ XXX(thread_wait)
+ XXX(thread_unlock)
+ XXX(thread_twakeup_unlock)
+ XXX(thread_twakeup_event)
+ XXX(thread_twakeup)
+ XXX(thread_tsleep_event)
+ XXX(thread_tsleep_chkpnt)
+ XXX(thread_tsleep)
+ XXX(thread_post_many)
+ XXX(thread_post)
+ XXX(ue_proc_unregister)
+ XXX(ue_proc_register)
+ XXX(kthread_ctl)
+ XXX(_thread_setsched)
+ XXX(threads_runnable)
+ XXX(thread_getregs)
+ XXX(thread_terminate_unlock)
+ XXX(thread_terminate_ack)
+ XXX(thread_setstate_fast)
+ XXX(thread_setstate)
+ XXX(thread_setmymask_fast)
+ XXX(thread_setmystate_fast)
+ XXX(thread_setmystate)
+ XXX(thread_init)
+ XXX(times)
+ XXX(_nsleep)
+ XXX(reltimerid)
+ XXX(appresinc)
+ XXX(apprestimer)
+ XXX(appresabs)
+ XXX(appsettimer)
+ XXX(appgettimer)
+ XXX(gettimerid)
+ XXX(incinterval)
+ XXX(absinterval)
+ XXX(getinterval)
+ XXX(upfget)
+ XXX(_wlm_wait)
+ XXX(_wlm_post)
+ XXX(_wlm_event_init)
+ XXX(_wlm_set_tag)
+ XXX(_wlm_set)
+ XXX(ptrace64)
+ XXX(ptracex)
+ XXX(ptrace)
+ XXX(ksetcontext_sigreturn)
+ XXX(ksetcontext)
+ XXX(kgetcontext)
+ XXX(sigreturn)
+ XXX(_wlm_get_bio_stats)
+ XXX(splice)
+ XXX(rmsock)
+ XXX(nrecvmsg)
+ XXX(socket_aio_dequeue)
+ XXX(getkerninfo)
+ XXX(getpeereid)
+ XXX(getpeername)
+ XXX(ngetpeername)
+ XXX(getsockname)
+ XXX(ngetsockname)
+ XXX(getsockopt)
+ XXX(setsockopt)
+ XXX(shutdown)
+ XXX(recvmsg)
+ XXX(recv)
+ XXX(nrecvfrom)
+ XXX(recvfrom)
+ XXX(nsendmsg)
+ XXX(sendmsg)
+ XXX(send)
+ XXX(sendto)
+ XXX(socketpair)
+ XXX(accept)
+ XXX(naccept)
+ XXX(listen)
+ XXX(bind)
+ XXX(socket)
+ XXX(connext)
+ XXX(setdomainname)
+ XXX(getdomainname)
+ XXX(sethostname)
+ XXX(sethostid)
+ XXX(gethostid)
+ XXX(gethostname)
+ XXX(send_file)
+ XXX(_rmlmbcost)
+ XXX(__rs_pickmcm)
+ XXX(rs_getsystem)
+ XXX(rs_getassociativity)
+ XXX(rs_setpartition)
+ XXX(rs_getpartition)
+ XXX(ra_getrset)
+ XXX(rs_getinfo)
+ XXX(rs_getrad)
+ XXX(rs_numrads)
+ XXX(__kdb_format_print_rele)
+ XXX(__kdb_format_print_init)
+ XXX(close)
+ XXX(kfsync_range)
+ XXX(fsync)
+ XXX(kpwrite)
+ XXX(kwritev)
+ XXX(kwrite)
+ XXX(kpread)
+ XXX(kreadv)
+ XXX(kread)
+ XXX(klseek)
+ XXX(_lseek)
+ XXX(lseek)
+ XXX(_setsid)
+ XXX(_setpgid)
+ XXX(_setpgrp)
+ XXX(_getpgrpx)
+ XXX(_getpgrp)
+ XXX(_getppid)
+ XXX(_thread_self)
+ XXX(_getpid)
+ XXX(kgetpgidx)
+ XXX(setuid)
+ XXX(setuidx)
+ XXX(getuidx)
+ XXX(seteuid)
+ XXX(setreuid)
+ XXX(chdir)
+ XXX(fchdir)
+ XXX(chroot)
+ XXX(fchmod)
+ XXX(chmod)
+ XXX(chown)
+ XXX(lchown)
+ XXX(fchown)
+ XXX(fchownx)
+ XXX(chownx)
+ XXX(kfclear)
+ XXX(fclear)
+ XXX(ffinfo)
+ XXX(finfo)
+ XXX(fscntl)
+ XXX(ktruncate)
+ XXX(kftruncate)
+ XXX(truncate)
+ XXX(ftruncate)
+ XXX(getdirent64)
+ XXX(getdirent)
+ XXX(kioctl32)
+ XXX(kioctl)
+ XXX(link)
+ XXX(klockf)
+ XXX(lockf)
+ XXX(mkdir)
+ XXX(mknod)
+ XXX(mntctl)
+ XXX(vmount)
+ XXX(creat)
+ XXX(openx)
+ XXX(open)
+ XXX(quotactl)
+ XXX(rename)
+ XXX(rmdir)
+ XXX(fstatx)
+ XXX(statx)
+ XXX(symlink)
+ XXX(readlink)
+ XXX(syncvfs)
+ XXX(sync)
+ XXX(umask)
+ XXX(uvmount)
+ XXX(umount)
+ XXX(unameu)
+ XXX(unamex)
+ XXX(uname)
+ XXX(unlink)
+ XXX(ustat)
+ XXX(utimes)
+ XXX(__msgxrcv)
+ XXX(__msgrcv)
+ XXX(__msgsnd)
+ XXX(msgctl)
+ XXX(msgget)
+ XXX(getgidx)
+ XXX(__semop)
+ XXX(semget)
+ XXX(semctl)
+ XXX(shmctl)
+ XXX(shmdt)
+ XXX(shmat)
+ XXX(shmget)
+ XXX(ra_shmgetv)
+ XXX(ra_shmget)
+ XXX(privcheck)
+ XXX(disclaim)
+ XXX(_sem_destroy_unnamed)
+ XXX(_sem_wait)
+ XXX(_sem_close)
+ XXX(_sem_open)
+ XXX(sem_unlink)
+ XXX(sem_post)
+ XXX(sem_init)
+ XXX(sem_getvalue)
+ XXX(sem_destroy)
+ XXX(_mq_notify)
+ XXX(_mq_open)
+ XXX(mq_unlink)
+ XXX(mq_setattr)
+ XXX(mq_send)
+ XXX(mq_receive)
+ XXX(mq_getattr)
+ XXX(mq_close)
+ XXX(shm_unlink)
+ XXX(shm_open)
+ XXX(_poll)
+ XXX(_select)
+ XXX(sysconfig)
+ XXX(sys_parm)
+ XXX(loadquery)
+ XXX(knlist)
+ XXX(brk)
+ XXX(fjfs_sys_call)
+ XXX(jfs_sys_call)
+ XXX(acct)
+ XXX(_dr_unregister)
+ XXX(_dr_notify)
+ XXX(_dr_register)
+ XXX(getlparload)
+ XXX(dr_reconfig)
+ XXX(projctl)
+ XXX(sbrk)
+ XXX(_sigpending)
+ XXX(_pause)
+ XXX(thread_kill)
+ XXX(sigstack)
+ XXX(sigaltstack)
+ XXX(appulimit)
+ XXX(ras_service)
+ XXX(_wlm_class_descr2key)
+ XXX(_wlm_get_procinfo)
+ XXX(_wlm_get_info)
+ XXX(_wlm_getclassname)
+ XXX(_wlm_unload_classes)
+ XXX(_wlm_load)
+ XXX(_wlm_tune)
+ XXX(_wlm_assign)
+ XXX(_wlm_classify)
+ XXX(fp_cpusync)
+ XXX(_fp_trapstate_ker)
+ XXX(_ewlm_classify_correlator)
+ XXX(_arm_stop_transaction)
+ XXX(_arm_destroy_application)
+ XXX(_arm_stop_application)
+ XXX(_arm_generate_correlator)
+ XXX(_arm_discard_transaction)
+ XXX(_arm_unbind_thread)
+ XXX(_arm_bind_thread)
+ XXX(_arm_unblock_transaction)
+ XXX(_arm_block_transaction)
+ XXX(_arm_update_transaction)
+ XXX(_arm_register_metric)
+ XXX(_arm_report_transaction)
+ XXX(_arm_start_transaction)
+ XXX(_arm_register_transaction)
+ XXX(_arm_start_application)
+ XXX(_arm_register_application)
+ XXX(_lsarm_getinfo)
+ XXX(_ewlm_init)
+ XXX(_ewlm_query)
+ XXX(ewlm_verify_policy)
+ XXX(ewlm_abort_policy)
+ XXX(ewlm_commit_policy)
+ XXX(ewlm_prepare_policy)
+ XXX(ewlm_get_completions)
+ XXX(ewlm_get_activedata)
+ XXX(ewlm_get_appldata)
+ XXX(ewlm_collect_samples)
+ XXX(ewlm_disconnect)
+ XXX(ewlm_connect)
+ XXX(auditlog)
+ XXX(auditproc)
+ XXX(getgroups)
+ XXX(setgid)
+ XXX(setgidx)
+ XXX(setgroups)
+ XXX(frevoke)
+ XXX(revoke)
+ XXX(__pag_setvalue)
+ XXX(__pag_getvalue)
+ XXX(__pag_getid)
+ XXX(__pag_getname)
+ XXX(__pag_setname)
+ XXX(kcap_set_proc)
+ XXX(kcap_get_proc)
+ XXX(pipe)
+ XXX(mwakeup)
+ XXX(__msleep)
+ XXX(kmmap)
+ XXX(msem_remove)
+ XXX(mincore)
+ XXX(madvise)
+ XXX(munmap)
+ XXX(msync)
+ XXX(mprotect)
+ XXX(mmap)
+ XXX(swapqry)
+ XXX(swapon)
+ XXX(swapoff)
+ XXX(psdanger)
+ XXX(vmgetinfo)
+ XXX(rs_admregistername)
+ XXX(rs_discardname)
+ XXX(rs_setnameattr)
+ XXX(rs_registername)
+ XXX(rs_getnamedrset)
+ XXX(rs_getnameattr)
+ XXX(rs_getrsetnames)
+ XXX(ra_attachrset)
+ XXX(ra_detachrset)
+ XXX(dmapi_init)
+ XXX(kdm_ioctl)
+ XXX(access)
+ XXX(accessx)
+ XXX(kfcntl)
+ XXX(__pfcntl)
+ XXX(fstatfs64)
+ XXX(statfs64)
+ XXX(fstatfs)
+ XXX(statfs)
+ XXX(probe)
+ XXX(cmp_swap)
+ XXX(_validate_pag)
+ XXX(kgetsidx)
+ XXX(kgetsid)
+ XXX(plock)
+ XXX(upfput)
+ XXX(usrinfo)
+ XXX(audit)
+ XXX(auditobj)
+ XXX(auditbin)
+ XXX(auditevents)
+ XXX(faccessx)
+ XXX(__fchaclx)
+ XXX(__chaclx)
+ XXX(fchacl)
+ XXX(chacl)
+ XXX(__fstataclx)
+ XXX(__stataclx)
+ XXX(fstatacl)
+ XXX(statacl)
+ XXX(setpriv)
+ XXX(getpriv)
+ XXX(fstatpriv)
+ XXX(statpriv)
+ XXX(fchpriv)
+ XXX(chpriv)
+ XXX(i_int2cpu_pal)
+ XXX(hd_cfg)
+ XXX(putpmsg)
+ XXX(putmsg)
+ XXX(getpmsg)
+ XXX(getmsg)
+ XXX(strinfo)
+ XXX(strreset)
+ XXX(dupmsg)
+ XXX(_kgrantpt)
+ XXX(aixgsc)
+ XXX(smaccept)
+ XXX(smconnect)
+ XXX(smlisten)
+ XXX(smbind)
+ XXX(smsocket)
+ XXX(smdetatt)
+ XXX(smattach)
+ XXX(smselect)
+ XXX(smwait)
+ XXX(smsetthresh)
+ XXX(smsendbuff)
+ XXX(smfreebuff)
+ XXX(smrcvbuff)
+ XXX(smgetbuff)
+ XXX(smversion)
+ XXX(smtcheckinit)
+ XXX(aio_nwait_timeout)
+ XXX(kaio_stats)
+ XXX(aio_cntl)
+ XXX(listio)
+ XXX(acancel)
+ XXX(iosuspend)
+ XXX(kaio_rdwr)
+ XXX(aio_nwait)
+ XXX(_posix_iofsync)
+ XXX(_posix_aio_nwait_timeout)
+ XXX(_posix_kaio_stats)
+ XXX(_posix_listio)
+ XXX(_posix_acancel)
+ XXX(_posix_iosuspend)
+ XXX(_posix_kaio_rdwr)
+ XXX(_posix_aio_cntl)
+ XXX(_posix_aio_nwait)
+ XXX(nfs_cntl)
+ XXX(nfssvc)
+ XXX(nfs_getfh)
+ XXX(exportfs)
+ XXX(lm_svc)
+ XXX(pw_config)
+ XXX(pw_post)
+ XXX(pw_wait)
+ XXX(pw_loadavg)
+ XXX(pw_debug)
+ /* Extras for AIX 5.3 */
+ XXX(__libc_sbrk)
+ XXX(thread_waitlock_)
+ XXX(_fp_fpscrx_sc)
+ XXX(sched_get_priority_max)
+ /* Extras for AIX 5.3 64-bit */
+ XXX(kload)
+ XXX(_fp_fpscrx64_)
+ XXX(kunload64)
+# undef XXX
+ return False;
+}
+
+#endif /* defined(VGO_aix5) */
+
+/*--------------------------------------------------------------------*/
+/*--- end ---*/
+/*--------------------------------------------------------------------*/
|