]> granicus.if.org Git - strace/commitdiff
Add Linux/hppa port, patch from Richard Hirst
authorWichert Akkerman <wichert@deephackmode.org>
Tue, 27 Mar 2001 12:17:16 +0000 (12:17 +0000)
committerWichert Akkerman <wichert@deephackmode.org>
Tue, 27 Mar 2001 12:17:16 +0000 (12:17 +0000)
18 files changed:
CREDITS
NEWS
acconfig.h
configure.in
defs.h
file.c
linux/hppa/.cvsignore [new file with mode: 0644]
linux/hppa/Makefile.in [new file with mode: 0644]
linux/hppa/errnoent.h [new file with mode: 0644]
linux/hppa/ioctlent.h [new file with mode: 0644]
linux/hppa/signalent.h [new file with mode: 0644]
linux/hppa/syscallent.h [new file with mode: 0644]
linux/hppa/syscallent.sh [new file with mode: 0644]
linux/syscall.h
process.c
signal.c
syscall.c
util.c

diff --git a/CREDITS b/CREDITS
index fbb414b1772662d93cf0b3610dd76251fad6333c..8f9ebc2442d5e1fd3068dc7c7a91228fae6d64a6 100644 (file)
--- a/CREDITS
+++ b/CREDITS
@@ -41,3 +41,4 @@ porting to new systems:
        D.J. Barrow <djbarrow@de.ibm.com>
        Topi Miettinen <Topi.Miettinen@nic.fi>
        GaĆ«l Roualland <gael.roualland@iname.com>
+       Richard Hirst <rhirst@linuxcare.com>
diff --git a/NEWS b/NEWS
index f36c95f6cf6ba5ea7cd5c0680f269b6365fa626f..7f2dcf1b7133d63d55422b48b94d73e62db9da70 100644 (file)
--- a/NEWS
+++ b/NEWS
@@ -1,6 +1,6 @@
 Changes in 4.3
 ==============
-* Linux/ia64 port added
+* Linux/ia64 and Linux/hppa ports added
 * The usual Linux syscall updates (includes 32bit uid/gid support),
 * Linux ioctl list updated
 * Support IPv6 scope ids
index 1c97c3ac0e8fbd5cd18dbdf38c3228e20c03171c..eb45d57364d4dba0a2a603f80d53e5dcc600b77b 100644 (file)
@@ -15,6 +15,9 @@
 /* Define for UnixWare systems. */
 #undef UNIXWARE
 
+/* Define if this is an hppa architecture */
+#undef HPPA
+
 /* Define if this is an i386, i486 or pentium architecture.  */
 #undef I386
 
index 307879005b4763e589d70d90f16dba0f3539b655..3847550c0853a92f72e496b8a8e8afe372315f41 100644 (file)
@@ -65,6 +65,9 @@ arm)
 s390)
        arch=s390
        ;;
+hppa*|parisc*)
+       arch=hppa
+       ;;
 *)
        AC_MSG_ERROR(this architecture is not yet supported by strace)
        ;;
@@ -73,7 +76,7 @@ AC_MSG_RESULT($arch)
 
 # Autoheader trick.  Heh, heh.
 arch_list='
-@@@syms="$syms I386 IA64 M68K SPARC MIPS ALPHA ARM POWERPC"@@@
+@@@syms="$syms I386 IA64 M68K SPARC MIPS ALPHA ARM POWERPC HPPA"@@@
 '
 
 osarch="$opsys"
diff --git a/defs.h b/defs.h
index d97978ab006dcd1ffd838711d535c969bbea4e07..29c450e0dbedeac52d4620c1afe2c016cf04b023 100644 (file)
--- a/defs.h
+++ b/defs.h
@@ -157,6 +157,13 @@ extern int ptrace();
 #  define REG_SP 29
 #  define REG_EPC 64
 #endif /* MIPS */
+#ifdef HPPA
+#  define PT_GR20 (20*4)
+#  define PT_GR26 (26*4)
+#  define PT_GR28 (28*4)
+#  define PT_IAOQ0 (106*4)
+#  define PT_IAOQ1 (107*4)
+#endif /* HPPA */
 #endif /* LINUX */
 
 #define SUPPORTED_PERSONALITIES 1
@@ -277,7 +284,7 @@ struct tcb {
 #define TCB_FOLLOWFORK 00400   /* Process should have forks followed */
 #define TCB_REPRINT    01000   /* We should reprint this syscall on exit */
 #ifdef LINUX
-#if defined(ALPHA) || defined(SPARC) || defined(POWERPC)
+#if defined(ALPHA) || defined(SPARC) || defined(POWERPC) || defined(HPPA)
 #define TCB_WAITEXECVE 02000   /* ignore SIGTRAP after exceve */
 #endif /* ALPHA */
 #endif /* LINUX */
diff --git a/file.c b/file.c
index a2663d1a5f6076d9489a62532d20c1e067839e34..da3b8a2d2a1d200ce59d4ba8fa125567ca39c38a 100644 (file)
--- a/file.c
+++ b/file.c
@@ -107,11 +107,17 @@ struct stat {
 #    define off_t off_t
 #    define loff_t loff_t
 #  endif
+#  ifdef HPPA  /* asm-parisc/stat.h defines stat64 */
+#    undef stat64
+#  endif
 #  define stat libc_stat
 #  define stat64 libc_stat64
 #  include <sys/stat.h>
 #  undef stat
 #  undef stat64
+#  ifdef HPPA
+#    define stat64 hpux_stat64
+#  endif
 #else
 #  include <sys/stat.h>
 #endif
@@ -883,7 +889,7 @@ long addr;
 }
 #endif /* HAVE_STAT64 */
 
-#if defined(linux) && !defined(IA64)
+#if defined(linux) && !defined(IA64) && !defined(HPPA)
 static void
 convertoldstat(oldbuf, newbuf)
 const struct __old_kernel_stat *oldbuf;
@@ -971,7 +977,7 @@ struct tcb *tcp;
 }
 
 #ifdef linux
-# if !defined(IA64)
+# if !defined(IA64) && !defined(HPPA)
 int
 sys_oldstat(tcp)
 struct tcb *tcp;
@@ -1018,7 +1024,7 @@ struct tcb *tcp;
 }
 
 #ifdef linux
-# if !defined(IA64)
+# if !defined(IA64) && !defined(HPPA)
 int
 sys_oldfstat(tcp)
 struct tcb *tcp;
@@ -1066,7 +1072,7 @@ struct tcb *tcp;
 }
 
 #ifdef linux
-# if !defined(IA64)
+# if !defined(IA64) && !defined(HPPA)
 int
 sys_oldlstat(tcp)
 struct tcb *tcp;
diff --git a/linux/hppa/.cvsignore b/linux/hppa/.cvsignore
new file mode 100644 (file)
index 0000000..9fa499b
--- /dev/null
@@ -0,0 +1,3 @@
+Makefile
+ioctldefs.h
+ioctls.h
diff --git a/linux/hppa/Makefile.in b/linux/hppa/Makefile.in
new file mode 100644 (file)
index 0000000..6b029aa
--- /dev/null
@@ -0,0 +1,57 @@
+#
+# $Id$
+#
+
+srcdir = @srcdir@
+VPATH = @srcdir@
+
+CC = @CC@
+CPP = @CPP@
+SHELL = /bin/sh
+
+DEFS = @DEFS@
+LDLIBS = @LIBS@
+
+CFLAGS = -g
+LDFLAGS = -g
+WARNFLAGS = @WARNFLAGS@
+
+CPPFLAGS =
+INCLUDES = -I. -I.. -I$(srcdir)/.. -I../.. -I$(srcdir)
+
+includedir = @includedir@
+
+all: ioctlent.h errnoent.h signalent.h syscallent.h
+
+ioctlent.raw: ioctlent.sh
+       $(SHELL) $(srcdir)/ioctlent.sh $(includedir) >$@
+
+ioctlent.h: ioctlent.raw ioctlsort
+       ./ioctlsort >$@
+
+ioctlsort: ioctlsort.o
+       $(CC) $(LDFLAGS) ioctlsort.o -o ioctlsort
+
+ioctlsort.o: ../../ioctlsort.c
+       $(CC) $(WARNFLAGS) $(DEFS) $(CPPFLAGS) $(INCLUDES) $(CFLAGS) -c $(srcdir)/../../ioctlsort.c
+
+ioctlsort.o: ioctlent.raw
+
+errnoent.h: ../../errnoent.sh $(includedir)/asm/errno.h
+       $(SHELL) $(srcdir)/../../errnoent.sh $(includedir)/asm/errno.h >$@
+
+signalent.h: ../../signalent.sh $(includedir)/asm/signal.h
+       $(SHELL) $(srcdir)/../../signalent.sh $(includedir)/asm/signal.h >$@
+
+#syscallent.h: ../../syscallent.sh $(includedir)/sys/syscall.h
+syscallent.h:
+       $(SHELL) $(srcdir)/../../syscallent.sh $(includedir)/sys/syscall.h >$@
+
+clean:
+       rm -f ioctlent.c *.raw *.tmp *.o ioctlsort
+
+distclean: clean
+       rm -f Makefile
+
+maintainer-clean: distclean
+       rm -f ioctlent.h errnoent.h signalent.h
diff --git a/linux/hppa/errnoent.h b/linux/hppa/errnoent.h
new file mode 100644 (file)
index 0000000..2c92633
--- /dev/null
@@ -0,0 +1,254 @@
+       "ERRNO_0", /* 0 */
+       "EPERM", /* 1 */
+       "ENOENT", /* 2 */
+       "ESRCH", /* 3 */
+       "EINTR", /* 4 */
+       "EIO", /* 5 */
+       "ENXIO", /* 6 */
+       "E2BIG", /* 7 */
+       "ENOEXEC", /* 8 */
+       "EBADF", /* 9 */
+       "ECHILD", /* 10 */
+       "EAGAIN", /* 11 */
+       "ENOMEM", /* 12 */
+       "EACCES", /* 13 */
+       "EFAULT", /* 14 */
+       "ENOTBLK", /* 15 */
+       "EBUSY", /* 16 */
+       "EEXIST", /* 17 */
+       "EXDEV", /* 18 */
+       "ENODEV", /* 19 */
+       "ENOTDIR", /* 20 */
+       "EISDIR", /* 21 */
+       "EINVAL", /* 22 */
+       "ENFILE", /* 23 */
+       "EMFILE", /* 24 */
+       "ENOTTY", /* 25 */
+       "ETXTBSY", /* 26 */
+       "EFBIG", /* 27 */
+       "ENOSPC", /* 28 */
+       "ESPIPE", /* 29 */
+       "EROFS", /* 30 */
+       "EMLINK", /* 31 */
+       "EPIPE", /* 32 */
+       "EDOM", /* 33 */
+       "ERANGE", /* 34 */
+       "ENOMSG", /* 35 */
+       "EIDRM", /* 36 */
+       "ECHRNG", /* 37 */
+       "EL2NSYNC", /* 38 */
+       "EL3HLT", /* 39 */
+       "EL3RST", /* 40 */
+       "ELNRNG", /* 41 */
+       "EUNATCH", /* 42 */
+       "ENOCSI", /* 43 */
+       "EL2HLT", /* 44 */
+       "EDEADLK", /* 45 */
+       "ENOLCK", /* 46 */
+       "EILSEQ", /* 47 */
+       "ERRNO_48", /* 48 */
+       "ERRNO_49", /* 49 */
+       "ENONET", /* 50 */
+       "ENODATA", /* 51 */
+       "ETIME", /* 52 */
+       "ENOSR", /* 53 */
+       "ENOSTR", /* 54 */
+       "ENOPKG", /* 55 */
+       "ERRNO_56", /* 56 */
+       "ENOLINK", /* 57 */
+       "EADV", /* 58 */
+       "ESRMNT", /* 59 */
+       "ECOMM", /* 60 */
+       "EPROTO", /* 61 */
+       "ERRNO_62", /* 62 */
+       "ERRNO_63", /* 63 */
+       "EMULTIHOP", /* 64 */
+       "ERRNO_65", /* 65 */
+       "EDOTDOT", /* 66 */
+       "EBADMSG", /* 67 */
+       "EUSERS", /* 68 */
+       "EDQUOT", /* 69 */
+       "ESTALE", /* 70 */
+       "EREMOTE", /* 71 */
+       "EOVERFLOW", /* 72 */
+       "ERRNO_73", /* 73 */
+       "ERRNO_74", /* 74 */
+       "ERRNO_75", /* 75 */
+       "ERRNO_76", /* 76 */
+       "ERRNO_77", /* 77 */
+       "ERRNO_78", /* 78 */
+       "ERRNO_79", /* 79 */
+       "ERRNO_80", /* 80 */
+       "ERRNO_81", /* 81 */
+       "ERRNO_82", /* 82 */
+       "ERRNO_83", /* 83 */
+       "ERRNO_84", /* 84 */
+       "ERRNO_85", /* 85 */
+       "ERRNO_86", /* 86 */
+       "ERRNO_87", /* 87 */
+       "ERRNO_88", /* 88 */
+       "ERRNO_89", /* 89 */
+       "ERRNO_90", /* 90 */
+       "ERRNO_91", /* 91 */
+       "ERRNO_92", /* 92 */
+       "ERRNO_93", /* 93 */
+       "ERRNO_94", /* 94 */
+       "ERRNO_95", /* 95 */
+       "ERRNO_96", /* 96 */
+       "ERRNO_97", /* 97 */
+       "ERRNO_98", /* 98 */
+       "ERRNO_99", /* 99 */
+       "ERRNO_100", /* 100 */
+       "ERRNO_101", /* 101 */
+       "ERRNO_102", /* 102 */
+       "ERRNO_103", /* 103 */
+       "ERRNO_104", /* 104 */
+       "ERRNO_105", /* 105 */
+       "ERRNO_106", /* 106 */
+       "ERRNO_107", /* 107 */
+       "ERRNO_108", /* 108 */
+       "ERRNO_109", /* 109 */
+       "ERRNO_110", /* 110 */
+       "ERRNO_111", /* 111 */
+       "ERRNO_112", /* 112 */
+       "ERRNO_113", /* 113 */
+       "ERRNO_114", /* 114 */
+       "ERRNO_115", /* 115 */
+       "ERRNO_116", /* 116 */
+       "ERRNO_117", /* 117 */
+       "ERRNO_118", /* 118 */
+       "ERRNO_119", /* 119 */
+       "ERRNO_120", /* 120 */
+       "ERRNO_121", /* 121 */
+       "ERRNO_122", /* 122 */
+       "ERRNO_123", /* 123 */
+       "ERRNO_124", /* 124 */
+       "ERRNO_125", /* 125 */
+       "ERRNO_126", /* 126 */
+       "ERRNO_127", /* 127 */
+       "ERRNO_128", /* 128 */
+       "ERRNO_129", /* 129 */
+       "ERRNO_130", /* 130 */
+       "ERRNO_131", /* 131 */
+       "ERRNO_132", /* 132 */
+       "ERRNO_133", /* 133 */
+       "ERRNO_134", /* 134 */
+       "ERRNO_135", /* 135 */
+       "ERRNO_136", /* 136 */
+       "ERRNO_137", /* 137 */
+       "ERRNO_138", /* 138 */
+       "ERRNO_139", /* 139 */
+       "ERRNO_140", /* 140 */
+       "ERRNO_141", /* 141 */
+       "ERRNO_142", /* 142 */
+       "ERRNO_143", /* 143 */
+       "ERRNO_144", /* 144 */
+       "ERRNO_145", /* 145 */
+       "ERRNO_146", /* 146 */
+       "ERRNO_147", /* 147 */
+       "ERRNO_148", /* 148 */
+       "ERRNO_149", /* 149 */
+       "ERRNO_150", /* 150 */
+       "ERRNO_151", /* 151 */
+       "ERRNO_152", /* 152 */
+       "ERRNO_153", /* 153 */
+       "ERRNO_154", /* 154 */
+       "ERRNO_155", /* 155 */
+       "ERRNO_156", /* 156 */
+       "ERRNO_157", /* 157 */
+       "ERRNO_158", /* 158 */
+       "ERRNO_159", /* 159 */
+       "EBADE", /* 160 */
+       "EBADR", /* 161 */
+       "EXFULL", /* 162 */
+       "ENOANO", /* 163 */
+       "EBADRQC", /* 164 */
+       "EBADSLT", /* 165 */
+       "EBFONT", /* 166 */
+       "ENOTUNIQ", /* 167 */
+       "EBADFD", /* 168 */
+       "EREMCHG", /* 169 */
+       "ELIBACC", /* 170 */
+       "ELIBBAD", /* 171 */
+       "ELIBSCN", /* 172 */
+       "ELIBMAX", /* 173 */
+       "ELIBEXEC", /* 174 */
+       "ERESTART", /* 175 */
+       "ESTRPIPE", /* 176 */
+       "EUCLEAN", /* 177 */
+       "ENOTNAM", /* 178 */
+       "ENAVAIL", /* 179 */
+       "EISNAM", /* 180 */
+       "EREMOTEIO", /* 181 */
+       "ENOMEDIUM", /* 182 */
+       "EMEDIUMTYPE", /* 183 */
+       "ERRNO_184", /* 184 */
+       "ERRNO_185", /* 185 */
+       "ERRNO_186", /* 186 */
+       "ERRNO_187", /* 187 */
+       "ERRNO_188", /* 188 */
+       "ERRNO_189", /* 189 */
+       "ERRNO_190", /* 190 */
+       "ERRNO_191", /* 191 */
+       "ERRNO_192", /* 192 */
+       "ERRNO_193", /* 193 */
+       "ERRNO_194", /* 194 */
+       "ERRNO_195", /* 195 */
+       "ERRNO_196", /* 196 */
+       "ERRNO_197", /* 197 */
+       "ERRNO_198", /* 198 */
+       "ERRNO_199", /* 199 */
+       "ERRNO_200", /* 200 */
+       "ERRNO_201", /* 201 */
+       "ERRNO_202", /* 202 */
+       "ERRNO_203", /* 203 */
+       "ERRNO_204", /* 204 */
+       "ERRNO_205", /* 205 */
+       "ERRNO_206", /* 206 */
+       "ERRNO_207", /* 207 */
+       "ERRNO_208", /* 208 */
+       "ERRNO_209", /* 209 */
+       "ERRNO_210", /* 210 */
+       "ERRNO_211", /* 211 */
+       "ERRNO_212", /* 212 */
+       "ERRNO_213", /* 213 */
+       "ERRNO_214", /* 214 */
+       "ENOSYM", /* 215 */
+       "ENOTSOCK", /* 216 */
+       "EDESTADDRREQ", /* 217 */
+       "EMSGSIZE", /* 218 */
+       "EPROTOTYPE", /* 219 */
+       "ENOPROTOOPT", /* 220 */
+       "EPROTONOSUPPORT", /* 221 */
+       "ESOCKTNOSUPPORT", /* 222 */
+       "EOPNOTSUPP", /* 223 */
+       "EPFNOSUPPORT", /* 224 */
+       "EAFNOSUPPORT", /* 225 */
+       "EADDRINUSE", /* 226 */
+       "EADDRNOTAVAIL", /* 227 */
+       "ENETDOWN", /* 228 */
+       "ENETUNREACH", /* 229 */
+       "ENETRESET", /* 230 */
+       "ECONNABORTED", /* 231 */
+       "ECONNRESET", /* 232 */
+       "ENOBUFS", /* 233 */
+       "EISCONN", /* 234 */
+       "ENOTCONN", /* 235 */
+       "ESHUTDOWN", /* 236 */
+       "ETOOMANYREFS", /* 237 */
+       "ETIMEDOUT", /* 238 */
+       "ECONNREFUSED", /* 239 */
+       "EREMOTERELEASE", /* 240 */
+       "EHOSTDOWN", /* 241 */
+       "EHOSTUNREACH", /* 242 */
+       "ERRNO_243", /* 243 */
+       "EALREADY", /* 244 */
+       "EINPROGRESS", /* 245 */
+       "EWOULDBLOCK", /* 246 */
+       "ENOTEMPTY", /* 247 */
+       "ENAMETOOLONG", /* 248 */
+       "ELOOP", /* 249 */
+       "ERRNO_250", /* 250 */
+       "ENOSYS", /* 251 */
+       "ENOTSUP", /* 252 */
+       "ECANCELLED", /* 253 */
diff --git a/linux/hppa/ioctlent.h b/linux/hppa/ioctlent.h
new file mode 100644 (file)
index 0000000..b3da4e4
--- /dev/null
@@ -0,0 +1,600 @@
+{"asm/contregs.h", "AC_M_AFAR", 0x600},
+{"asm/contregs.h", "AC_M_SFSR", 0x300},
+{"asm/fbio.h", "FBIOGATTR", 0x40584606},
+{"asm/fbio.h", "FBIOGCURMAX", 0x4004461c},
+{"asm/fbio.h", "FBIOGCURPOS", 0x8004461b},
+{"asm/fbio.h", "FBIOGCURSOR", 0xc02c4619},
+{"asm/fbio.h", "FBIOGETCMAP", 0x4604},
+{"asm/fbio.h", "FBIOGTYPE", 0x40184600},
+{"asm/fbio.h", "FBIOGVIDEO", 0x40044608},
+{"asm/fbio.h", "FBIOPUTCMAP", 0x4605},
+{"asm/fbio.h", "FBIOSATTR", 0x80584605},
+{"asm/fbio.h", "FBIOSCURPOS", 0x8004461a},
+{"asm/fbio.h", "FBIOSCURSOR", 0x802c4618},
+{"asm/fbio.h", "FBIOSVIDEO", 0x80044607},
+{"asm/ioctls.h", "FIOASYNC", 0x8004667d},
+{"asm/ioctls.h", "FIOCLEX", 0x20006601},
+{"asm/ioctls.h", "FIONBIO", 0x8004667e},
+{"asm/ioctls.h", "FIONCLEX", 0x20006602},
+{"asm/ioctls.h", "FIONREAD", 0x4004667f},
+{"asm/ioctls.h", "TCFLSH", 0x00005407},
+{"asm/ioctls.h", "TCGETA", 0x40125401},
+{"asm/ioctls.h", "TCGETS", 0x40245410},
+{"asm/ioctls.h", "TCSBRK", 0x00005405},
+{"asm/ioctls.h", "TCSBRKP", 0x5425},
+{"asm/ioctls.h", "TCSETA", 0x80125402},
+{"asm/ioctls.h", "TCSETAF", 0x80125404},
+{"asm/ioctls.h", "TCSETAW", 0x80125403},
+{"asm/ioctls.h", "TCSETS", 0x80245411},
+{"asm/ioctls.h", "TCSETSF", 0x80245413},
+{"asm/ioctls.h", "TCSETSW", 0x80245412},
+{"asm/ioctls.h", "TCXONC", 0x00005406},
+{"asm/ioctls.h", "TIOCCONS", 0x20007424},
+{"asm/ioctls.h", "TIOCEXCL", 0x2000740d},
+{"asm/ioctls.h", "TIOCGETD", 0x40047400},
+{"asm/ioctls.h", "TIOCGLCKTRMIOS", 0x5456},
+{"asm/ioctls.h", "TIOCGPGRP", 0x40047483},
+{"asm/ioctls.h", "TIOCGSERIAL", 0x541e},
+{"asm/ioctls.h", "TIOCGSOFTCAR", 0x40047464},
+{"asm/ioctls.h", "TIOCGWINSZ", 0x40087468},
+{"asm/ioctls.h", "TIOCLINUX", 0x541c},
+{"asm/ioctls.h", "TIOCMBIC", 0x8004746b},
+{"asm/ioctls.h", "TIOCMBIS", 0x8004746c},
+{"asm/ioctls.h", "TIOCMGET", 0x4004746a},
+{"asm/ioctls.h", "TIOCMSET", 0x8004746d},
+{"asm/ioctls.h", "TIOCNOTTY", 0x20007471},
+{"asm/ioctls.h", "TIOCNXCL", 0x2000740e},
+{"asm/ioctls.h", "TIOCOUTQ", 0x40047473},
+{"asm/ioctls.h", "TIOCPKT", 0x80047470},
+{"asm/ioctls.h", "TIOCSCTTY", 0x20007484},
+{"asm/ioctls.h", "TIOCSERCONFIG", 0x5453},
+{"asm/ioctls.h", "TIOCSERGETLSR", 0x5459},
+{"asm/ioctls.h", "TIOCSERGETMULTI", 0x545a},
+{"asm/ioctls.h", "TIOCSERGSTRUCT", 0x5458},
+{"asm/ioctls.h", "TIOCSERGWILD", 0x5454},
+{"asm/ioctls.h", "TIOCSERSETMULTI", 0x545b},
+{"asm/ioctls.h", "TIOCSERSWILD", 0x5455},
+{"asm/ioctls.h", "TIOCSETD", 0x80047401},
+{"asm/ioctls.h", "TIOCSLCKTRMIOS", 0x5457},
+{"asm/ioctls.h", "TIOCSPGRP", 0x80047482},
+{"asm/ioctls.h", "TIOCSSERIAL", 0x541f},
+{"asm/ioctls.h", "TIOCSSOFTCAR", 0x80047465},
+{"asm/ioctls.h", "TIOCSTI", 0x80017472},
+{"asm/ioctls.h", "TIOCSWINSZ", 0x80087467},
+{"asm/ioctls.h", "TIOCTTYGSTRUCT", 0x5426},
+{"asm/ioctls.h", "__TCGETSTAT", 0x200054c8},
+{"asm/ioctls.h", "__TCSETSTAT", 0x200054c9},
+{"asm/ioctls.h", "__TIOCCBRK", 0x2000747a},
+{"asm/ioctls.h", "__TIOCCDTR", 0x20007478},
+{"asm/ioctls.h", "__TIOCFLUSH", 0x80047410},
+{"asm/ioctls.h", "__TIOCGETC", 0x40067412},
+{"asm/ioctls.h", "__TIOCGETP", 0x40067408},
+{"asm/ioctls.h", "__TIOCGETX", 0x40047423},
+{"asm/ioctls.h", "__TIOCGLTC", 0x40067474},
+{"asm/ioctls.h", "__TIOCGSIZE", 0x40087426},
+{"asm/ioctls.h", "__TIOCHPCL", 0x20007402},
+{"asm/ioctls.h", "__TIOCISIZE", 0x40047481},
+{"asm/ioctls.h", "__TIOCISPACE", 0x40047480},
+{"asm/ioctls.h", "__TIOCLBIC", 0x8004747e},
+{"asm/ioctls.h", "__TIOCLBIS", 0x8004747f},
+{"asm/ioctls.h", "__TIOCLGET", 0x8004747c},
+{"asm/ioctls.h", "__TIOCLSET", 0x8004747d},
+{"asm/ioctls.h", "__TIOCMODG", 0x40047403},
+{"asm/ioctls.h", "__TIOCMODS", 0x80047404},
+{"asm/ioctls.h", "__TIOCREMOTE", 0x80047469},
+{"asm/ioctls.h", "__TIOCSBRK", 0x2000747b},
+{"asm/ioctls.h", "__TIOCSDTR", 0x20007479},
+{"asm/ioctls.h", "__TIOCSETC", 0x80067411},
+{"asm/ioctls.h", "__TIOCSETN", 0x8006740a},
+{"asm/ioctls.h", "__TIOCSETP", 0x80067409},
+{"asm/ioctls.h", "__TIOCSETX", 0x80047422},
+{"asm/ioctls.h", "__TIOCSIGNAL", 0x80047421},
+{"asm/ioctls.h", "__TIOCSLTC", 0x80067475},
+{"asm/ioctls.h", "__TIOCSSIZE", 0x80087425},
+{"asm/ioctls.h", "__TIOCSTART", 0x2000746e},
+{"asm/ioctls.h", "__TIOCSTOP", 0x2000746f},
+{"asm/ioctls.h", "__TIOCTCNTL", 0x80047420},
+{"asm/ioctls.h", "__TIOCUCNTL", 0x80047466},
+{"asm/kbio.h", "KIOCCMD", 0x80046b08},
+{"asm/kbio.h", "KIOCGTRANS", 0x40046b05},
+{"asm/kbio.h", "KIOCLAYOUT", 0x40046b14},
+{"asm/kbio.h", "KIOCSDIRECT", 0x80046b0a},
+{"asm/kbio.h", "KIOCTRANS", 0x80046b00},
+{"asm/kbio.h", "KIOCTYPE", 0x40046b09},
+{"asm/sockios.h", "FIOGETOWN", 0x8903},
+{"asm/sockios.h", "FIOSETOWN", 0x8901},
+{"asm/sockios.h", "SIOCATMARK", 0x8905},
+{"asm/sockios.h", "SIOCGPGRP", 0x8904},
+{"asm/sockios.h", "SIOCGSTAMP", 0x8906},
+{"asm/sockios.h", "SIOCSPGRP", 0x8902},
+{"asm/vuid_event.h", "VUIDGFORMAT", 0x40047602},
+{"asm/vuid_event.h", "VUIDSFORMAT", 0x80047601},
+{"linux/apm_bios.h", "APM_IOC_STANDBY", 0x20004101},
+{"linux/apm_bios.h", "APM_IOC_SUSPEND", 0x20004102},
+{"linux/baycom.h", "BAYCOMCTL_CALIBRATE", 0x2000420a},
+{"linux/baycom.h", "BAYCOMCTL_DEBUG1", 0x40044212},
+{"linux/baycom.h", "BAYCOMCTL_DEBUG2", 0x40044213},
+{"linux/baycom.h", "BAYCOMCTL_DEBUG3", 0x40044214},
+{"linux/baycom.h", "BAYCOMCTL_GETBITS", 0x40014211},
+{"linux/baycom.h", "BAYCOMCTL_GETDCD", 0x40014200},
+{"linux/baycom.h", "BAYCOMCTL_GETPARAMS", 0x40244208},
+{"linux/baycom.h", "BAYCOMCTL_GETPTT", 0x40014201},
+{"linux/baycom.h", "BAYCOMCTL_GETSAMPLES", 0x40014210},
+{"linux/baycom.h", "BAYCOMCTL_GETSTAT", 0x40144207},
+{"linux/baycom.h", "BAYCOMCTL_PARAM_FULLDUP", 0x20004206},
+{"linux/baycom.h", "BAYCOMCTL_PARAM_PPERSIST", 0x20004203},
+{"linux/baycom.h", "BAYCOMCTL_PARAM_SLOTTIME", 0x20004204},
+{"linux/baycom.h", "BAYCOMCTL_PARAM_TXDELAY", 0x20004202},
+{"linux/baycom.h", "BAYCOMCTL_PARAM_TXTAIL", 0x20004205},
+{"linux/baycom.h", "BAYCOMCTL_SETPARAMS", 0x40244209},
+{"linux/cdk.h", "STL_BINTR", 0x20007314},
+{"linux/cdk.h", "STL_BRESET", 0x20007317},
+{"linux/cdk.h", "STL_BSTART", 0x20007315},
+{"linux/cdk.h", "STL_BSTOP", 0x20007316},
+{"linux/cdk.h", "STL_GETPFLAG", 0x20007350},
+{"linux/cdk.h", "STL_SETPFLAG", 0x20007351},
+{"linux/cdrom.h", "CDROMCLOSETRAY", 0x5319},
+{"linux/cdrom.h", "CDROMEJECT", 0x5309},
+{"linux/cdrom.h", "CDROMEJECT_SW", 0x530f},
+{"linux/cdrom.h", "CDROMLOADFROMSLOT", 0x531a},
+{"linux/cdrom.h", "CDROMMULTISESSION", 0x5310},
+{"linux/cdrom.h", "CDROMPAUSE", 0x5301},
+{"linux/cdrom.h", "CDROMPLAYBLK", 0x5317},
+{"linux/cdrom.h", "CDROMPLAYMSF", 0x5303},
+{"linux/cdrom.h", "CDROMPLAYTRKIND", 0x5304},
+{"linux/cdrom.h", "CDROMREADALL", 0x5318},
+{"linux/cdrom.h", "CDROMREADAUDIO", 0x530e},
+{"linux/cdrom.h", "CDROMREADCOOKED", 0x5315},
+{"linux/cdrom.h", "CDROMREADMODE1", 0x530d},
+{"linux/cdrom.h", "CDROMREADMODE2", 0x530c},
+{"linux/cdrom.h", "CDROMREADRAW", 0x5314},
+{"linux/cdrom.h", "CDROMREADTOCENTRY", 0x5306},
+{"linux/cdrom.h", "CDROMREADTOCHDR", 0x5305},
+{"linux/cdrom.h", "CDROMRESET", 0x5312},
+{"linux/cdrom.h", "CDROMRESUME", 0x5302},
+{"linux/cdrom.h", "CDROMSEEK", 0x5316},
+{"linux/cdrom.h", "CDROMSTART", 0x5308},
+{"linux/cdrom.h", "CDROMSTOP", 0x5307},
+{"linux/cdrom.h", "CDROMSUBCHNL", 0x530b},
+{"linux/cdrom.h", "CDROMVOLCTRL", 0x530a},
+{"linux/cdrom.h", "CDROMVOLREAD", 0x5313},
+{"linux/cdrom.h", "CDROM_GET_UPC", 0x5311},
+{"linux/cm206.h", "CDROMRESET", 0x5312},
+{"linux/cm206.h", "CDROM_GET_UPC", 0x5311},
+{"linux/cm206.h", "CM206CTL_GET_LAST_STAT", 0x20002001},
+{"linux/cm206.h", "CM206CTL_GET_STAT", 0x20002000},
+{"linux/comstats.h", "COM_CLRPORTSTATS", 0x2000631f},
+{"linux/comstats.h", "COM_GETBRDSTATS", 0x20006320},
+{"linux/comstats.h", "COM_GETPORTSTATS", 0x2000631e},
+{"linux/comstats.h", "COM_READBOARD", 0x20006329},
+{"linux/comstats.h", "COM_READPANEL", 0x2000632a},
+{"linux/comstats.h", "COM_READPORT", 0x20006328},
+{"linux/cyclades.h", "CYGETDEFTHRESH", 0x435904},
+{"linux/cyclades.h", "CYGETDEFTIMEOUT", 0x435908},
+{"linux/cyclades.h", "CYGETMON", 0x435901},
+{"linux/cyclades.h", "CYGETTHRESH", 0x435902},
+{"linux/cyclades.h", "CYGETTIMEOUT", 0x435906},
+{"linux/cyclades.h", "CYSETDEFTHRESH", 0x435905},
+{"linux/cyclades.h", "CYSETDEFTIMEOUT", 0x435909},
+{"linux/cyclades.h", "CYSETTHRESH", 0x435903},
+{"linux/cyclades.h", "CYSETTIMEOUT", 0x435907},
+{"linux/ext2_fs.h", "EXT2_IOC_GETFLAGS", 0x40046601},
+{"linux/ext2_fs.h", "EXT2_IOC_GETVERSION", 0x40047601},
+{"linux/ext2_fs.h", "EXT2_IOC_SETFLAGS", 0x80046602},
+{"linux/ext2_fs.h", "EXT2_IOC_SETVERSION", 0x80047602},
+{"linux/fb.h", "FBCMD_DRAWLINE", 0x4621},
+{"linux/fb.h", "FBCMD_MOVE", 0x4622},
+{"linux/fb.h", "FBIOGETCMAP", 0x4604},
+{"linux/fb.h", "FBIOGET_CURSORSTATE", 0x460a},
+{"linux/fb.h", "FBIOGET_FCURSORINFO", 0x4607},
+{"linux/fb.h", "FBIOGET_FSCREENINFO", 0x4602},
+{"linux/fb.h", "FBIOGET_VCURSORINFO", 0x4608},
+{"linux/fb.h", "FBIOGET_VSCREENINFO", 0x4600},
+{"linux/fb.h", "FBIOPAN_DISPLAY", 0x4606},
+{"linux/fb.h", "FBIOPUTCMAP", 0x4605},
+{"linux/fb.h", "FBIOPUT_CURSORSTATE", 0x460b},
+{"linux/fb.h", "FBIOPUT_VCURSORINFO", 0x4609},
+{"linux/fb.h", "FBIOPUT_VSCREENINFO", 0x4601},
+{"linux/fd.h", "FDCLRPRM", 0x20000241},
+{"linux/fd.h", "FDDEFPRM", 0x801c0243},
+{"linux/fd.h", "FDEJECT", 0x2000025a},
+{"linux/fd.h", "FDFLUSH", 0x2000024b},
+{"linux/fd.h", "FDFMTBEG", 0x20000247},
+{"linux/fd.h", "FDFMTEND", 0x20000249},
+{"linux/fd.h", "FDFMTTRK", 0x800c0248},
+{"linux/fd.h", "FDGETDRVPRM", 0x40580211},
+{"linux/fd.h", "FDGETDRVSTAT", 0x40340212},
+{"linux/fd.h", "FDGETDRVTYP", 0x4010020f},
+{"linux/fd.h", "FDGETFDCSTAT", 0x40200215},
+{"linux/fd.h", "FDGETMAXERRS", 0x4014020e},
+{"linux/fd.h", "FDGETPRM", 0x401c0204},
+{"linux/fd.h", "FDMSGOFF", 0x20000246},
+{"linux/fd.h", "FDMSGON", 0x20000245},
+{"linux/fd.h", "FDPOLLDRVSTAT", 0x40340213},
+{"linux/fd.h", "FDRAWCMD", 0x20000258},
+{"linux/fd.h", "FDRESET", 0x20000254},
+{"linux/fd.h", "FDSETDRVPRM", 0x80580290},
+{"linux/fd.h", "FDSETEMSGTRESH", 0x2000024a},
+{"linux/fd.h", "FDSETMAXERRS", 0x8014024c},
+{"linux/fd.h", "FDSETPRM", 0x801c0242},
+{"linux/fd.h", "FDTWADDLE", 0x20000259},
+{"linux/fd.h", "FDWERRORCLR", 0x20000256},
+{"linux/fd.h", "FDWERRORGET", 0x40180217},
+{"linux/fs.h", "BLKFLSBUF", 0x20001261},
+{"linux/fs.h", "BLKGETSIZE", 0x20001260},
+{"linux/fs.h", "BLKRAGET", 0x20001263},
+{"linux/fs.h", "BLKRASET", 0x20001262},
+{"linux/fs.h", "BLKROGET", 0x2000125e},
+{"linux/fs.h", "BLKROSET", 0x2000125d},
+{"linux/fs.h", "BLKRRPART", 0x2000125f},
+{"linux/fs.h", "FIBMAP", 0x20000001},
+{"linux/fs.h", "FIGETBSZ", 0x20000002},
+{"linux/hdreg.h", "HDIO_DRIVE_CMD", 0x31f},
+{"linux/hdreg.h", "HDIO_GETGEO", 0x301},
+{"linux/hdreg.h", "HDIO_GET_32BIT", 0x309},
+{"linux/hdreg.h", "HDIO_GET_DMA", 0x30b},
+{"linux/hdreg.h", "HDIO_GET_IDENTITY", 0x307},
+{"linux/hdreg.h", "HDIO_GET_KEEPSETTINGS", 0x308},
+{"linux/hdreg.h", "HDIO_GET_MULTCOUNT", 0x304},
+{"linux/hdreg.h", "HDIO_GET_NOWERR", 0x30a},
+{"linux/hdreg.h", "HDIO_GET_UNMASKINTR", 0x302},
+{"linux/hdreg.h", "HDIO_SET_32BIT", 0x324},
+{"linux/hdreg.h", "HDIO_SET_DMA", 0x326},
+{"linux/hdreg.h", "HDIO_SET_KEEPSETTINGS", 0x323},
+{"linux/hdreg.h", "HDIO_SET_MULTCOUNT", 0x321},
+{"linux/hdreg.h", "HDIO_SET_NOWERR", 0x325},
+{"linux/hdreg.h", "HDIO_SET_PIO_MODE", 0x327},
+{"linux/hdreg.h", "HDIO_SET_UNMASKINTR", 0x322},
+{"linux/if_ppp.h", "PPPIOCGASYNCMAP", 0x40047458},
+{"linux/if_ppp.h", "PPPIOCGDEBUG", 0x40047441},
+{"linux/if_ppp.h", "PPPIOCGFLAGS", 0x4004745a},
+{"linux/if_ppp.h", "PPPIOCGIDLE", 0x4008743f},
+{"linux/if_ppp.h", "PPPIOCGMRU", 0x40047453},
+{"linux/if_ppp.h", "PPPIOCGNPMODE", 0xc008744c},
+{"linux/if_ppp.h", "PPPIOCGRASYNCMAP", 0x40047455},
+{"linux/if_ppp.h", "PPPIOCGUNIT", 0x40047456},
+{"linux/if_ppp.h", "PPPIOCGXASYNCMAP", 0x40207450},
+{"linux/if_ppp.h", "PPPIOCSASYNCMAP", 0x80047457},
+{"linux/if_ppp.h", "PPPIOCSCOMPRESS", 0x800c744d},
+{"linux/if_ppp.h", "PPPIOCSDEBUG", 0x80047440},
+{"linux/if_ppp.h", "PPPIOCSFLAGS", 0x80047459},
+{"linux/if_ppp.h", "PPPIOCSMAXCID", 0x80047451},
+{"linux/if_ppp.h", "PPPIOCSMRU", 0x80047452},
+{"linux/if_ppp.h", "PPPIOCSNPMODE", 0x8008744b},
+{"linux/if_ppp.h", "PPPIOCSRASYNCMAP", 0x80047454},
+{"linux/if_ppp.h", "PPPIOCSXASYNCMAP", 0x8020744f},
+{"linux/if_ppp.h", "PPPIOCXFERUNIT", 0x2000744e},
+{"linux/ip_fw.h", "IP_FW_TYPE", 0x300},
+{"linux/isdn.h", "IIOCDBGVAR", 0x2000497f},
+{"linux/isdn.h", "IIOCDRVCTL", 0x20004980},
+{"linux/isdn.h", "IIOCGETCPS", 0x20004915},
+{"linux/isdn.h", "IIOCGETMAP", 0x20004911},
+{"linux/isdn.h", "IIOCGETPRF", 0x2000490f},
+{"linux/isdn.h", "IIOCGETSET", 0x20004908},
+{"linux/isdn.h", "IIOCNETAIF", 0x20004901},
+{"linux/isdn.h", "IIOCNETALN", 0x20004920},
+{"linux/isdn.h", "IIOCNETANM", 0x20004905},
+{"linux/isdn.h", "IIOCNETASL", 0x20004913},
+{"linux/isdn.h", "IIOCNETDIF", 0x20004902},
+{"linux/isdn.h", "IIOCNETDIL", 0x20004914},
+{"linux/isdn.h", "IIOCNETDLN", 0x20004921},
+{"linux/isdn.h", "IIOCNETDNM", 0x20004906},
+{"linux/isdn.h", "IIOCNETGCF", 0x20004904},
+{"linux/isdn.h", "IIOCNETGNM", 0x20004907},
+{"linux/isdn.h", "IIOCNETHUP", 0x2000490b},
+{"linux/isdn.h", "IIOCNETSCF", 0x20004903},
+{"linux/isdn.h", "IIOCSETBRJ", 0x2000490d},
+{"linux/isdn.h", "IIOCSETGST", 0x2000490c},
+{"linux/isdn.h", "IIOCSETMAP", 0x20004912},
+{"linux/isdn.h", "IIOCSETPRF", 0x20004910},
+{"linux/isdn.h", "IIOCSETSET", 0x20004909},
+{"linux/isdn.h", "IIOCSETVER", 0x2000490a},
+{"linux/isdn.h", "IIOCSIGPRF", 0x2000490e},
+{"linux/isdn_ppp.h", "PPPIOCBUNDLE", 0x80047481},
+{"linux/isdn_ppp.h", "PPPIOCGMPFLAGS", 0x40047482},
+{"linux/isdn_ppp.h", "PPPIOCLINKINFO", 0xc0247480},
+{"linux/isdn_ppp.h", "PPPIOCSMPFLAGS", 0x80047483},
+{"linux/isdn_ppp.h", "PPPIOCSMPMRU", 0x80047485},
+{"linux/isdn_ppp.h", "PPPIOCSMPMTU", 0x80047484},
+{"linux/kd.h", "GIO_CMAP", 0x4b70},
+{"linux/kd.h", "GIO_FONT", 0x4b60},
+{"linux/kd.h", "GIO_FONTX", 0x4b6b},
+{"linux/kd.h", "GIO_SCRNMAP", 0x4b40},
+{"linux/kd.h", "GIO_UNIMAP", 0x4b66},
+{"linux/kd.h", "GIO_UNISCRNMAP", 0x4b69},
+{"linux/kd.h", "KDADDIO", 0x4b34},
+{"linux/kd.h", "KDDELIO", 0x4b35},
+{"linux/kd.h", "KDDISABIO", 0x4b37},
+{"linux/kd.h", "KDENABIO", 0x4b36},
+{"linux/kd.h", "KDGETKEYCODE", 0x4b4c},
+{"linux/kd.h", "KDGETLED", 0x4b31},
+{"linux/kd.h", "KDGETMODE", 0x4b3b},
+{"linux/kd.h", "KDGKBDIACR", 0x4b4a},
+{"linux/kd.h", "KDGKBENT", 0x4b46},
+{"linux/kd.h", "KDGKBLED", 0x4b64},
+{"linux/kd.h", "KDGKBMETA", 0x4b62},
+{"linux/kd.h", "KDGKBMODE", 0x4b44},
+{"linux/kd.h", "KDGKBSENT", 0x4b48},
+{"linux/kd.h", "KDGKBTYPE", 0x4b33},
+{"linux/kd.h", "KDMAPDISP", 0x4b3c},
+{"linux/kd.h", "KDMKTONE", 0x4b30},
+{"linux/kd.h", "KDSETKEYCODE", 0x4b4d},
+{"linux/kd.h", "KDSETLED", 0x4b32},
+{"linux/kd.h", "KDSETMODE", 0x4b3a},
+{"linux/kd.h", "KDSIGACCEPT", 0x4b4e},
+{"linux/kd.h", "KDSKBDIACR", 0x4b4b},
+{"linux/kd.h", "KDSKBENT", 0x4b47},
+{"linux/kd.h", "KDSKBLED", 0x4b65},
+{"linux/kd.h", "KDSKBMETA", 0x4b63},
+{"linux/kd.h", "KDSKBMODE", 0x4b45},
+{"linux/kd.h", "KDSKBSENT", 0x4b49},
+{"linux/kd.h", "KDUNMAPDISP", 0x4b3d},
+{"linux/kd.h", "KIOCSOUND", 0x4b2f},
+{"linux/kd.h", "PIO_CMAP", 0x4b71},
+{"linux/kd.h", "PIO_FONT", 0x4b61},
+{"linux/kd.h", "PIO_FONTRESET", 0x4b6d},
+{"linux/kd.h", "PIO_FONTX", 0x4b6c},
+{"linux/kd.h", "PIO_SCRNMAP", 0x4b41},
+{"linux/kd.h", "PIO_UNIMAP", 0x4b67},
+{"linux/kd.h", "PIO_UNIMAPCLR", 0x4b68},
+{"linux/kd.h", "PIO_UNISCRNMAP", 0x4b6a},
+{"linux/loop.h", "LOOP_CLR_FD", 0x4c01},
+{"linux/loop.h", "LOOP_GET_STATUS", 0x4c03},
+{"linux/loop.h", "LOOP_SET_FD", 0x4c00},
+{"linux/loop.h", "LOOP_SET_STATUS", 0x4c02},
+{"linux/lp.h", "LPABORT", 0x604},
+{"linux/lp.h", "LPABORTOPEN", 0x60a},
+{"linux/lp.h", "LPCAREFUL", 0x609},
+{"linux/lp.h", "LPCHAR", 0x601},
+{"linux/lp.h", "LPGETFLAGS", 0x60e},
+{"linux/lp.h", "LPGETIRQ", 0x606},
+{"linux/lp.h", "LPGETSTATS", 0x60d},
+{"linux/lp.h", "LPGETSTATUS", 0x60b},
+{"linux/lp.h", "LPRESET", 0x60c},
+{"linux/lp.h", "LPSETIRQ", 0x605},
+{"linux/lp.h", "LPTIME", 0x602},
+{"linux/lp.h", "LPWAIT", 0x608},
+{"linux/lp_m68k.h", "LPABORT", 0x604},
+{"linux/lp_m68k.h", "LPABORTOPEN", 0x60a},
+{"linux/lp_m68k.h", "LPCAREFUL", 0x609},
+{"linux/lp_m68k.h", "LPCHAR", 0x601},
+{"linux/lp_m68k.h", "LPGETIRQ", 0x606},
+{"linux/lp_m68k.h", "LPGETSTATUS", 0x60b},
+{"linux/lp_m68k.h", "LPRESET", 0x60c},
+{"linux/lp_m68k.h", "LPSETIRQ", 0x605},
+{"linux/lp_m68k.h", "LPTIME", 0x602},
+{"linux/lp_m68k.h", "LPWAIT", 0x608},
+{"linux/mc146818rtc.h", "RTC_AIE_OFF", 0x20007002},
+{"linux/mc146818rtc.h", "RTC_AIE_ON", 0x20007001},
+{"linux/mc146818rtc.h", "RTC_ALM_READ", 0x40247008},
+{"linux/mc146818rtc.h", "RTC_ALM_SET", 0x80247007},
+{"linux/mc146818rtc.h", "RTC_IRQP_READ", 0x4004700b},
+{"linux/mc146818rtc.h", "RTC_IRQP_SET", 0x8004700c},
+{"linux/mc146818rtc.h", "RTC_PIE_OFF", 0x20007006},
+{"linux/mc146818rtc.h", "RTC_PIE_ON", 0x20007005},
+{"linux/mc146818rtc.h", "RTC_RD_TIME", 0x40247009},
+{"linux/mc146818rtc.h", "RTC_SET_TIME", 0x8024700a},
+{"linux/mc146818rtc.h", "RTC_UIE_OFF", 0x20007004},
+{"linux/mc146818rtc.h", "RTC_UIE_ON", 0x20007003},
+{"linux/md.h", "REGISTER_DEV", 0x20000901},
+{"linux/md.h", "START_MD", 0x20000902},
+{"linux/md.h", "STOP_MD", 0x20000903},
+{"linux/msdos_fs.h", "VFAT_IOCTL_READDIR_BOTH", 0x40047201},
+{"linux/msdos_fs.h", "VFAT_IOCTL_READDIR_SHORT", 0x80047202},
+{"linux/mtio.h", "MTIOCGET", 0x401c6d02},
+{"linux/mtio.h", "MTIOCPOS", 0x40046d03},
+{"linux/mtio.h", "MTIOCTOP", 0x80086d01},
+{"linux/ncp_fs.h", "NCP_IOC_CONN_LOGGED_IN", 0x20006e03},
+{"linux/ncp_fs.h", "NCP_IOC_GETMOUNTUID", 0x80026e02},
+{"linux/ncp_fs.h", "NCP_IOC_GET_FS_INFO", 0xc0286e04},
+{"linux/ncp_fs.h", "NCP_IOC_NCPREQUEST", 0x400c6e01},
+{"linux/quota.h", "Q_GETQUOTA", 0x300},
+{"linux/quota.h", "Q_SYNC", 0x600},
+{"linux/random.h", "RNDADDENTROPY", 0x80085203},
+{"linux/random.h", "RNDADDTOENTCNT", 0x80045201},
+{"linux/random.h", "RNDCLEARPOOL", 0x20005206},
+{"linux/random.h", "RNDGETENTCNT", 0x40045200},
+{"linux/random.h", "RNDGETPOOL", 0x40085202},
+{"linux/random.h", "RNDZAPENTCNT", 0x20005204},
+{"linux/sbpcd.h", "CDROMAUDIOBUFSIZ", 0x5382},
+{"linux/sbpcd.h", "DDIOCSDBG", 0x9000},
+{"linux/scc.h", "TIOCCHANINI", 0x2202},
+{"linux/scc.h", "TIOCCHANMEM", 0x2210},
+{"linux/scc.h", "TIOCGKISS", 0x2282},
+{"linux/scc.h", "TIOCSCCCFG", 0x2200},
+{"linux/scc.h", "TIOCSCCINI", 0x2201},
+{"linux/scc.h", "TIOCSCCSTAT", 0x2284},
+{"linux/scc.h", "TIOCSKISS", 0x2283},
+{"linux/smb_fs.h", "SMB_IOC_GETMOUNTUID", 0x40027501},
+{"linux/sockios.h", "OLD_SIOCDARP", 0x8950},
+{"linux/sockios.h", "OLD_SIOCGARP", 0x8951},
+{"linux/sockios.h", "OLD_SIOCSARP", 0x8952},
+{"linux/sockios.h", "SIOCADDDLCI", 0x8980},
+{"linux/sockios.h", "SIOCADDMULTI", 0x8931},
+{"linux/sockios.h", "SIOCADDRT", 0x890b},
+{"linux/sockios.h", "SIOCDARP", 0x8953},
+{"linux/sockios.h", "SIOCDELDLCI", 0x8981},
+{"linux/sockios.h", "SIOCDELMULTI", 0x8932},
+{"linux/sockios.h", "SIOCDELRT", 0x890c},
+{"linux/sockios.h", "SIOCDEVPRIVATE", 0x89f0},
+{"linux/sockios.h", "SIOCDRARP", 0x8960},
+{"linux/sockios.h", "SIOCGARP", 0x8954},
+{"linux/sockios.h", "SIOCGIFADDR", 0x8915},
+{"linux/sockios.h", "SIOCGIFBR", 0x8940},
+{"linux/sockios.h", "SIOCGIFBRDADDR", 0x8919},
+{"linux/sockios.h", "SIOCGIFCONF", 0x8912},
+{"linux/sockios.h", "SIOCGIFDSTADDR", 0x8917},
+{"linux/sockios.h", "SIOCGIFENCAP", 0x8925},
+{"linux/sockios.h", "SIOCGIFFLAGS", 0x8913},
+{"linux/sockios.h", "SIOCGIFHWADDR", 0x8927},
+{"linux/sockios.h", "SIOCGIFMAP", 0x8970},
+{"linux/sockios.h", "SIOCGIFMEM", 0x891f},
+{"linux/sockios.h", "SIOCGIFMETRIC", 0x891d},
+{"linux/sockios.h", "SIOCGIFMTU", 0x8921},
+{"linux/sockios.h", "SIOCGIFNAME", 0x8910},
+{"linux/sockios.h", "SIOCGIFNETMASK", 0x891b},
+{"linux/sockios.h", "SIOCGIFSLAVE", 0x8929},
+{"linux/sockios.h", "SIOCGRARP", 0x8961},
+{"linux/sockios.h", "SIOCPROTOPRIVATE", 0x89e0},
+{"linux/sockios.h", "SIOCSARP", 0x8955},
+{"linux/sockios.h", "SIOCSIFADDR", 0x8916},
+{"linux/sockios.h", "SIOCSIFBR", 0x8941},
+{"linux/sockios.h", "SIOCSIFBRDADDR", 0x891a},
+{"linux/sockios.h", "SIOCSIFDSTADDR", 0x8918},
+{"linux/sockios.h", "SIOCSIFENCAP", 0x8926},
+{"linux/sockios.h", "SIOCSIFFLAGS", 0x8914},
+{"linux/sockios.h", "SIOCSIFHWADDR", 0x8924},
+{"linux/sockios.h", "SIOCSIFLINK", 0x8911},
+{"linux/sockios.h", "SIOCSIFMAP", 0x8971},
+{"linux/sockios.h", "SIOCSIFMEM", 0x8920},
+{"linux/sockios.h", "SIOCSIFMETRIC", 0x891e},
+{"linux/sockios.h", "SIOCSIFMTU", 0x8922},
+{"linux/sockios.h", "SIOCSIFNETMASK", 0x891c},
+{"linux/sockios.h", "SIOCSIFSLAVE", 0x8930},
+{"linux/sockios.h", "SIOCSRARP", 0x8962},
+{"linux/soundcard.h", "SNDCTL_COPR_HALT", 0xc0144307},
+{"linux/soundcard.h", "SNDCTL_COPR_LOAD", 0xcfb04301},
+{"linux/soundcard.h", "SNDCTL_COPR_RCODE", 0xc0144303},
+{"linux/soundcard.h", "SNDCTL_COPR_RCVMSG", 0x4fa44309},
+{"linux/soundcard.h", "SNDCTL_COPR_RDATA", 0xc0144302},
+{"linux/soundcard.h", "SNDCTL_COPR_RESET", 0x20004300},
+{"linux/soundcard.h", "SNDCTL_COPR_RUN", 0xc0144306},
+{"linux/soundcard.h", "SNDCTL_COPR_SENDMSG", 0x8fa44308},
+{"linux/soundcard.h", "SNDCTL_COPR_WCODE", 0x80144305},
+{"linux/soundcard.h", "SNDCTL_COPR_WDATA", 0x80144304},
+{"linux/soundcard.h", "SNDCTL_DSP_GETBLKSIZE", 0xc0045004},
+{"linux/soundcard.h", "SNDCTL_DSP_GETCAPS", 0x4004500f},
+{"linux/soundcard.h", "SNDCTL_DSP_GETFMTS", 0x4004500b},
+{"linux/soundcard.h", "SNDCTL_DSP_GETIPTR", 0x400c5011},
+{"linux/soundcard.h", "SNDCTL_DSP_GETISPACE", 0x4010500d},
+{"linux/soundcard.h", "SNDCTL_DSP_GETOPTR", 0x400c5012},
+{"linux/soundcard.h", "SNDCTL_DSP_GETOSPACE", 0x4010500c},
+{"linux/soundcard.h", "SNDCTL_DSP_GETTRIGGER", 0x40045010},
+{"linux/soundcard.h", "SNDCTL_DSP_MAPINBUF", 0x40085013},
+{"linux/soundcard.h", "SNDCTL_DSP_MAPOUTBUF", 0x40085014},
+{"linux/soundcard.h", "SNDCTL_DSP_NONBLOCK", 0x2000500e},
+{"linux/soundcard.h", "SNDCTL_DSP_POST", 0x20005008},
+{"linux/soundcard.h", "SNDCTL_DSP_RESET", 0x20005000},
+{"linux/soundcard.h", "SNDCTL_DSP_SETDUPLEX", 0x20005016},
+{"linux/soundcard.h", "SNDCTL_DSP_SETFMT", 0xc0045005},
+{"linux/soundcard.h", "SNDCTL_DSP_SETFRAGMENT", 0xc004500a},
+{"linux/soundcard.h", "SNDCTL_DSP_SETSYNCRO", 0x20005015},
+{"linux/soundcard.h", "SNDCTL_DSP_SETTRIGGER", 0x80045010},
+{"linux/soundcard.h", "SNDCTL_DSP_SPEED", 0xc0045002},
+{"linux/soundcard.h", "SNDCTL_DSP_STEREO", 0xc0045003},
+{"linux/soundcard.h", "SNDCTL_DSP_SUBDIVIDE", 0xc0045009},
+{"linux/soundcard.h", "SNDCTL_DSP_SYNC", 0x20005001},
+{"linux/soundcard.h", "SNDCTL_FM_4OP_ENABLE", 0x8004510f},
+{"linux/soundcard.h", "SNDCTL_FM_LOAD_INSTR", 0x80285107},
+{"linux/soundcard.h", "SNDCTL_MIDI_INFO", 0xc074510c},
+{"linux/soundcard.h", "SNDCTL_MIDI_MPUCMD", 0xc0216d02},
+{"linux/soundcard.h", "SNDCTL_MIDI_MPUMODE", 0xc0046d01},
+{"linux/soundcard.h", "SNDCTL_MIDI_PRETIME", 0xc0046d00},
+{"linux/soundcard.h", "SNDCTL_PMGR_ACCESS", 0xcfb85110},
+{"linux/soundcard.h", "SNDCTL_PMGR_IFACE", 0xcfb85001},
+{"linux/soundcard.h", "SNDCTL_SEQ_CTRLRATE", 0xc0045103},
+{"linux/soundcard.h", "SNDCTL_SEQ_GETINCOUNT", 0x40045105},
+{"linux/soundcard.h", "SNDCTL_SEQ_GETOUTCOUNT", 0x40045104},
+{"linux/soundcard.h", "SNDCTL_SEQ_NRMIDIS", 0x4004510b},
+{"linux/soundcard.h", "SNDCTL_SEQ_NRSYNTHS", 0x4004510a},
+{"linux/soundcard.h", "SNDCTL_SEQ_OUTOFBAND", 0x80085112},
+{"linux/soundcard.h", "SNDCTL_SEQ_PANIC", 0x20005111},
+{"linux/soundcard.h", "SNDCTL_SEQ_PERCMODE", 0x80045106},
+{"linux/soundcard.h", "SNDCTL_SEQ_RESET", 0x20005100},
+{"linux/soundcard.h", "SNDCTL_SEQ_RESETSAMPLES", 0x80045109},
+{"linux/soundcard.h", "SNDCTL_SEQ_SYNC", 0x20005101},
+{"linux/soundcard.h", "SNDCTL_SEQ_TESTMIDI", 0x80045108},
+{"linux/soundcard.h", "SNDCTL_SEQ_THRESHOLD", 0x8004510d},
+{"linux/soundcard.h", "SNDCTL_SYNTH_INFO", 0xc08c5102},
+{"linux/soundcard.h", "SNDCTL_SYNTH_MEMAVL", 0xc004510e},
+{"linux/soundcard.h", "SNDCTL_TMR_CONTINUE", 0x20005404},
+{"linux/soundcard.h", "SNDCTL_TMR_METRONOME", 0x80045407},
+{"linux/soundcard.h", "SNDCTL_TMR_SELECT", 0x80045408},
+{"linux/soundcard.h", "SNDCTL_TMR_SOURCE", 0xc0045406},
+{"linux/soundcard.h", "SNDCTL_TMR_START", 0x20005402},
+{"linux/soundcard.h", "SNDCTL_TMR_STOP", 0x20005403},
+{"linux/soundcard.h", "SNDCTL_TMR_TEMPO", 0xc0045405},
+{"linux/soundcard.h", "SNDCTL_TMR_TIMEBASE", 0xc0045401},
+{"linux/soundcard.h", "SOUND_MIXER_READ_ALTPCM", 0x40044d0a},
+{"linux/soundcard.h", "SOUND_MIXER_READ_BASS", 0x40044d01},
+{"linux/soundcard.h", "SOUND_MIXER_READ_CAPS", 0x40044dfc},
+{"linux/soundcard.h", "SOUND_MIXER_READ_CD", 0x40044d08},
+{"linux/soundcard.h", "SOUND_MIXER_READ_DEVMASK", 0x40044dfe},
+{"linux/soundcard.h", "SOUND_MIXER_READ_ENHANCE", 0x40044d1d},
+{"linux/soundcard.h", "SOUND_MIXER_READ_IGAIN", 0x40044d0c},
+{"linux/soundcard.h", "SOUND_MIXER_READ_IMIX", 0x40044d09},
+{"linux/soundcard.h", "SOUND_MIXER_READ_LINE", 0x40044d06},
+{"linux/soundcard.h", "SOUND_MIXER_READ_LINE1", 0x40044d0e},
+{"linux/soundcard.h", "SOUND_MIXER_READ_LINE2", 0x40044d0f},
+{"linux/soundcard.h", "SOUND_MIXER_READ_LINE3", 0x40044d10},
+{"linux/soundcard.h", "SOUND_MIXER_READ_LOUD", 0x40044d1e},
+{"linux/soundcard.h", "SOUND_MIXER_READ_MIC", 0x40044d07},
+{"linux/soundcard.h", "SOUND_MIXER_READ_MUTE", 0x40044d1c},
+{"linux/soundcard.h", "SOUND_MIXER_READ_OGAIN", 0x40044d0d},
+{"linux/soundcard.h", "SOUND_MIXER_READ_PCM", 0x40044d04},
+{"linux/soundcard.h", "SOUND_MIXER_READ_RECLEV", 0x40044d0b},
+{"linux/soundcard.h", "SOUND_MIXER_READ_RECMASK", 0x40044dfd},
+{"linux/soundcard.h", "SOUND_MIXER_READ_RECSRC", 0x40044dff},
+{"linux/soundcard.h", "SOUND_MIXER_READ_SPEAKER", 0x40044d05},
+{"linux/soundcard.h", "SOUND_MIXER_READ_STEREODEVS", 0x40044dfb},
+{"linux/soundcard.h", "SOUND_MIXER_READ_SYNTH", 0x40044d03},
+{"linux/soundcard.h", "SOUND_MIXER_READ_TREBLE", 0x40044d02},
+{"linux/soundcard.h", "SOUND_MIXER_READ_VOLUME", 0x40044d00},
+{"linux/soundcard.h", "SOUND_MIXER_WRITE_ALTPCM", 0xc0044d0a},
+{"linux/soundcard.h", "SOUND_MIXER_WRITE_BASS", 0xc0044d01},
+{"linux/soundcard.h", "SOUND_MIXER_WRITE_CD", 0xc0044d08},
+{"linux/soundcard.h", "SOUND_MIXER_WRITE_ENHANCE", 0xc0044d1d},
+{"linux/soundcard.h", "SOUND_MIXER_WRITE_IGAIN", 0xc0044d0c},
+{"linux/soundcard.h", "SOUND_MIXER_WRITE_IMIX", 0xc0044d09},
+{"linux/soundcard.h", "SOUND_MIXER_WRITE_LINE", 0xc0044d06},
+{"linux/soundcard.h", "SOUND_MIXER_WRITE_LINE1", 0xc0044d0e},
+{"linux/soundcard.h", "SOUND_MIXER_WRITE_LINE2", 0xc0044d0f},
+{"linux/soundcard.h", "SOUND_MIXER_WRITE_LINE3", 0xc0044d10},
+{"linux/soundcard.h", "SOUND_MIXER_WRITE_LOUD", 0xc0044d1e},
+{"linux/soundcard.h", "SOUND_MIXER_WRITE_MIC", 0xc0044d07},
+{"linux/soundcard.h", "SOUND_MIXER_WRITE_MUTE", 0xc0044d1c},
+{"linux/soundcard.h", "SOUND_MIXER_WRITE_OGAIN", 0xc0044d0d},
+{"linux/soundcard.h", "SOUND_MIXER_WRITE_PCM", 0xc0044d04},
+{"linux/soundcard.h", "SOUND_MIXER_WRITE_RECLEV", 0xc0044d0b},
+{"linux/soundcard.h", "SOUND_MIXER_WRITE_RECSRC", 0xc0044dff},
+{"linux/soundcard.h", "SOUND_MIXER_WRITE_SPEAKER", 0xc0044d05},
+{"linux/soundcard.h", "SOUND_MIXER_WRITE_SYNTH", 0xc0044d03},
+{"linux/soundcard.h", "SOUND_MIXER_WRITE_TREBLE", 0xc0044d02},
+{"linux/soundcard.h", "SOUND_MIXER_WRITE_VOLUME", 0xc0044d00},
+{"linux/soundcard.h", "SOUND_PCM_READ_BITS", 0x40045005},
+{"linux/soundcard.h", "SOUND_PCM_READ_CHANNELS", 0x40045006},
+{"linux/soundcard.h", "SOUND_PCM_READ_FILTER", 0x40045007},
+{"linux/soundcard.h", "SOUND_PCM_READ_RATE", 0x40045002},
+{"linux/soundcard.h", "SOUND_PCM_WRITE_CHANNELS", 0xc0045006},
+{"linux/soundcard.h", "SOUND_PCM_WRITE_FILTER", 0xc0045007},
+{"linux/ucdrom.h", "CDROM_CLEAR_OPTIONS", 0x5321},
+{"linux/ucdrom.h", "CDROM_DISC_STATUS", 0x5327},
+{"linux/ucdrom.h", "CDROM_DRIVE_STATUS", 0x5326},
+{"linux/ucdrom.h", "CDROM_MEDIA_CHANGED", 0x5325},
+{"linux/ucdrom.h", "CDROM_SELECT_DISC", 0x5323},
+{"linux/ucdrom.h", "CDROM_SELECT_SPEED", 0x5322},
+{"linux/ucdrom.h", "CDROM_SET_OPTIONS", 0x5320},
+{"linux/umsdos_fs.h", "UMSDOS_CREAT_EMD", 0x200004d6},
+{"linux/umsdos_fs.h", "UMSDOS_DOS_SETUP", 0x200004db},
+{"linux/umsdos_fs.h", "UMSDOS_GETVERSION", 0x200004d9},
+{"linux/umsdos_fs.h", "UMSDOS_INIT_EMD", 0x200004da},
+{"linux/umsdos_fs.h", "UMSDOS_READDIR_DOS", 0x200004d2},
+{"linux/umsdos_fs.h", "UMSDOS_READDIR_EMD", 0x200004d8},
+{"linux/umsdos_fs.h", "UMSDOS_RENAME_DOS", 0x200004dc},
+{"linux/umsdos_fs.h", "UMSDOS_RMDIR_DOS", 0x200004d4},
+{"linux/umsdos_fs.h", "UMSDOS_STAT_DOS", 0x200004d5},
+{"linux/umsdos_fs.h", "UMSDOS_UNLINK_DOS", 0x200004d3},
+{"linux/umsdos_fs.h", "UMSDOS_UNLINK_EMD", 0x200004d7},
+{"linux/vt.h", "VT_ACTIVATE", 0x5606},
+{"linux/vt.h", "VT_DISALLOCATE", 0x5608},
+{"linux/vt.h", "VT_GETMODE", 0x5601},
+{"linux/vt.h", "VT_GETSTATE", 0x5603},
+{"linux/vt.h", "VT_LOCKSWITCH", 0x560b},
+{"linux/vt.h", "VT_OPENQRY", 0x5600},
+{"linux/vt.h", "VT_RELDISP", 0x5605},
+{"linux/vt.h", "VT_RESIZE", 0x5609},
+{"linux/vt.h", "VT_RESIZEX", 0x560a},
+{"linux/vt.h", "VT_SENDSIG", 0x5604},
+{"linux/vt.h", "VT_SETMODE", 0x5602},
+{"linux/vt.h", "VT_UNLOCKSWITCH", 0x560c},
+{"linux/vt.h", "VT_WAITACTIVE", 0x5607},
diff --git a/linux/hppa/signalent.h b/linux/hppa/signalent.h
new file mode 100644 (file)
index 0000000..92e5565
--- /dev/null
@@ -0,0 +1,38 @@
+       "SIG_0",        /* 0 */
+       "SIGHUP",       /* 1 */
+       "SIGINT",       /* 2 */
+       "SIGQUIT",      /* 3 */
+       "SIGILL",       /* 4 */
+       "SIGTRAP",      /* 5 */
+       "SIGABRT",      /* 6 */
+       "SIGEMT",       /* 7 */
+       "SIGFPE",       /* 8 */
+       "SIGKILL",      /* 9 */
+       "SIGBUS",       /* 10 */
+       "SIGSEGV",      /* 11 */
+       "SIGSYS",       /* 12 */
+       "SIGPIPE",      /* 13 */
+       "SIGALRM",      /* 14 */
+       "SIGTERM",      /* 15 */
+       "SIGUSR1",      /* 16 */
+       "SIGUSR2",      /* 17 */
+       "SIGCHLD",      /* 18 */
+       "SIGPWR",       /* 19 */
+       "SIGVTALRM",    /* 20 */
+       "SIGPROF",      /* 21 */
+       "SIGIO",        /* 22 */
+       "SIGWINCH",     /* 23 */
+       "SIGSTOP",      /* 24 */
+       "SIGTSTP",      /* 25 */
+       "SIGCONT",      /* 26 */
+       "SIGTTIN",      /* 27 */
+       "SIGTTOU",      /* 28 */
+       "SIGURG",       /* 29 */
+       "SIGLOST",      /* 30 */
+       "SIGUNUSED",    /* 31 */
+       "SIG_32",       /* 32 */
+       "SIGXCPU",      /* 33 */
+       "SIGXFSZ",      /* 34 */
+       "SIG_35",       /* 35 */
+       "SIGSTKFLT",    /* 36 */
+       "SIGRTMIN",     /* 37 */
diff --git a/linux/hppa/syscallent.h b/linux/hppa/syscallent.h
new file mode 100644 (file)
index 0000000..3bba1be
--- /dev/null
@@ -0,0 +1,326 @@
+/*
+ * Copyright (c) 1993 Branko Lankester <branko@hacktic.nl>
+ * Copyright (c) 1993, 1994, 1995 Rick Sladkey <jrs@world.std.com>
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ * 1. Redistributions of source code must retain the above copyright
+ *    notice, this list of conditions and the following disclaimer.
+ * 2. Redistributions in binary form must reproduce the above copyright
+ *    notice, this list of conditions and the following disclaimer in the
+ *    documentation and/or other materials provided with the distribution.
+ * 3. The name of the author may not be used to endorse or promote products
+ *    derived from this software without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
+ * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
+ * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
+ * IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
+ * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
+ * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+ * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+ * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
+ * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ *
+ *     $Id$
+ */
+
+       { 5,    0,      printargs,              "SYS_0"                 }, /* 0 */
+       { 1,    TP,     sys_exit,               "exit"                  }, /* 1 */
+       { 0,    TP,     sys_fork,               "fork"                  }, /* 2 */
+       { 3,    TF,     sys_read,               "read"                  }, /* 3 */
+       { 3,    TF,     sys_write,              "write"                 }, /* 4 */
+       { 3,    TF,     sys_open,               "open"                  }, /* 5 */
+       { 1,    0,      sys_close,              "close"                 }, /* 6 */
+       { 3,    TP,     sys_waitpid,            "waitpid"               }, /* 7 */
+       { 2,    TF,     sys_creat,              "creat"                 }, /* 8 */
+       { 2,    TF,     sys_link,               "link"                  }, /* 9 */
+       { 1,    TF,     sys_unlink,             "unlink"                }, /* 10 */
+       { 3,    TF|TP,  sys_execve,             "execve"                }, /* 11 */
+       { 1,    TF,     sys_chdir,              "chdir"                 }, /* 12 */
+       { 1,    0,      sys_time,               "time"                  }, /* 13 */
+       { 3,    TF,     sys_mknod,              "mknod"                 }, /* 14 */
+       { 2,    TF,     sys_chmod,              "chmod"                 }, /* 15 */
+       { 3,    TF,     printargs,              "lchown"                }, /* 16 */
+       { 3,    TN,     sys_socket,             "socket"                }, /* 17 */
+       { 2,    TF,     sys_stat,               "newstat"               }, /* 18 */
+       { 3,    TF,     sys_lseek,              "lseek"                 }, /* 19 */
+       { 0,    0,      sys_getpid,             "getpid"                }, /* 20 */
+       { 5,    TF,     sys_mount,              "mount"                 }, /* 21 */
+       { 3,    TN,     sys_bind,               "bind"                  }, /* 22 */
+       { 1,    0,      sys_setuid,             "setuid"                }, /* 23 */
+       { 0,    0,      sys_getuid,             "getuid"                }, /* 24 */
+       { 1,    0,      sys_stime,              "stime"                 }, /* 25 */
+       { 4,    0,      sys_ptrace,             "ptrace"                }, /* 26 */
+       { 1,    0,      sys_alarm,              "alarm"                 }, /* 27 */
+       { 2,    0,      sys_fstat,              "newfstat"              }, /* 28 */
+       { 0,    0,      sys_pause,              "pause"                 }, /* 29 */
+       { 2,    0,      sys_utime,              "utime"                 }, /* 30 */
+       { 3,    TN,     sys_connect,            "connect"               }, /* 31 */
+       { 2,    TN,     sys_listen,             "listen"                }, /* 32 */
+       { 2,    TF,     sys_access,             "access"                }, /* 33 */
+       { 1,    0,      sys_nice,               "nice"                  }, /* 34 */
+       { 3,    TN,     sys_accept,             "accept"                }, /* 35 */
+       { 0,    0,      sys_sync,               "sync"                  }, /* 36 */
+       { 2,    TS,     sys_kill,               "kill"                  }, /* 37 */
+       { 2,    TF,     sys_rename,             "rename"                }, /* 38 */
+       { 2,    TF,     sys_mkdir,              "mkdir"                 }, /* 39 */
+       { 1,    TF,     sys_rmdir,              "rmdir"                 }, /* 40 */
+       { 1,    0,      sys_dup,                "dup"                   }, /* 41 */
+       { 1,    0,      sys_pipe,               "pipe"                  }, /* 42 */
+       { 1,    0,      sys_times,              "times"                 }, /* 43 */
+       { 3,    TN,     sys_getsockname,        "getsockname"           }, /* 44 */
+       { 1,    0,      sys_brk,                "brk"                   }, /* 45 */
+       { 1,    0,      sys_setgid,             "setgid"                }, /* 46 */
+       { 0,    0,      sys_getgid,             "getgid"                }, /* 47 */
+       { 2,    0,      sys_signal,             "signal"                }, /* 48 */
+       { 0,    0,      sys_geteuid,            "geteuid"               }, /* 49 */
+       { 0,    0,      sys_getegid,            "getegid"               }, /* 50 */
+       { 1,    TF,     sys_acct,               "acct"                  }, /* 51 */
+       { 2,    0,      sys_umount2,            "umount2"               }, /* 52 */
+       { 3,    TN,     sys_getpeername,        "lock"                  }, /* 53 */
+       { 3,    0,      sys_ioctl,              "ioctl"                 }, /* 54 */
+       { 3,    0,      sys_fcntl,              "fcntl"                 }, /* 55 */
+       { 4,    TN,     sys_socketpair,         "socketpair"            }, /* 56 */
+       { 2,    0,      sys_setpgid,            "setpgid"               }, /* 57 */
+       { 4,    TN,     sys_send,               "send"                  }, /* 58 */
+       { 1,    0,      sys_uname,              "newuname"                      }, /* 59 */
+       { 1,    0,      sys_umask,              "umask"                 }, /* 60 */
+       { 1,    TF,     sys_chroot,             "chroot"                }, /* 61 */
+       { 2,    0,      sys_ustat,              "ustat"                 }, /* 62 */
+       { 2,    0,      sys_dup2,               "dup2"                  }, /* 63 */
+       { 0,    0,      sys_getppid,            "getppid"               }, /* 64 */
+       { 0,    0,      sys_getpgrp,            "getpgrp"               }, /* 65 */
+       { 0,    0,      sys_setsid,             "setsid"                }, /* 66 */
+       { 5,    0,      printargs,              "pivot_root"            }, /* 67 */
+       { 5,    0,      printargs,              "sgetmask"              }, /* 68 */
+       { 5,    0,      printargs,              "ssetmask"              }, /* 69 */
+       { 2,    0,      sys_setreuid,           "setreuid"              }, /* 70 */
+       { 2,    0,      sys_setregid,           "setregid"              }, /* 71 */
+       { 5,    0,      printargs,              "mincore"               }, /* 72 */
+       { 1,    TS,     sys_sigpending,         "sigpending"            }, /* 73 */
+       { 2,    0,      sys_sethostname,        "sethostname"           }, /* 74 */
+       { 2,    0,      sys_setrlimit,          "setrlimit"             }, /* 75 */
+       { 2,    0,      sys_getrlimit,          "getrlimit"             }, /* 76 */
+       { 2,    0,      sys_getrusage,          "getrusage"             }, /* 77 */
+       { 2,    0,      sys_gettimeofday,       "gettimeofday"          }, /* 78 */
+       { 2,    0,      sys_settimeofday,       "settimeofday"          }, /* 79 */
+       { 2,    0,      sys_getgroups,          "getgroups"             }, /* 80 */
+       { 2,    0,      sys_setgroups,          "setgroups"             }, /* 81 */
+       { 6,    TN,     sys_sendto,             "sendto"                }, /* 82 */
+       { 2,    TF,     sys_symlink,            "symlink"               }, /* 83 */
+       { 2,    TF,     sys_lstat,              "newlstat"              }, /* 84 */
+       { 3,    TF,     sys_readlink,           "readlink"              }, /* 85 */
+       { 1,    0,      sys_uselib,             "uselib"                }, /* 86 */
+       { 1,    0,      sys_swapon,             "swapon"                }, /* 87 */
+       { 3,    0,      sys_reboot,             "reboot"                }, /* 88 */
+       { 3,    0,      sys_readdir,            "old_readdir"           }, /* 89 */
+       { 6,    0,      sys_mmap,               "mmap"                  }, /* 90 */
+       { 2,    0,      sys_munmap,             "munmap"                }, /* 91 */
+       { 2,    TF,     sys_truncate,           "truncate"              }, /* 92 */
+       { 2,    0,      sys_ftruncate,          "ftruncate"             }, /* 93 */
+       { 2,    0,      sys_fchmod,             "fchmod"                }, /* 94 */
+       { 3,    0,      sys_fchown,             "fchown"                }, /* 95 */
+       { 2,    0,      sys_getpriority,        "getpriority"           }, /* 96 */
+       { 3,    0,      sys_setpriority,        "setpriority"           }, /* 97 */
+       { 4,    TN,     sys_recv,               "recv"                  }, /* 98 */
+       { 2,    TF,     sys_statfs,             "statfs"                }, /* 99 */
+       { 2,    0,      sys_fstatfs,            "fstatfs"               }, /* 100 */
+       { 3,    0,      sys_ioperm,             "ioperm"                }, /* 101 */
+       { 5,    0,      sys_socketcall,         "socketcall"            }, /* 102 */
+       { 3,    0,      sys_syslog,             "syslog"                }, /* 103 */
+       { 3,    0,      sys_setitimer,          "setitimer"             }, /* 104 */
+       { 2,    0,      sys_getitimer,          "getitimer"             }, /* 105 */
+       { 2,    0,      sys_capget,             "capget"                }, /* 106 */
+       { 2,    0,      sys_capset,             "capset"                }, /* 107 */
+       { 5,    TF,     sys_pread,              "pread"                 }, /* 108 */
+       { 5,    TF,     sys_pwrite,             "pwrite"                }, /* 109 */
+       { 2,    0,      sys_getcwd,             "getcwd"                }, /* 110 */
+       { 0,    0,      sys_vhangup,            "vhangup"               }, /* 111 */
+       { 0,    0,      sys_idle,               "idle"                  }, /* 112 */
+       { 0,    0,      sys_vfork,              "vfork"                 }, /* 113 */
+       { 4,    TP,     sys_wait4,              "wait4"                 }, /* 114 */
+       { 1,    0,      sys_swapoff,            "swapoff"               }, /* 115 */
+       { 1,    0,      sys_sysinfo,            "sysinfo"               }, /* 116 */
+       { 2,    TN,     sys_shutdown,           "shutdown"              }, /* 117 */
+       { 1,    0,      sys_fsync,              "fsync"                 }, /* 118 */
+       { 5,    0,      printargs,              "madvise"               }, /* 119 */
+       { 2,    TP,     sys_clone,              "clone"                 }, /* 120 */
+       { 2,    0,      sys_setdomainname,      "setdomainname"         }, /* 121 */
+       { 4,    TF,     sys_sendfile,           "sendfile"              }, /* 122 */
+       { 6,    TN,     sys_recvfrom,           "recvfrom"              }, /* 123 */
+       { 1,    0,      sys_adjtimex,           "adjtimex"              }, /* 124 */
+       { 3,    0,      sys_mprotect,           "mprotect"              }, /* 125 */
+       { 3,    TS,     sys_sigprocmask,        "sigprocmask"           }, /* 126 */
+       { 2,    0,      sys_create_module,      "create_module"         }, /* 127 */
+       { 4,    0,      sys_init_module,        "init_module"           }, /* 128 */
+       { 1,    0,      sys_delete_module,      "delete_module"         }, /* 129 */
+       { 1,    0,      sys_get_kernel_syms,    "get_kernel_syms"       }, /* 130 */ 
+       { 4,    0,      sys_quotactl,           "quotactl"              }, /* 131 */
+       { 1,    0,      sys_getpgid,            "getpgid"               }, /* 132 */
+       { 1,    TF,     sys_fchdir,             "fchdir"                }, /* 133 */
+       { 0,    0,      sys_bdflush,            "bdflush"               }, /* 134 */
+       { 5,    0,      sys_sysfs,              "sysfs"                 }, /* 135 */
+       { 1,    0,      sys_personality,        "personality"           }, /* 136 */
+       { 5,    0,      printargs,              "SYS_137"               }, /* 137 */
+       { 1,    0,      sys_setfsuid,           "setfsuid"              }, /* 138 */
+       { 1,    0,      sys_setfsgid,           "setfsgid"              }, /* 139 */
+       { 5,    TF,     printargs,              "_llseek"               }, /* 140 */
+       { 3,    0,      sys_getdents,           "getdents"              }, /* 141 */
+       { 5,    0,      printargs,              "_newselect"            }, /* 142 */
+       { 2,    0,      sys_flock,              "flock"                 }, /* 143 */
+       { 3,    0,      sys_msync,              "msync"                 }, /* 144 */
+       { 3,    0,      sys_readv,              "readv"                 }, /* 145 */
+       { 3,    0,      sys_writev,             "writev"                }, /* 146 */
+       { 1,    0,      sys_getsid,             "getsid"                }, /* 147 */
+       { 1,    0,      sys_fdatasync,          "fdatasync"             }, /* 148 */
+       { 5,    0,      printargs,              "_sysctl"               }, /* 149 */
+       { 2,    0,      sys_mlock,              "mlock"                 }, /* 150 */
+       { 2,    0,      sys_munlock,            "munlock"               }, /* 151 */
+       { 1,    0,      sys_mlockall,           "mlockall"              }, /* 152 */
+       { 1,    0,      sys_munlockall,         "munlockall"            }, /* 153 */
+       { 2,    0,      sys_sched_setparam,     "sched_setparam"        }, /* 154 */ 
+       { 2,    0,      sys_sched_getparam,     "sched_getparam"        }, /* 155 */ 
+       { 3,    0,      sys_sched_setscheduler, "sched_setscheduler"    }, /* 156 */ 
+       { 2,    0,      sys_sched_getscheduler, "sched_getscheduler"    }, /* 157 */ 
+       { 0,    0,      sys_sched_yield,        "sched_yield"           }, /* 158 */
+       { 1,    0,      sys_sched_get_priority_max,"sched_get_priority_max"}, /* 159 */
+       { 1,    0,      sys_sched_get_priority_min,"sched_get_priority_min"}, /* 160 */
+       { 2,    0,      sys_sched_rr_get_interval,"sched_rr_get_interval"}, /* 161 */
+       { 2,    0,      sys_nanosleep,          "nanosleep"             }, /* 162 */
+       { 4,    0,      sys_mremap,             "mremap"                }, /* 163 */
+       { 3,    0,      sys_setresuid,          "setresuid"             }, /* 164 */
+       { 3,    0,      sys_setresuid,          "getresuid"             }, /* 165 */
+       { 2,    TS,     sys_sigaltstack,        "sigaltstack"           }, /* 166 */
+       { 5,    0,      sys_query_module,       "query_module"          }, /* 167 */
+       { 3,    0,      sys_poll,               "poll"                  }, /* 168 */
+       { 5,    0,      printargs,              "nfsservctl"            }, /* 169 */
+       { 3,    0,      sys_setresgid,          "setresgid"             }, /* 170 */
+       { 3,    0,      sys_setresgid,          "getresgid"             }, /* 171 */
+       { 5,    0,      sys_prctl,              "prctl"                 }, /* 172 */
+       { 1,    TS,     printargs,              "rt_sigreturn"          }, /* 173 */
+       { 4,    TS,     sys_rt_sigaction,       "rt_sigaction"          }, /* 174 */
+       { 4,    TS,     sys_rt_sigprocmask,     "rt_sigprocmask"        }, /* 175 */ 
+       { 2,    TS,     sys_rt_sigpending,      "rt_sigpending"         }, /* 176 */
+       { 4,    TS,     sys_rt_sigtimedwait,    "rt_sigtimedwait"       }, /* 177 */ 
+       { 3,    TS,     sys_rt_sigqueueinfo,    "rt_sigqueueinfo"       }, /* 178 */ 
+       { 2,    TS,     sys_rt_sigsuspend,      "rt_sigsuspend"         }, /* 179 */
+       { 3,    TF,     sys_chown,              "chown"                 }, /* 180 */
+       { 5,    TN,     sys_setsockopt,         "setsockopt"            }, /* 181 */
+       { 5,    TN,     sys_getsockopt,         "getsockopt"            }, /* 182 */
+       { 5,    TN,     sys_sendmsg,            "sendmsg"               }, /* 183 */
+       { 5,    TN,     sys_recvmsg,            "recvmsg"               }, /* 184 */
+       { 4,    TI,     sys_semop,              "semop"                 }, /* 185 */
+       { 4,    TI,     sys_semget,             "semget"                }, /* 186 */
+       { 4,    TI,     sys_semctl,             "semctl"                }, /* 187 */
+       { 4,    TI,     sys_msgsnd,             "msgsnd"                }, /* 188 */
+       { 4,    TI,     sys_msgrcv,             "msgrcv"                }, /* 189 */
+       { 4,    TI,     sys_msgget,             "msgget"                }, /* 190 */
+       { 4,    TI,     sys_msgctl,             "msgctl"                }, /* 191 */
+       { 4,    TI,     sys_shmat,              "shmat"                 }, /* 192 */
+       { 4,    TI,     sys_shmdt,              "shmdt"                 }, /* 193 */
+       { 4,    TI,     sys_shmget,             "shmget"                }, /* 194 */
+       { 4,    TI,     sys_shmctl,             "shmctl"                }, /* 195 */
+
+       { 5,    0,      printargs,              "SYS_196"               }, /* 196 */
+       { 5,    0,      printargs,              "SYS_197"               }, /* 197 */
+       { 5,    0,      printargs,              "SYS_198"               }, /* 198 */
+       { 5,    0,      printargs,              "SYS_199"               }, /* 199 */
+       { 5,    0,      printargs,              "SYS_200"               }, /* 200 */
+       { 5,    0,      printargs,              "SYS_201"               }, /* 201 */
+       { 5,    0,      printargs,              "SYS_202"               }, /* 202 */
+       { 5,    0,      printargs,              "SYS_203"               }, /* 203 */
+       { 5,    0,      printargs,              "SYS_204"               }, /* 204 */
+       { 5,    0,      printargs,              "SYS_205"               }, /* 205 */
+       { 5,    0,      printargs,              "SYS_206"               }, /* 206 */
+       { 5,    0,      printargs,              "SYS_207"               }, /* 207 */
+       { 5,    0,      printargs,              "SYS_208"               }, /* 208 */
+       { 5,    0,      printargs,              "SYS_209"               }, /* 209 */
+       { 5,    0,      printargs,              "SYS_210"               }, /* 210 */
+       { 5,    0,      printargs,              "SYS_211"               }, /* 211 */
+       { 5,    0,      printargs,              "SYS_212"               }, /* 212 */
+       { 5,    0,      printargs,              "SYS_213"               }, /* 213 */
+       { 5,    0,      printargs,              "SYS_214"               }, /* 214 */
+       { 5,    0,      printargs,              "SYS_215"               }, /* 215 */
+       { 5,    0,      printargs,              "SYS_216"               }, /* 216 */
+       { 5,    0,      printargs,              "SYS_217"               }, /* 217 */
+       { 5,    0,      printargs,              "SYS_218"               }, /* 218 */
+       { 5,    0,      printargs,              "SYS_219"               }, /* 219 */
+       { 5,    0,      printargs,              "SYS_220"               }, /* 220 */
+       { 5,    0,      printargs,              "SYS_221"               }, /* 221 */
+       { 5,    0,      printargs,              "SYS_222"               }, /* 222 */
+       { 5,    0,      printargs,              "SYS_223"               }, /* 223 */
+       { 5,    0,      printargs,              "SYS_224"               }, /* 224 */
+       { 5,    0,      printargs,              "SYS_225"               }, /* 225 */
+       { 5,    0,      printargs,              "SYS_226"               }, /* 226 */
+       { 5,    0,      printargs,              "SYS_227"               }, /* 227 */
+       { 5,    0,      printargs,              "SYS_228"               }, /* 228 */
+       { 5,    0,      printargs,              "SYS_229"               }, /* 229 */
+       { 5,    0,      printargs,              "SYS_230"               }, /* 230 */
+       { 5,    0,      printargs,              "SYS_231"               }, /* 231 */
+       { 5,    0,      printargs,              "SYS_232"               }, /* 232 */
+       { 5,    0,      printargs,              "SYS_233"               }, /* 233 */
+       { 5,    0,      printargs,              "SYS_234"               }, /* 234 */
+       { 5,    0,      printargs,              "SYS_235"               }, /* 235 */
+       { 5,    0,      printargs,              "SYS_236"               }, /* 236 */
+       { 5,    0,      printargs,              "SYS_237"               }, /* 237 */
+       { 5,    0,      printargs,              "SYS_238"               }, /* 238 */
+       { 5,    0,      printargs,              "SYS_239"               }, /* 239 */
+       { 5,    0,      printargs,              "SYS_240"               }, /* 240 */
+       { 5,    0,      printargs,              "SYS_241"               }, /* 241 */
+       { 5,    0,      printargs,              "SYS_242"               }, /* 242 */
+       { 5,    0,      printargs,              "SYS_243"               }, /* 243 */
+       { 5,    0,      printargs,              "SYS_244"               }, /* 244 */
+       { 5,    0,      printargs,              "SYS_245"               }, /* 245 */
+       { 5,    0,      printargs,              "SYS_246"               }, /* 246 */
+       { 5,    0,      printargs,              "SYS_247"               }, /* 247 */
+       { 5,    0,      printargs,              "SYS_248"               }, /* 248 */
+       { 5,    0,      printargs,              "SYS_249"               }, /* 249 */
+       { 5,    0,      printargs,              "SYS_250"               }, /* 250 */
+       { 5,    0,      printargs,              "SYS_251"               }, /* 251 */
+       { 5,    0,      printargs,              "SYS_252"               }, /* 252 */
+       { 5,    0,      printargs,              "SYS_253"               }, /* 253 */
+       { 5,    0,      printargs,              "SYS_254"               }, /* 254 */
+       { 5,    0,      printargs,              "SYS_255"               }, /* 255 */
+       { 5,    0,      printargs,              "SYS_256"               }, /* 256 */
+       { 5,    0,      printargs,              "SYS_257"               }, /* 257 */
+       { 5,    0,      printargs,              "SYS_258"               }, /* 258 */
+       { 5,    0,      printargs,              "SYS_259"               }, /* 259 */
+       { 5,    0,      printargs,              "SYS_260"               }, /* 260 */
+       { 5,    0,      printargs,              "SYS_261"               }, /* 261 */
+       { 5,    0,      printargs,              "SYS_262"               }, /* 262 */
+       { 5,    0,      printargs,              "SYS_263"               }, /* 263 */
+       { 5,    0,      printargs,              "SYS_264"               }, /* 264 */
+       { 5,    0,      printargs,              "SYS_265"               }, /* 265 */
+       { 5,    0,      printargs,              "SYS_266"               }, /* 266 */
+       { 5,    0,      printargs,              "SYS_267"               }, /* 267 */
+       { 5,    0,      printargs,              "SYS_268"               }, /* 268 */
+       { 5,    0,      printargs,              "SYS_269"               }, /* 269 */
+       { 5,    0,      printargs,              "SYS_270"               }, /* 270 */
+       { 5,    0,      printargs,              "SYS_271"               }, /* 271 */
+       { 5,    0,      printargs,              "SYS_272"               }, /* 272 */
+       { 5,    0,      printargs,              "SYS_273"               }, /* 273 */
+       { 5,    0,      printargs,              "SYS_274"               }, /* 274 */
+       { 5,    0,      printargs,              "SYS_275"               }, /* 275 */
+       { 5,    0,      printargs,              "SYS_276"               }, /* 276 */
+       { 5,    0,      printargs,              "SYS_277"               }, /* 277 */
+       { 5,    0,      printargs,              "SYS_278"               }, /* 278 */
+       { 5,    0,      printargs,              "SYS_279"               }, /* 279 */
+       { 5,    0,      printargs,              "SYS_280"               }, /* 280 */
+       { 5,    0,      printargs,              "SYS_281"               }, /* 281 */
+       { 5,    0,      printargs,              "SYS_282"               }, /* 282 */
+       { 5,    0,      printargs,              "SYS_283"               }, /* 283 */
+       { 5,    0,      printargs,              "SYS_284"               }, /* 284 */
+       { 5,    0,      printargs,              "SYS_285"               }, /* 285 */
+       { 5,    0,      printargs,              "SYS_286"               }, /* 286 */
+       { 5,    0,      printargs,              "SYS_287"               }, /* 287 */
+       { 5,    0,      printargs,              "SYS_288"               }, /* 288 */
+       { 5,    0,      printargs,              "SYS_289"               }, /* 289 */
+       { 5,    0,      printargs,              "SYS_290"               }, /* 290 */
+       { 5,    0,      printargs,              "SYS_291"               }, /* 291 */
+       { 5,    0,      printargs,              "SYS_292"               }, /* 292 */
+       { 5,    0,      printargs,              "SYS_293"               }, /* 293 */
+       { 5,    0,      printargs,              "SYS_294"               }, /* 294 */
diff --git a/linux/hppa/syscallent.sh b/linux/hppa/syscallent.sh
new file mode 100644 (file)
index 0000000..bfa0158
--- /dev/null
@@ -0,0 +1,73 @@
+#!/bin/sh
+# Copyright (c) 1993, 1994, 1995, 1996 Rick Sladkey <jrs@world.std.com>
+# All rights reserved.
+#
+# Redistribution and use in source and binary forms, with or without
+# modification, are permitted provided that the following conditions
+# are met:
+# 1. Redistributions of source code must retain the above copyright
+#    notice, this list of conditions and the following disclaimer.
+# 2. Redistributions in binary form must reproduce the above copyright
+#    notice, this list of conditions and the following disclaimer in the
+#    documentation and/or other materials provided with the distribution.
+# 3. The name of the author may not be used to endorse or promote products
+#    derived from this software without specific prior written permission.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
+# IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
+# OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
+# IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
+# INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
+# NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
+# THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+#
+#      $Id$
+
+cat $* |
+sed -n 's/^#[ ]*define[ ][ ]*__NR_\([^ ]*\)[ ]*[^0-9()]*(__NR_Linux + \([0-9]*\))$/\1 \2/p' |
+       sort +1n |
+       awk '
+       BEGIN {
+               tabs = "\t\t\t\t\t\t\t\t"
+               call = -1;
+       }
+       {
+               while (++call < $2) {
+                       f = "printargs"
+                       n = "SYS_" call
+                       s = "\t{ -1,\t0,\t"
+                       s = s f ","
+                       s = s substr(tabs, 1, 24/8 - int((length(f) + 1)/8))
+                       s = s "\"" n "\""
+                       s = s substr(tabs, 1, 16/8 - int((length(n) + 2)/8))
+                       s = s "}, /* " call " */"
+                       print s
+               }
+               f = "sys_" $1
+               n = $1
+               s = "\t{ -1,\t0,\t"
+               s = s f ","
+               s = s substr(tabs, 1, 24/8 - int((length(f) + 1)/8))
+               s = s "\"" n "\""
+               s = s substr(tabs, 1, 16/8 - int((length(n) + 2)/8))
+               s = s "}, /* " call " */"
+               print s
+       }
+       END {
+               limit = call + 100
+               while (++call < limit) {
+                       f = "printargs"
+                       n = "SYS_" call
+                       s = "\t{ -1,\t0,\t"
+                       s = s f ","
+                       s = s substr(tabs, 1, 24/8 - int((length(f) + 1)/8))
+                       s = s "\"" n "\""
+                       s = s substr(tabs, 1, 16/8 - int((length(n) + 2)/8))
+                       s = s "}, /* " call " */"
+                       print s
+               }
+       }
+       '
index 6ad5fe99275621582f84c3b1c1c822bfd04b119c..99b29951c0744636bc3f641bdff0511a002aa460 100644 (file)
@@ -109,7 +109,7 @@ int sys_osf_utimes();
 #endif
 
 
-#if !defined(ALPHA) && !defined(IA64) && !defined(MIPS)
+#if !defined(ALPHA) && !defined(IA64) && !defined(MIPS) &&!defined(HPPA)
 #ifdef POWERPC
 #  define SYS_socket_subcall   256
 #else
@@ -142,7 +142,7 @@ int sys_semget(), sys_semctl(), sys_semop();
 int sys_msgsnd(), sys_msgrcv(), sys_msgget(), sys_msgctl();
 int sys_shmat(), sys_shmdt(), sys_shmget(), sys_shmctl();
 
-#if !defined(ALPHA) && !defined(IA64) && !defined(MIPS) && !defined(SPARC)
+#if !defined(ALPHA) && !defined(IA64) && !defined(MIPS) && !defined(SPARC) &&!defined(HPPA)
 #ifdef POWERPC
 #  define SYS_ipc_subcall              ((SYS_socket_subcall)+(SYS_socket_nsubcalls))
 #else
index 11b9910ee9f3c2f413674543ac97b217f741bd9f..d2697cd48645f4f051d54a1eca4263ab73e2d3aa 100644 (file)
--- a/process.c
+++ b/process.c
@@ -475,6 +475,10 @@ int new;
        if (ptrace(PTRACE_POKEUSER, tcp->pid, (char*)(REG_A3), new)<0)
                return -1;
        return 0;
+#elif defined(HPPA)
+       if (ptrace(PTRACE_POKEUSER, tcp->pid, (char*)(PT_GR20), new)<0)
+               return -1;
+       return 0;
 #else
 #warning Do not know how to handle change_syscall for this architecture
 #endif /* architecture */
@@ -640,6 +644,24 @@ struct tcb *tcp;
                        return 0;
                }
 #ifdef LINUX
+#ifdef HPPA
+               /* The child must have run before it can be attached. */
+               /* This must be a bug in the parisc kernel, but I havn't
+                * identified it yet.  Seems to be an issue associated
+                * with attaching to a process (which sends it a signal)
+                * before that process has ever been scheduled.  When
+                * debugging, I started seeing crashes in
+                * arch/parisc/kernel/signal.c:do_signal(), apparently
+                * caused by r8 getting corrupt over the dequeue_signal()
+                * call.  Didn't make much sense though...
+                */
+               {
+                       struct timeval tv;
+                       tv.tv_sec = 0;
+                       tv.tv_usec = 10000;
+                       select(0, NULL, NULL, NULL, &tv);
+               }
+#endif
                if (ptrace(PTRACE_ATTACH, pid, (char *) 1, 0) < 0) {
                        perror("PTRACE_ATTACH");
                        fprintf(stderr, "Too late?\n");
@@ -1142,7 +1164,7 @@ struct tcb *tcp;
                }
        }
 #ifdef LINUX
-#if defined(ALPHA) || defined(SPARC) || defined(POWERPC)
+#if defined(ALPHA) || defined(SPARC) || defined(POWERPC) || defined(HPPA)
        tcp->flags |= TCB_WAITEXECVE;
 #endif /* ALPHA || SPARC || POWERPC */
 #endif /* LINUX */
@@ -1798,6 +1820,8 @@ struct xlat struct_user_offsets[] = {
 #endif
 #if defined(SPARC)
        /* XXX No support for these offsets yet. */
+#elif defined(HPPA)
+       /* XXX No support for these offsets yet. */
 #elif defined(POWERPC)
        { 4*PT_R0,              "4*PT_R0"                               },
        { 4*PT_R1,              "4*PT_R1"                               },
@@ -2097,7 +2121,9 @@ struct xlat struct_user_offsets[] = {
        { uoff(u_exdata.ux_shell[0]),"offsetof(struct user, u_exdata.ux_shell[0])"},
        { uoff(u_lofault),      "offsetof(struct user, u_lofault)"      },
 #endif /* SUNOS4 */
+#ifndef HPPA
        { sizeof(struct user),  "sizeof(struct user)"                   },
+#endif
        { 0,                    NULL                                    },
 };
 #endif
index fd16b1fc56a410c9126cfe6f6f0d6ea65e3cf44f..082f5c777c76596ef4485bc9dad65fecd899f85f 100644 (file)
--- a/signal.c
+++ b/signal.c
@@ -932,6 +932,11 @@ struct tcb *tcp;
                return RVAL_NONE | RVAL_STR;
        }
        return 0;
+#else
+#ifdef HPPA
+#warning NO sys_sigreturn DECODE FOR HPPA
+       return 0;
+#endif /* HPPA */
 #endif /* MIPS */
 #endif /* SPARC */
 #endif /* ALPHA */
index e57d689e18fe668d1b09c8bfccc5268cdcfa3cb9..ffd8f658215f91e4e46feef1e88cc8bd9c467d9b 100644 (file)
--- a/syscall.c
+++ b/syscall.c
@@ -633,6 +633,8 @@ struct tcb *tcp;
 #elif defined(S390)
        static long gpr2;
        static long pc;
+#elif defined(HPPA)
+       static long r28;
 #endif 
 #endif /* LINUX */
 #ifdef FREEBSD
@@ -806,6 +808,16 @@ struct tcb *tcp;
                        memmove (&regs.r_o0, &regs.r_o1, 7*sizeof(regs.r_o0));
                }
        }
+#elif defined(HPPA)
+       if (upeek(pid, PT_GR20, &scno) < 0)
+               return -1;
+       if (!(tcp->flags & TCB_INSYSCALL)) {
+               /* Check if we return from execve. */
+               if ((tcp->flags & TCB_WAITEXECVE)) {
+                       tcp->flags &= ~TCB_WAITEXECVE;
+                       return 0;
+               }
+       }
 #endif 
 #endif /* LINUX */
 #ifdef SUNOS4
@@ -938,7 +950,9 @@ struct tcb *tcp;
                        fprintf(stderr, "stray syscall exit: d0 = %ld\n", r0);
                return 0;
        }
-#else
+#elif defined (HPPA)
+       if (upeek(pid, PT_GR28, &r28) < 0)
+               return -1;
 #endif
 #endif /* LINUX */
        return 1;
@@ -1051,6 +1065,17 @@ struct tcb *tcp;
                        tcp->u_rval = regs.r_o0;
                        u_error = 0;
                }
+#else /* !SPARC */
+#ifdef HPPA
+               if (r28 && (unsigned) -r28 < nerrnos) {
+                       tcp->u_rval = -1;
+                       u_error = -r28;
+               }
+               else {
+                       tcp->u_rval = r28;
+                       u_error = 0;
+               }
+#endif /* HPPA */
 #endif /* SPARC */
 #endif /* ALPHA */
 #endif /* ARM */
@@ -1229,6 +1254,19 @@ struct tcb *tcp;
                for (i = 0; i < tcp->u_nargs; i++)
                        tcp->u_arg[i] = *((&regs.r_o0) + i);
        }
+#elif defined (HPPA)
+       {
+               int i;
+
+               if (tcp->scno >= 0 && tcp->scno < nsyscalls && sysent[tcp->scno].nargs != -1)
+                       tcp->u_nargs = sysent[tcp->scno].nargs;
+               else 
+                       tcp->u_nargs = MAX_ARGS;
+               for (i = 0; i < tcp->u_nargs; i++) {
+                       if (upeek(pid, PT_GR26-4*i, &tcp->u_arg[i]) < 0)
+                               return -1;
+               }
+       }
 #else /* Other architecture (like i386) (32bits specific) */
        {
                int i;
@@ -1516,7 +1554,7 @@ struct tcb *tcp;
 
        switch (tcp->scno + NR_SYSCALL_BASE) {
 #ifdef LINUX
-#if !defined (ALPHA) && !defined(IA64) && !defined(SPARC) && !defined(MIPS)
+#if !defined (ALPHA) && !defined(IA64) && !defined(SPARC) && !defined(MIPS) && !defined(HPPA)
        case SYS_socketcall:
                decode_subcall(tcp, SYS_socket_subcall,
                        SYS_socket_nsubcalls, deref_style);
diff --git a/util.c b/util.c
index c0b7cc0ceb2db633bb7dec40e4d19d51b1030c89..db5408e97cb864ab59a993751e33ed0196a0db74 100644 (file)
--- a/util.c
+++ b/util.c
@@ -902,6 +902,9 @@ struct tcb *tcp;
        pc = regs.r_pc;
 #elif defined(S390)
        if(upeek(tcp->pid,PT_PSWADDR,&pc) < 0)
+#elif defined(HPPA)
+       if(upeek(tcp->pid,PT_IAOQ0,&pc) < 0)
+               return -1;
 #endif
        return pc;
 #endif /* LINUX */
@@ -985,6 +988,14 @@ struct tcb *tcp;
                return;
        }
        tprintf("[%08lx] ", regs.r_pc);
+#elif defined(HPPA)
+       long pc;
+
+       if(upeek(tcp->pid,PT_IAOQ0,&pc) < 0) {
+               tprintf ("[????????] ");
+               return;
+       }
+       tprintf("[%08lx] ", pc);
 #endif /* !architecture */
 #endif /* LINUX */
 
@@ -1116,6 +1127,8 @@ struct tcb *tcp;
 #define LOOP   0x1000ffff
 #elif defined(S390)
 #define LOOP   0xa7f40000      /* BRC 15,0 */
+#elif defined(HPPA)
+#define LOOP   0xe81f1ff7      /* b,l,n <loc>,r0 */
 #else
 #error unknown architecture
 #endif
@@ -1142,6 +1155,10 @@ struct tcb *tcp;
 #elif defined(S390)
        if (upeek(tcp->pid,PT_PSWADDR, &tcp->baddr) < 0)
                return -1;
+#elif defined(HPPA)
+       if (upeek(tcp->pid, PT_IAOQ0, &tcp->baddr) < 0)
+               return -1;
+       tcp->baddr &= ~0x03;
 #else
 #error unknown architecture
 #endif
@@ -1229,6 +1246,8 @@ struct tcb *tcp;
        long pc;
 #elif defined(ALPHA)
        long pc;
+#elif defined(HPPA)
+       long iaoq;
 #endif /* architecture */
 
 #ifdef SPARC
@@ -1341,6 +1360,24 @@ struct tcb *tcp;
                                pc, tcp->baddr);
                return 0;
        }
+#elif defined(HPPA)
+       if (upeek(tcp->pid, PT_IAOQ0, &iaoq) < 0)
+               return -1;
+       iaoq &= ~0x03;
+       if (iaoq != tcp->baddr && iaoq != tcp->baddr + 4) {
+               /* The breakpoint has not been reached yet.  */
+               if (debug)
+                       fprintf(stderr, "NOTE: PC not at bpt (iaoq %#lx baddr %#lx)\n",
+                               iaoq, tcp->baddr);
+               return 0;
+       }
+       iaoq = tcp->baddr | 3;
+       /* We should be pointing at a 'ldi -1000,r1' in glibc, so it is
+        * safe to set both IAOQ0 and IAOQ1 to that so the PSW N bit
+        * has no significant effect.
+        */
+       ptrace(PTRACE_POKEUSER, tcp->pid, (void *)PT_IAOQ0, iaoq);
+       ptrace(PTRACE_POKEUSER, tcp->pid, (void *)PT_IAOQ1, iaoq);
 #endif /* arch */
 #endif /* !SPARC && !IA64 */
 #endif /* LINUX */