2 * Copyright (c) 2003-2005 The Regents of The University of Michigan
5 * Redistribution and use in source and binary forms, with or without
6 * modification, are permitted provided that the following conditions are
7 * met: redistributions of source code must retain the above copyright
8 * notice, this list of conditions and the following disclaimer;
9 * redistributions in binary form must reproduce the above copyright
10 * notice, this list of conditions and the following disclaimer in the
11 * documentation and/or other materials provided with the distribution;
12 * neither the name of the copyright holders nor the names of its
13 * contributors may be used to endorse or promote products derived from
14 * this software without specific prior written permission.
16 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
17 * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
18 * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
19 * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
20 * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
21 * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
22 * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
23 * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
24 * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
25 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
26 * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
29 #ifndef __KERN_TRU64_TRU64_SYSCALLS_HH__
30 #define __KERN_TRU64_TRU64_SYSCALLS_HH__
32 #include "kern/tru64/tru64.hh"
38 class SystemCalls<Tru64>
60 pre_F64_getfsstat = 18,
67 exec_with_loader = 25,
85 set_program_attributes = 43,
88 obsolete_osigaction = 46,
152 old_sigsetmask = 110,
157 obsolete_vtrcae = 115,
181 obsolete_42_sigreturn = 139,
183 old_getpeername = 141,
192 old_getsockname = 150,
202 pre_F64_statfs = 160,
203 pre_F64_fstatfs = 161,
211 alt_sigpending = 187,
228 getaddressconf = 214,
243 gettimeofday64 = 230,
244 settimeofday64 = 231,
251 set_speculative = 239,
256 proplist_syscall = 244,
288 msg_receive_trap = 21,
292 nxm_thread_destroy = 29,
295 nxm_thread_create = 32,
298 nxm_wakeup_idle = 36,
300 nxm_thread_kill = 38,
301 nxm_thread_block = 39,
302 nxm_thread_wakeup = 40,
304 nxm_get_binding = 42,
308 nxm_set_binding = 46,
311 nxm_thread_suspend = 49,
312 nxm_thread_resume = 50,
313 nxm_signal_check = 51,
314 htg_unix_syscall = 52,
321 nxm_pshared_init = 63,
322 nxm_pshared_block = 64,
323 nxm_pshared_unblock = 65,
324 nxm_pshared_destroy = 66,
337 mach_sctimes_10 = 80,
338 mach_sctimes_11 = 81,
339 mach_sctimes_port_alloc_dealloc = 82,
343 static const int Number = StandardNumber + MachNumber;
345 static const char *name(int num);
347 static bool validSyscallNumber(int num) {
348 return -MachNumber < num && num < StandardNumber;
351 static int convert(int syscall_num) {
352 if (!validSyscallNumber(syscall_num))
355 return syscall_num < 0 ? StandardNumber - syscall_num : syscall_num;
359 #endif // __KERN_TRU64_TRU64_SYSCALLS_HH__