2 * Copyright (c) 2003 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 __TRU64_SYSCALLS_HH__
30 #define __TRU64_SYSCALLS_HH__
32 #include "targetarch/syscalls.hh"
33 #include "kern/tru64/tru64.hh"
35 struct SystemCalls<Tru64>
56 pre_F64_getfsstat = 18,
63 exec_with_loader = 25,
81 set_program_attributes = 43,
84 obsolete_osigaction = 46,
148 old_sigsetmask = 110,
153 obsolete_vtrcae = 115,
177 obsolete_42_sigreturn = 139,
179 old_getpeername = 141,
188 old_getsockname = 150,
198 pre_F64_statfs = 160,
199 pre_F64_fstatfs = 161,
207 alt_sigpending = 187,
224 getaddressconf = 214,
239 gettimeofday64 = 230,
240 settimeofday64 = 231,
247 set_speculative = 239,
252 proplist_syscall = 244,
284 msg_receive_trap = 21,
288 nxm_thread_destroy = 29,
291 nxm_thread_create = 32,
294 nxm_wakeup_idle = 36,
296 nxm_thread_kill = 38,
297 nxm_thread_block = 39,
298 nxm_thread_wakeup = 40,
300 nxm_get_binding = 42,
304 nxm_set_binding = 46,
307 nxm_thread_suspend = 49,
308 nxm_thread_resume = 50,
309 nxm_signal_check = 51,
310 htg_unix_syscall = 52,
317 nxm_pshared_init = 63,
318 nxm_pshared_block = 64,
319 nxm_pshared_unblock = 65,
320 nxm_pshared_destroy = 66,
333 mach_sctimes_10 = 80,
334 mach_sctimes_11 = 81,
335 mach_sctimes_port_alloc_dealloc = 82,
339 static const int Number = StandardNumber + MachNumber;
341 static const char *name(int num);
343 static bool validSyscallNumber(int num) {
344 return -MachNumber < num && num < StandardNumber;
347 static int convert(int syscall_num) {
348 if (!validSyscallNumber(syscall_num))
351 return syscall_num < 0 ? StandardNumber - syscall_num : syscall_num;
355 #endif // __TRU64_SYSCALLS_HH__