process.cc (10050:d222a22f78e9) process.cc (10203:3b9e1fa3da47)
1/*
2 * Copyright (c) 2010-2013 ARM Limited
3 * All rights reserved
4 *
5 * The license below extends only to copyright in the software and shall
6 * not be construed as granting a license to any other intellectual
7 * property including but not limited to intellectual property relating
8 * to a hardware implementation of the functionality of the software
9 * licensed hereunder. You may use the software subject to the license
10 * terms below provided that you ensure that this notice is replicated
11 * unmodified and in its entirety in all distributions of the software,
12 * modified or unmodified, in source code or in binary form.
13 *
14 * Copyright (c) 2003-2005 The Regents of The University of Michigan
15 * Copyright (c) 2007-2008 The Florida State University
16 * All rights reserved.
17 *
18 * Redistribution and use in source and binary forms, with or without
19 * modification, are permitted provided that the following conditions are
20 * met: redistributions of source code must retain the above copyright
21 * notice, this list of conditions and the following disclaimer;
22 * redistributions in binary form must reproduce the above copyright
23 * notice, this list of conditions and the following disclaimer in the
24 * documentation and/or other materials provided with the distribution;
25 * neither the name of the copyright holders nor the names of its
26 * contributors may be used to endorse or promote products derived from
27 * this software without specific prior written permission.
28 *
29 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
30 * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
31 * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
32 * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
33 * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
34 * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
35 * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
36 * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
37 * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
38 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
39 * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
40 *
41 * Authors: Korey Sewell
42 * Stephen Hines
43 * Ali Saidi
44 * Giacomo Gabrielli
45 */
46
47#include "arch/arm/linux/linux.hh"
48#include "arch/arm/linux/process.hh"
49#include "arch/arm/isa_traits.hh"
50#include "base/trace.hh"
51#include "cpu/thread_context.hh"
52#include "kern/linux/linux.hh"
53#include "sim/process.hh"
54#include "sim/syscall_emul.hh"
55#include "sim/system.hh"
56
57using namespace std;
58using namespace ArmISA;
59
60/// Target uname() handler.
61static SyscallReturn
62unameFunc32(SyscallDesc *desc, int callnum, LiveProcess *process,
63 ThreadContext *tc)
64{
65 int index = 0;
66 TypedBufferArg<Linux::utsname> name(process->getSyscallArg(tc, index));
67
68 strcpy(name->sysname, "Linux");
69 strcpy(name->nodename, "m5.eecs.umich.edu");
70 strcpy(name->release, "3.0.0");
71 strcpy(name->version, "#1 Mon Aug 18 11:32:15 EDT 2003");
72 strcpy(name->machine, "armv7l");
73
74 name.copyOut(tc->getMemProxy());
75 return 0;
76}
77
78/// Target uname() handler.
79static SyscallReturn
80unameFunc64(SyscallDesc *desc, int callnum, LiveProcess *process,
81 ThreadContext *tc)
82{
83 int index = 0;
84 TypedBufferArg<Linux::utsname> name(process->getSyscallArg(tc, index));
85
86 strcpy(name->sysname, "Linux");
87 strcpy(name->nodename, "gem5");
88 strcpy(name->release, "3.7.0+");
89 strcpy(name->version, "#1 SMP Sat Dec 1 00:00:00 GMT 2012");
90 strcpy(name->machine, "armv8l");
91
92 name.copyOut(tc->getMemProxy());
93 return 0;
94}
95
96/// Target set_tls() handler.
97static SyscallReturn
98setTLSFunc32(SyscallDesc *desc, int callnum, LiveProcess *process,
99 ThreadContext *tc)
100{
101 int index = 0;
102 uint32_t tlsPtr = process->getSyscallArg(tc, index);
103
104 tc->getMemProxy().writeBlob(ArmLinuxProcess32::commPage + 0x0ff0,
105 (uint8_t *)&tlsPtr, sizeof(tlsPtr));
106 tc->setMiscReg(MISCREG_TPIDRURO,tlsPtr);
107 return 0;
108}
109
110static SyscallReturn
111setTLSFunc64(SyscallDesc *desc, int callnum, LiveProcess *process,
112 ThreadContext *tc)
113{
114 int index = 0;
115 uint32_t tlsPtr = process->getSyscallArg(tc, index);
116
117 tc->setMiscReg(MISCREG_TPIDRRO_EL0, tlsPtr);
118 return 0;
119}
120
121static SyscallDesc syscallDescs32[] = {
122 /* 0 */ SyscallDesc("syscall", unimplementedFunc),
123 /* 1 */ SyscallDesc("exit", exitFunc),
124 /* 2 */ SyscallDesc("fork", unimplementedFunc),
125 /* 3 */ SyscallDesc("read", readFunc),
126 /* 4 */ SyscallDesc("write", writeFunc),
127 /* 5 */ SyscallDesc("open", openFunc<ArmLinux32>),
128 /* 6 */ SyscallDesc("close", closeFunc),
129 /* 7 */ SyscallDesc("unused#7", unimplementedFunc),
130 /* 8 */ SyscallDesc("creat", unimplementedFunc),
131 /* 9 */ SyscallDesc("link", unimplementedFunc),
132 /* 10 */ SyscallDesc("unlink", unlinkFunc),
133 /* 11 */ SyscallDesc("execve", unimplementedFunc),
134 /* 12 */ SyscallDesc("chdir", unimplementedFunc),
135 /* 13 */ SyscallDesc("time", timeFunc<ArmLinux32>),
136 /* 14 */ SyscallDesc("mknod", unimplementedFunc),
137 /* 15 */ SyscallDesc("chmod", chmodFunc<ArmLinux32>),
138 /* 16 */ SyscallDesc("lchown", chownFunc),
139 /* 17 */ SyscallDesc("unused#17", unimplementedFunc),
140 /* 18 */ SyscallDesc("unused#18", unimplementedFunc),
141 /* 19 */ SyscallDesc("lseek", lseekFunc),
142 /* 20 */ SyscallDesc("getpid", getpidFunc),
143 /* 21 */ SyscallDesc("mount", unimplementedFunc),
144 /* 22 */ SyscallDesc("umount", unimplementedFunc),
145 /* 23 */ SyscallDesc("setuid", setuidFunc),
146 /* 24 */ SyscallDesc("getuid", getuidFunc),
147 /* 25 */ SyscallDesc("stime", unimplementedFunc),
148 /* 26 */ SyscallDesc("ptrace", unimplementedFunc),
149 /* 27 */ SyscallDesc("alarm", unimplementedFunc),
150 /* 28 */ SyscallDesc("unused#28", unimplementedFunc),
151 /* 29 */ SyscallDesc("pause", unimplementedFunc),
152 /* 30 */ SyscallDesc("utime", unimplementedFunc),
153 /* 31 */ SyscallDesc("unused#31", unimplementedFunc),
154 /* 32 */ SyscallDesc("unused#32", unimplementedFunc),
155 /* 33 */ SyscallDesc("access", accessFunc),
156 /* 34 */ SyscallDesc("nice", unimplementedFunc),
157 /* 35 */ SyscallDesc("unused#35", unimplementedFunc),
158 /* 36 */ SyscallDesc("sync", unimplementedFunc),
159 /* 37 */ SyscallDesc("kill", ignoreFunc),
160 /* 38 */ SyscallDesc("rename", renameFunc),
161 /* 39 */ SyscallDesc("mkdir", mkdirFunc),
162 /* 40 */ SyscallDesc("rmdir", unimplementedFunc),
163 /* 41 */ SyscallDesc("dup", dupFunc),
164 /* 42 */ SyscallDesc("pipe", pipePseudoFunc),
165 /* 43 */ SyscallDesc("times", timesFunc<ArmLinux32>),
166 /* 44 */ SyscallDesc("unused#44", unimplementedFunc),
167 /* 45 */ SyscallDesc("brk", brkFunc),
168 /* 46 */ SyscallDesc("setgid", unimplementedFunc),
169 /* 47 */ SyscallDesc("getgid", getgidFunc),
170 /* 48 */ SyscallDesc("unused#48", unimplementedFunc),
171 /* 49 */ SyscallDesc("geteuid", geteuidFunc),
172 /* 50 */ SyscallDesc("getegid", getegidFunc),
173 /* 51 */ SyscallDesc("acct", unimplementedFunc),
174 /* 52 */ SyscallDesc("umount2", unimplementedFunc),
175 /* 53 */ SyscallDesc("unused#53", unimplementedFunc),
176 /* 54 */ SyscallDesc("ioctl", ioctlFunc<ArmLinux32>),
177 /* 55 */ SyscallDesc("fcntl", fcntlFunc),
178 /* 56 */ SyscallDesc("unused#56", unimplementedFunc),
179 /* 57 */ SyscallDesc("setpgid", unimplementedFunc),
180 /* 58 */ SyscallDesc("unused#58", unimplementedFunc),
181 /* 59 */ SyscallDesc("unused#59", unimplementedFunc),
182 /* 60 */ SyscallDesc("umask", umaskFunc),
183 /* 61 */ SyscallDesc("chroot", unimplementedFunc),
184 /* 62 */ SyscallDesc("ustat", unimplementedFunc),
185 /* 63 */ SyscallDesc("dup2", unimplementedFunc),
186 /* 64 */ SyscallDesc("getppid", getppidFunc),
187 /* 65 */ SyscallDesc("getpgrp", unimplementedFunc),
188 /* 66 */ SyscallDesc("setsid", unimplementedFunc),
189 /* 67 */ SyscallDesc("sigaction",unimplementedFunc),
190 /* 68 */ SyscallDesc("unused#68", unimplementedFunc),
191 /* 69 */ SyscallDesc("unused#69", unimplementedFunc),
192 /* 70 */ SyscallDesc("setreuid", unimplementedFunc),
193 /* 71 */ SyscallDesc("setregid", unimplementedFunc),
194 /* 72 */ SyscallDesc("sigsuspend", unimplementedFunc),
195 /* 73 */ SyscallDesc("sigpending", unimplementedFunc),
196 /* 74 */ SyscallDesc("sethostname", ignoreFunc),
197 /* 75 */ SyscallDesc("setrlimit", ignoreFunc),
198 /* 76 */ SyscallDesc("getrlimit", getrlimitFunc<ArmLinux32>),
199 /* 77 */ SyscallDesc("getrusage", getrusageFunc<ArmLinux32>),
200 /* 78 */ SyscallDesc("gettimeofday", gettimeofdayFunc<ArmLinux32>),
201 /* 79 */ SyscallDesc("settimeofday", unimplementedFunc),
202 /* 80 */ SyscallDesc("getgroups", unimplementedFunc),
203 /* 81 */ SyscallDesc("setgroups", unimplementedFunc),
204 /* 82 */ SyscallDesc("reserved#82", unimplementedFunc),
205 /* 83 */ SyscallDesc("symlink", unimplementedFunc),
206 /* 84 */ SyscallDesc("unused#84", unimplementedFunc),
207 /* 85 */ SyscallDesc("readlink", readlinkFunc),
208 /* 86 */ SyscallDesc("uselib", unimplementedFunc),
209 /* 87 */ SyscallDesc("swapon", unimplementedFunc),
210 /* 88 */ SyscallDesc("reboot", unimplementedFunc),
211 /* 89 */ SyscallDesc("readdir", unimplementedFunc),
212 /* 90 */ SyscallDesc("mmap", mmapFunc<ArmLinux32>),
213 /* 91 */ SyscallDesc("munmap", munmapFunc),
214 /* 92 */ SyscallDesc("truncate", truncateFunc),
215 /* 93 */ SyscallDesc("ftruncate", ftruncateFunc),
216 /* 94 */ SyscallDesc("fchmod", unimplementedFunc),
217 /* 95 */ SyscallDesc("fchown", unimplementedFunc),
218 /* 96 */ SyscallDesc("getpriority", unimplementedFunc),
219 /* 97 */ SyscallDesc("setpriority", unimplementedFunc),
220 /* 98 */ SyscallDesc("unused#98", unimplementedFunc),
221 /* 99 */ SyscallDesc("statfs", unimplementedFunc),
222 /* 100 */ SyscallDesc("fstatfs", unimplementedFunc),
223 /* 101 */ SyscallDesc("unused#101", unimplementedFunc),
224 /* 102 */ SyscallDesc("socketcall", unimplementedFunc),
225 /* 103 */ SyscallDesc("syslog", unimplementedFunc),
226 /* 104 */ SyscallDesc("setitimer", unimplementedFunc),
227 /* 105 */ SyscallDesc("getitimer", unimplementedFunc),
228 /* 106 */ SyscallDesc("stat", statFunc<ArmLinux32>),
229 /* 107 */ SyscallDesc("lstat", unimplementedFunc),
230 /* 108 */ SyscallDesc("fstat", fstatFunc<ArmLinux32>),
231 /* 109 */ SyscallDesc("unused#109", unimplementedFunc),
232 /* 110 */ SyscallDesc("unused#101", unimplementedFunc),
233 /* 111 */ SyscallDesc("vhangup", unimplementedFunc),
234 /* 112 */ SyscallDesc("unused#112", unimplementedFunc),
235 /* 113 */ SyscallDesc("syscall", unimplementedFunc),
236 /* 114 */ SyscallDesc("wait4", unimplementedFunc),
237 /* 115 */ SyscallDesc("swapoff", unimplementedFunc),
238 /* 116 */ SyscallDesc("sysinfo", sysinfoFunc<ArmLinux32>),
239 /* 117 */ SyscallDesc("ipc", unimplementedFunc),
240 /* 118 */ SyscallDesc("fsync", unimplementedFunc),
241 /* 119 */ SyscallDesc("sigreturn", unimplementedFunc),
242 /* 120 */ SyscallDesc("clone", cloneFunc),
243 /* 121 */ SyscallDesc("setdomainname", unimplementedFunc),
244 /* 122 */ SyscallDesc("uname", unameFunc32),
245 /* 123 */ SyscallDesc("unused#123", unimplementedFunc),
246 /* 124 */ SyscallDesc("adjtimex", unimplementedFunc),
247 /* 125 */ SyscallDesc("mprotect", ignoreFunc),
248 /* 126 */ SyscallDesc("sigprocmask", ignoreWarnOnceFunc),
249 /* 127 */ SyscallDesc("unused#127", unimplementedFunc),
250 /* 128 */ SyscallDesc("init_module", unimplementedFunc),
251 /* 129 */ SyscallDesc("delete_module", unimplementedFunc),
252 /* 130 */ SyscallDesc("unused#130", unimplementedFunc),
253 /* 131 */ SyscallDesc("quotactl", unimplementedFunc),
254 /* 132 */ SyscallDesc("getpgid", unimplementedFunc),
255 /* 133 */ SyscallDesc("fchdir", unimplementedFunc),
256 /* 134 */ SyscallDesc("bdflush", unimplementedFunc),
257 /* 135 */ SyscallDesc("sysfs", unimplementedFunc),
258 /* 136 */ SyscallDesc("personality", unimplementedFunc),
259 /* 137 */ SyscallDesc("reserved#138", unimplementedFunc),
260 /* 138 */ SyscallDesc("setfsuid", unimplementedFunc),
261 /* 139 */ SyscallDesc("setfsgid", unimplementedFunc),
262 /* 140 */ SyscallDesc("llseek", _llseekFunc),
263 /* 141 */ SyscallDesc("getdents", unimplementedFunc),
264 /* 142 */ SyscallDesc("newselect", unimplementedFunc),
265 /* 143 */ SyscallDesc("flock", unimplementedFunc),
266 /* 144 */ SyscallDesc("msync", unimplementedFunc),
267 /* 145 */ SyscallDesc("readv", unimplementedFunc),
268 /* 146 */ SyscallDesc("writev", writevFunc<ArmLinux32>),
269 /* 147 */ SyscallDesc("getsid", unimplementedFunc),
270 /* 148 */ SyscallDesc("fdatasync", unimplementedFunc),
271 /* 149 */ SyscallDesc("sysctl", unimplementedFunc),
272 /* 150 */ SyscallDesc("mlock", unimplementedFunc),
273 /* 151 */ SyscallDesc("munlock", unimplementedFunc),
274 /* 152 */ SyscallDesc("mlockall", unimplementedFunc),
275 /* 153 */ SyscallDesc("munlockall", unimplementedFunc),
276 /* 154 */ SyscallDesc("sched_setparam", unimplementedFunc),
277 /* 155 */ SyscallDesc("sched_getparam", unimplementedFunc),
278 /* 156 */ SyscallDesc("sched_setscheduler", unimplementedFunc),
279 /* 157 */ SyscallDesc("sched_getscheduler", unimplementedFunc),
280 /* 158 */ SyscallDesc("sched_yield", unimplementedFunc),
281 /* 159 */ SyscallDesc("sched_get_priority_max", unimplementedFunc),
282 /* 160 */ SyscallDesc("sched_get_priority_min", unimplementedFunc),
283 /* 161 */ SyscallDesc("sched_rr_get_interval", unimplementedFunc),
284 /* 162 */ SyscallDesc("nanosleep", ignoreWarnOnceFunc),
285 /* 163 */ SyscallDesc("mremap", mremapFunc<ArmLinux32>), // ARM-specific
286 /* 164 */ SyscallDesc("setresuid", unimplementedFunc),
287 /* 165 */ SyscallDesc("getresuid", unimplementedFunc),
288 /* 166 */ SyscallDesc("unused#166", unimplementedFunc),
289 /* 167 */ SyscallDesc("unused#167", unimplementedFunc),
290 /* 168 */ SyscallDesc("poll", unimplementedFunc),
291 /* 169 */ SyscallDesc("nfsservctl", unimplementedFunc),
292 /* 170 */ SyscallDesc("setresgid", unimplementedFunc),
293 /* 171 */ SyscallDesc("getresgid", unimplementedFunc),
294 /* 172 */ SyscallDesc("prctl", unimplementedFunc),
295 /* 173 */ SyscallDesc("rt_sigreturn", unimplementedFunc),
296 /* 174 */ SyscallDesc("rt_sigaction", ignoreWarnOnceFunc),
297 /* 175 */ SyscallDesc("rt_sigprocmask", ignoreWarnOnceFunc),
298 /* 176 */ SyscallDesc("rt_sigpending", unimplementedFunc),
299 /* 177 */ SyscallDesc("rt_sigtimedwait", unimplementedFunc),
300 /* 178 */ SyscallDesc("rt_sigqueueinfo", ignoreFunc),
301 /* 179 */ SyscallDesc("rt_sigsuspend", unimplementedFunc),
302 /* 180 */ SyscallDesc("pread64", unimplementedFunc),
303 /* 181 */ SyscallDesc("pwrite64", unimplementedFunc),
304 /* 182 */ SyscallDesc("chown", unimplementedFunc),
305 /* 183 */ SyscallDesc("getcwd", getcwdFunc),
306 /* 184 */ SyscallDesc("capget", unimplementedFunc),
307 /* 185 */ SyscallDesc("capset", unimplementedFunc),
308 /* 186 */ SyscallDesc("sigaltstack", unimplementedFunc),
309 /* 187 */ SyscallDesc("sendfile", unimplementedFunc),
310 /* 188 */ SyscallDesc("unused#188", unimplementedFunc),
311 /* 189 */ SyscallDesc("unused#189", unimplementedFunc),
312 /* 190 */ SyscallDesc("vfork", unimplementedFunc),
313 /* 191 */ SyscallDesc("getrlimit", getrlimitFunc<ArmLinux32>),
314 /* 192 */ SyscallDesc("mmap2", mmapFunc<ArmLinux32>),
315 /* 193 */ SyscallDesc("truncate64", unimplementedFunc),
316 /* 194 */ SyscallDesc("ftruncate64", ftruncate64Func),
317 /* 195 */ SyscallDesc("stat64", stat64Func<ArmLinux32>),
318 /* 196 */ SyscallDesc("lstat64", lstat64Func<ArmLinux32>),
319 /* 197 */ SyscallDesc("fstat64", fstat64Func<ArmLinux32>),
320 /* 198 */ SyscallDesc("lchown", unimplementedFunc),
321 /* 199 */ SyscallDesc("getuid", getuidFunc),
322 /* 200 */ SyscallDesc("getgid", getgidFunc),
323 /* 201 */ SyscallDesc("geteuid", geteuidFunc),
324 /* 202 */ SyscallDesc("getegid", getegidFunc),
325 /* 203 */ SyscallDesc("setreuid", unimplementedFunc),
326 /* 204 */ SyscallDesc("setregid", unimplementedFunc),
327 /* 205 */ SyscallDesc("getgroups", unimplementedFunc),
328 /* 206 */ SyscallDesc("setgroups", unimplementedFunc),
329 /* 207 */ SyscallDesc("fchown", unimplementedFunc),
330 /* 208 */ SyscallDesc("setresuid", unimplementedFunc),
331 /* 209 */ SyscallDesc("getresuid", unimplementedFunc),
332 /* 210 */ SyscallDesc("setresgid", unimplementedFunc),
333 /* 211 */ SyscallDesc("getresgid", unimplementedFunc),
334 /* 212 */ SyscallDesc("chown", unimplementedFunc),
335 /* 213 */ SyscallDesc("setuid", unimplementedFunc),
336 /* 214 */ SyscallDesc("setgid", unimplementedFunc),
337 /* 215 */ SyscallDesc("setfsuid", unimplementedFunc),
338 /* 216 */ SyscallDesc("setfsgid", unimplementedFunc),
339 /* 217 */ SyscallDesc("getdents64", unimplementedFunc),
340 /* 218 */ SyscallDesc("pivot_root", unimplementedFunc),
341 /* 219 */ SyscallDesc("mincore", unimplementedFunc),
342 /* 220 */ SyscallDesc("madvise", unimplementedFunc),
343 /* 221 */ SyscallDesc("fcntl64", fcntl64Func),
344 /* 222 */ SyscallDesc("unused#222", unimplementedFunc),
345 /* 223 */ SyscallDesc("unknown#223", unimplementedFunc),
346 /* 224 */ SyscallDesc("gettid", unimplementedFunc),
347 /* 225 */ SyscallDesc("readahead", unimplementedFunc),
348 /* 226 */ SyscallDesc("setxattr", unimplementedFunc),
349 /* 227 */ SyscallDesc("lsetxattr", unimplementedFunc),
350 /* 228 */ SyscallDesc("fsetxattr", unimplementedFunc),
351 /* 229 */ SyscallDesc("getxattr", unimplementedFunc),
352 /* 230 */ SyscallDesc("lgetxattr", unimplementedFunc),
353 /* 231 */ SyscallDesc("fgetxattr", unimplementedFunc),
354 /* 232 */ SyscallDesc("listxattr", unimplementedFunc),
355 /* 233 */ SyscallDesc("llistxattr", unimplementedFunc),
356 /* 234 */ SyscallDesc("flistxattr", unimplementedFunc),
357 /* 235 */ SyscallDesc("removexattr", unimplementedFunc),
358 /* 236 */ SyscallDesc("lremovexattr", unimplementedFunc),
359 /* 237 */ SyscallDesc("fremovexattr", unimplementedFunc),
360 /* 238 */ SyscallDesc("tkill", unimplementedFunc),
361 /* 239 */ SyscallDesc("sendfile64", unimplementedFunc),
362 /* 240 */ SyscallDesc("futex", ignoreWarnOnceFunc),
363 /* 241 */ SyscallDesc("sched_setaffinity", unimplementedFunc),
364 /* 242 */ SyscallDesc("sched_getaffinity", unimplementedFunc),
365 /* 243 */ SyscallDesc("io_setup", unimplementedFunc),
366 /* 244 */ SyscallDesc("io_destroy", unimplementedFunc),
367 /* 245 */ SyscallDesc("io_getevents", unimplementedFunc),
368 /* 246 */ SyscallDesc("io_submit", unimplementedFunc),
369 /* 247 */ SyscallDesc("io_cancel", unimplementedFunc),
370 /* 248 */ SyscallDesc("exit_group", exitGroupFunc),
371 /* 249 */ SyscallDesc("lookup_dcookie", unimplementedFunc),
372 /* 250 */ SyscallDesc("epoll_create", unimplementedFunc),
373 /* 251 */ SyscallDesc("epoll_ctl", unimplementedFunc),
374 /* 252 */ SyscallDesc("epoll_wait", unimplementedFunc),
375 /* 253 */ SyscallDesc("remap_file_pages", unimplementedFunc),
376 /* 254 */ SyscallDesc("unused#254", unimplementedFunc),
377 /* 255 */ SyscallDesc("unused#255", unimplementedFunc),
378 /* 256 */ SyscallDesc("set_tid_address", unimplementedFunc),
379 /* 257 */ SyscallDesc("timer_create", unimplementedFunc),
380 /* 258 */ SyscallDesc("timer_settime", unimplementedFunc),
381 /* 259 */ SyscallDesc("timer_gettime", unimplementedFunc),
382 /* 260 */ SyscallDesc("timer_getoverrun", unimplementedFunc),
383 /* 261 */ SyscallDesc("timer_delete", unimplementedFunc),
384 /* 262 */ SyscallDesc("clock_settime", unimplementedFunc),
385 /* 263 */ SyscallDesc("clock_gettime", unimplementedFunc),
386 /* 264 */ SyscallDesc("clock_getres", unimplementedFunc),
387 /* 265 */ SyscallDesc("clock_nanosleep", unimplementedFunc),
388 /* 266 */ SyscallDesc("statfs64", unimplementedFunc),
389 /* 267 */ SyscallDesc("fstatfs64", unimplementedFunc),
390 /* 268 */ SyscallDesc("tgkill", unimplementedFunc),
391 /* 269 */ SyscallDesc("utimes", unimplementedFunc),
392 /* 270 */ SyscallDesc("arm_fadvise64_64", unimplementedFunc),
393 /* 271 */ SyscallDesc("pciconfig_iobase", unimplementedFunc),
394 /* 272 */ SyscallDesc("pciconfig_read", unimplementedFunc),
395 /* 273 */ SyscallDesc("pciconfig_write", unimplementedFunc),
396 /* 274 */ SyscallDesc("mq_open", unimplementedFunc),
397 /* 275 */ SyscallDesc("mq_unlink", unimplementedFunc),
398 /* 276 */ SyscallDesc("mq_timedsend", unimplementedFunc),
399 /* 277 */ SyscallDesc("mq_timedreceive", unimplementedFunc),
400 /* 278 */ SyscallDesc("mq_notify", unimplementedFunc),
401 /* 279 */ SyscallDesc("mq_getsetattr", unimplementedFunc),
402 /* 280 */ SyscallDesc("waitid", unimplementedFunc),
403 /* 281 */ SyscallDesc("socket", unimplementedFunc),
404 /* 282 */ SyscallDesc("bind", unimplementedFunc),
405 /* 283 */ SyscallDesc("connect", unimplementedFunc),
406 /* 284 */ SyscallDesc("listen", unimplementedFunc),
407 /* 285 */ SyscallDesc("accept", unimplementedFunc),
408 /* 286 */ SyscallDesc("getsockname", unimplementedFunc),
409 /* 287 */ SyscallDesc("getpeername", unimplementedFunc),
410 /* 288 */ SyscallDesc("socketpair", unimplementedFunc),
411 /* 289 */ SyscallDesc("send", unimplementedFunc),
412 /* 290 */ SyscallDesc("sendto", unimplementedFunc),
413 /* 291 */ SyscallDesc("recv", unimplementedFunc),
414 /* 292 */ SyscallDesc("recvfrom", unimplementedFunc),
415 /* 293 */ SyscallDesc("shutdown", unimplementedFunc),
416 /* 294 */ SyscallDesc("setsockopt", unimplementedFunc),
417 /* 295 */ SyscallDesc("getsockopt", unimplementedFunc),
418 /* 296 */ SyscallDesc("sendmsg", unimplementedFunc),
419 /* 297 */ SyscallDesc("rcvmsg", unimplementedFunc),
420 /* 298 */ SyscallDesc("semop", unimplementedFunc),
421 /* 299 */ SyscallDesc("semget", unimplementedFunc),
422 /* 300 */ SyscallDesc("semctl", unimplementedFunc),
423 /* 301 */ SyscallDesc("msgsend", unimplementedFunc),
424 /* 302 */ SyscallDesc("msgrcv", unimplementedFunc),
425 /* 303 */ SyscallDesc("msgget", unimplementedFunc),
426 /* 304 */ SyscallDesc("msgctl", unimplementedFunc),
427 /* 305 */ SyscallDesc("shmat", unimplementedFunc),
428 /* 306 */ SyscallDesc("shmdt", unimplementedFunc),
429 /* 307 */ SyscallDesc("shmget", unimplementedFunc),
430 /* 308 */ SyscallDesc("shmctl", unimplementedFunc),
431 /* 309 */ SyscallDesc("add_key", unimplementedFunc),
432 /* 310 */ SyscallDesc("request_key", unimplementedFunc),
433 /* 311 */ SyscallDesc("keyctl", unimplementedFunc),
434 /* 312 */ SyscallDesc("semtimedop", unimplementedFunc),
435 /* 313 */ SyscallDesc("unused#313", unimplementedFunc),
436 /* 314 */ SyscallDesc("ioprio_set", unimplementedFunc),
437 /* 315 */ SyscallDesc("ioprio_get", unimplementedFunc),
438 /* 316 */ SyscallDesc("inotify_init", unimplementedFunc),
439 /* 317 */ SyscallDesc("inotify_add_watch", unimplementedFunc),
440 /* 318 */ SyscallDesc("inotify_rm_watch", unimplementedFunc),
441 /* 319 */ SyscallDesc("mbind", unimplementedFunc),
442 /* 320 */ SyscallDesc("get_mempolicy", unimplementedFunc),
443 /* 321 */ SyscallDesc("set_mempolicy", unimplementedFunc),
444 /* 322 */ SyscallDesc("openat", unimplementedFunc),
445 /* 323 */ SyscallDesc("mkdirat", unimplementedFunc),
446 /* 324 */ SyscallDesc("mknodat", unimplementedFunc),
447 /* 325 */ SyscallDesc("fchownat", unimplementedFunc),
448 /* 326 */ SyscallDesc("futimesat", unimplementedFunc),
449 /* 327 */ SyscallDesc("fstatat64", unimplementedFunc),
450 /* 328 */ SyscallDesc("unlinkat", unimplementedFunc),
451 /* 329 */ SyscallDesc("renameat", unimplementedFunc),
452 /* 330 */ SyscallDesc("linkat", unimplementedFunc),
453 /* 331 */ SyscallDesc("symlinkat", unimplementedFunc),
454 /* 332 */ SyscallDesc("readlinkat", unimplementedFunc),
455 /* 333 */ SyscallDesc("fchmodat", unimplementedFunc),
456 /* 334 */ SyscallDesc("faccessat", unimplementedFunc),
457 /* 335 */ SyscallDesc("pselect6", unimplementedFunc),
458 /* 336 */ SyscallDesc("ppoll", unimplementedFunc),
459 /* 337 */ SyscallDesc("unshare", unimplementedFunc),
460 /* 338 */ SyscallDesc("set_robust_list", unimplementedFunc),
461 /* 339 */ SyscallDesc("get_robust_list", unimplementedFunc),
462 /* 340 */ SyscallDesc("splice", unimplementedFunc),
463 /* 341 */ SyscallDesc("arm_sync_file_range", unimplementedFunc),
464 /* 342 */ SyscallDesc("tee", unimplementedFunc),
465 /* 343 */ SyscallDesc("vmsplice", unimplementedFunc),
466 /* 344 */ SyscallDesc("move_pages", unimplementedFunc),
467 /* 345 */ SyscallDesc("getcpu", unimplementedFunc),
468 /* 346 */ SyscallDesc("epoll_pwait", unimplementedFunc),
469 /* 347 */ SyscallDesc("sys_kexec_load", unimplementedFunc),
470 /* 348 */ SyscallDesc("sys_utimensat", unimplementedFunc),
471 /* 349 */ SyscallDesc("sys_signalfd", unimplementedFunc),
472 /* 350 */ SyscallDesc("sys_timerfd_create", unimplementedFunc),
473 /* 351 */ SyscallDesc("sys_eventfd", unimplementedFunc),
474 /* 352 */ SyscallDesc("sys_fallocate", unimplementedFunc),
475 /* 353 */ SyscallDesc("sys_timerfd_settime", unimplementedFunc),
476 /* 354 */ SyscallDesc("sys_timerfd_gettime", unimplementedFunc),
477 /* 355 */ SyscallDesc("sys_signalfd4", unimplementedFunc),
478 /* 356 */ SyscallDesc("sys_eventfd2", unimplementedFunc),
479 /* 357 */ SyscallDesc("sys_epoll_create1", unimplementedFunc),
480 /* 358 */ SyscallDesc("sys_dup3", unimplementedFunc),
481 /* 359 */ SyscallDesc("sys_pipe2", unimplementedFunc),
482 /* 360 */ SyscallDesc("sys_inotify_init1", unimplementedFunc),
483 /* 361 */ SyscallDesc("sys_preadv", unimplementedFunc),
484 /* 362 */ SyscallDesc("sys_pwritev", unimplementedFunc),
485 /* 363 */ SyscallDesc("sys_rt_tgsigqueueinfo", unimplementedFunc),
486 /* 364 */ SyscallDesc("sys_perf_event_open", unimplementedFunc),
487 /* 365 */ SyscallDesc("sys_recvmmsg", unimplementedFunc),
488};
489
490static SyscallDesc syscallDescs64[] = {
491 /* 0 */ SyscallDesc("io_setup", unimplementedFunc),
492 /* 1 */ SyscallDesc("io_destroy", unimplementedFunc),
493 /* 2 */ SyscallDesc("io_submit", unimplementedFunc),
494 /* 3 */ SyscallDesc("io_cancel", unimplementedFunc),
495 /* 4 */ SyscallDesc("io_getevents", unimplementedFunc),
496 /* 5 */ SyscallDesc("setxattr", unimplementedFunc),
497 /* 6 */ SyscallDesc("lsetxattr", unimplementedFunc),
498 /* 7 */ SyscallDesc("fsetxattr", unimplementedFunc),
499 /* 8 */ SyscallDesc("getxattr", unimplementedFunc),
500 /* 9 */ SyscallDesc("lgetxattr", unimplementedFunc),
501 /* 10 */ SyscallDesc("fgetxattr", unimplementedFunc),
502 /* 11 */ SyscallDesc("listxattr", unimplementedFunc),
503 /* 12 */ SyscallDesc("llistxattr", unimplementedFunc),
504 /* 13 */ SyscallDesc("flistxattr", unimplementedFunc),
505 /* 14 */ SyscallDesc("removexattr", unimplementedFunc),
506 /* 15 */ SyscallDesc("lremovexattr", unimplementedFunc),
507 /* 16 */ SyscallDesc("fremovexattr", unimplementedFunc),
508 /* 17 */ SyscallDesc("getcwd", getcwdFunc),
509 /* 18 */ SyscallDesc("lookup_dcookie", unimplementedFunc),
510 /* 19 */ SyscallDesc("eventfd2", unimplementedFunc),
511 /* 20 */ SyscallDesc("epoll_create1", unimplementedFunc),
512 /* 21 */ SyscallDesc("epoll_ctl", unimplementedFunc),
513 /* 22 */ SyscallDesc("epoll_pwait", unimplementedFunc),
514 /* 23 */ SyscallDesc("dup", dupFunc),
515 /* 24 */ SyscallDesc("dup3", unimplementedFunc),
516 /* 25 */ SyscallDesc("fcntl64", fcntl64Func),
517 /* 26 */ SyscallDesc("inotify_init1", unimplementedFunc),
518 /* 27 */ SyscallDesc("inotify_add_watch", unimplementedFunc),
519 /* 28 */ SyscallDesc("inotify_rm_watch", unimplementedFunc),
520 /* 29 */ SyscallDesc("ioctl", ioctlFunc<ArmLinux64>),
521 /* 30 */ SyscallDesc("ioprio_set", unimplementedFunc),
522 /* 31 */ SyscallDesc("ioprio_get", unimplementedFunc),
523 /* 32 */ SyscallDesc("flock", unimplementedFunc),
524 /* 33 */ SyscallDesc("mknodat", unimplementedFunc),
525 /* 34 */ SyscallDesc("mkdirat", unimplementedFunc),
526 /* 35 */ SyscallDesc("unlinkat", unimplementedFunc),
527 /* 36 */ SyscallDesc("symlinkat", unimplementedFunc),
528 /* 37 */ SyscallDesc("linkat", unimplementedFunc),
529 /* 38 */ SyscallDesc("renameat", unimplementedFunc),
530 /* 39 */ SyscallDesc("umount2", unimplementedFunc),
531 /* 40 */ SyscallDesc("mount", unimplementedFunc),
532 /* 41 */ SyscallDesc("pivot_root", unimplementedFunc),
533 /* 42 */ SyscallDesc("nfsservctl", unimplementedFunc),
534 /* 43 */ SyscallDesc("statfs64", unimplementedFunc),
535 /* 44 */ SyscallDesc("fstatfs64", unimplementedFunc),
536 /* 45 */ SyscallDesc("truncate64", unimplementedFunc),
537 /* 46 */ SyscallDesc("ftruncate64", ftruncate64Func),
538 /* 47 */ SyscallDesc("fallocate", unimplementedFunc),
1/*
2 * Copyright (c) 2010-2013 ARM Limited
3 * All rights reserved
4 *
5 * The license below extends only to copyright in the software and shall
6 * not be construed as granting a license to any other intellectual
7 * property including but not limited to intellectual property relating
8 * to a hardware implementation of the functionality of the software
9 * licensed hereunder. You may use the software subject to the license
10 * terms below provided that you ensure that this notice is replicated
11 * unmodified and in its entirety in all distributions of the software,
12 * modified or unmodified, in source code or in binary form.
13 *
14 * Copyright (c) 2003-2005 The Regents of The University of Michigan
15 * Copyright (c) 2007-2008 The Florida State University
16 * All rights reserved.
17 *
18 * Redistribution and use in source and binary forms, with or without
19 * modification, are permitted provided that the following conditions are
20 * met: redistributions of source code must retain the above copyright
21 * notice, this list of conditions and the following disclaimer;
22 * redistributions in binary form must reproduce the above copyright
23 * notice, this list of conditions and the following disclaimer in the
24 * documentation and/or other materials provided with the distribution;
25 * neither the name of the copyright holders nor the names of its
26 * contributors may be used to endorse or promote products derived from
27 * this software without specific prior written permission.
28 *
29 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
30 * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
31 * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
32 * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
33 * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
34 * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
35 * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
36 * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
37 * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
38 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
39 * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
40 *
41 * Authors: Korey Sewell
42 * Stephen Hines
43 * Ali Saidi
44 * Giacomo Gabrielli
45 */
46
47#include "arch/arm/linux/linux.hh"
48#include "arch/arm/linux/process.hh"
49#include "arch/arm/isa_traits.hh"
50#include "base/trace.hh"
51#include "cpu/thread_context.hh"
52#include "kern/linux/linux.hh"
53#include "sim/process.hh"
54#include "sim/syscall_emul.hh"
55#include "sim/system.hh"
56
57using namespace std;
58using namespace ArmISA;
59
60/// Target uname() handler.
61static SyscallReturn
62unameFunc32(SyscallDesc *desc, int callnum, LiveProcess *process,
63 ThreadContext *tc)
64{
65 int index = 0;
66 TypedBufferArg<Linux::utsname> name(process->getSyscallArg(tc, index));
67
68 strcpy(name->sysname, "Linux");
69 strcpy(name->nodename, "m5.eecs.umich.edu");
70 strcpy(name->release, "3.0.0");
71 strcpy(name->version, "#1 Mon Aug 18 11:32:15 EDT 2003");
72 strcpy(name->machine, "armv7l");
73
74 name.copyOut(tc->getMemProxy());
75 return 0;
76}
77
78/// Target uname() handler.
79static SyscallReturn
80unameFunc64(SyscallDesc *desc, int callnum, LiveProcess *process,
81 ThreadContext *tc)
82{
83 int index = 0;
84 TypedBufferArg<Linux::utsname> name(process->getSyscallArg(tc, index));
85
86 strcpy(name->sysname, "Linux");
87 strcpy(name->nodename, "gem5");
88 strcpy(name->release, "3.7.0+");
89 strcpy(name->version, "#1 SMP Sat Dec 1 00:00:00 GMT 2012");
90 strcpy(name->machine, "armv8l");
91
92 name.copyOut(tc->getMemProxy());
93 return 0;
94}
95
96/// Target set_tls() handler.
97static SyscallReturn
98setTLSFunc32(SyscallDesc *desc, int callnum, LiveProcess *process,
99 ThreadContext *tc)
100{
101 int index = 0;
102 uint32_t tlsPtr = process->getSyscallArg(tc, index);
103
104 tc->getMemProxy().writeBlob(ArmLinuxProcess32::commPage + 0x0ff0,
105 (uint8_t *)&tlsPtr, sizeof(tlsPtr));
106 tc->setMiscReg(MISCREG_TPIDRURO,tlsPtr);
107 return 0;
108}
109
110static SyscallReturn
111setTLSFunc64(SyscallDesc *desc, int callnum, LiveProcess *process,
112 ThreadContext *tc)
113{
114 int index = 0;
115 uint32_t tlsPtr = process->getSyscallArg(tc, index);
116
117 tc->setMiscReg(MISCREG_TPIDRRO_EL0, tlsPtr);
118 return 0;
119}
120
121static SyscallDesc syscallDescs32[] = {
122 /* 0 */ SyscallDesc("syscall", unimplementedFunc),
123 /* 1 */ SyscallDesc("exit", exitFunc),
124 /* 2 */ SyscallDesc("fork", unimplementedFunc),
125 /* 3 */ SyscallDesc("read", readFunc),
126 /* 4 */ SyscallDesc("write", writeFunc),
127 /* 5 */ SyscallDesc("open", openFunc<ArmLinux32>),
128 /* 6 */ SyscallDesc("close", closeFunc),
129 /* 7 */ SyscallDesc("unused#7", unimplementedFunc),
130 /* 8 */ SyscallDesc("creat", unimplementedFunc),
131 /* 9 */ SyscallDesc("link", unimplementedFunc),
132 /* 10 */ SyscallDesc("unlink", unlinkFunc),
133 /* 11 */ SyscallDesc("execve", unimplementedFunc),
134 /* 12 */ SyscallDesc("chdir", unimplementedFunc),
135 /* 13 */ SyscallDesc("time", timeFunc<ArmLinux32>),
136 /* 14 */ SyscallDesc("mknod", unimplementedFunc),
137 /* 15 */ SyscallDesc("chmod", chmodFunc<ArmLinux32>),
138 /* 16 */ SyscallDesc("lchown", chownFunc),
139 /* 17 */ SyscallDesc("unused#17", unimplementedFunc),
140 /* 18 */ SyscallDesc("unused#18", unimplementedFunc),
141 /* 19 */ SyscallDesc("lseek", lseekFunc),
142 /* 20 */ SyscallDesc("getpid", getpidFunc),
143 /* 21 */ SyscallDesc("mount", unimplementedFunc),
144 /* 22 */ SyscallDesc("umount", unimplementedFunc),
145 /* 23 */ SyscallDesc("setuid", setuidFunc),
146 /* 24 */ SyscallDesc("getuid", getuidFunc),
147 /* 25 */ SyscallDesc("stime", unimplementedFunc),
148 /* 26 */ SyscallDesc("ptrace", unimplementedFunc),
149 /* 27 */ SyscallDesc("alarm", unimplementedFunc),
150 /* 28 */ SyscallDesc("unused#28", unimplementedFunc),
151 /* 29 */ SyscallDesc("pause", unimplementedFunc),
152 /* 30 */ SyscallDesc("utime", unimplementedFunc),
153 /* 31 */ SyscallDesc("unused#31", unimplementedFunc),
154 /* 32 */ SyscallDesc("unused#32", unimplementedFunc),
155 /* 33 */ SyscallDesc("access", accessFunc),
156 /* 34 */ SyscallDesc("nice", unimplementedFunc),
157 /* 35 */ SyscallDesc("unused#35", unimplementedFunc),
158 /* 36 */ SyscallDesc("sync", unimplementedFunc),
159 /* 37 */ SyscallDesc("kill", ignoreFunc),
160 /* 38 */ SyscallDesc("rename", renameFunc),
161 /* 39 */ SyscallDesc("mkdir", mkdirFunc),
162 /* 40 */ SyscallDesc("rmdir", unimplementedFunc),
163 /* 41 */ SyscallDesc("dup", dupFunc),
164 /* 42 */ SyscallDesc("pipe", pipePseudoFunc),
165 /* 43 */ SyscallDesc("times", timesFunc<ArmLinux32>),
166 /* 44 */ SyscallDesc("unused#44", unimplementedFunc),
167 /* 45 */ SyscallDesc("brk", brkFunc),
168 /* 46 */ SyscallDesc("setgid", unimplementedFunc),
169 /* 47 */ SyscallDesc("getgid", getgidFunc),
170 /* 48 */ SyscallDesc("unused#48", unimplementedFunc),
171 /* 49 */ SyscallDesc("geteuid", geteuidFunc),
172 /* 50 */ SyscallDesc("getegid", getegidFunc),
173 /* 51 */ SyscallDesc("acct", unimplementedFunc),
174 /* 52 */ SyscallDesc("umount2", unimplementedFunc),
175 /* 53 */ SyscallDesc("unused#53", unimplementedFunc),
176 /* 54 */ SyscallDesc("ioctl", ioctlFunc<ArmLinux32>),
177 /* 55 */ SyscallDesc("fcntl", fcntlFunc),
178 /* 56 */ SyscallDesc("unused#56", unimplementedFunc),
179 /* 57 */ SyscallDesc("setpgid", unimplementedFunc),
180 /* 58 */ SyscallDesc("unused#58", unimplementedFunc),
181 /* 59 */ SyscallDesc("unused#59", unimplementedFunc),
182 /* 60 */ SyscallDesc("umask", umaskFunc),
183 /* 61 */ SyscallDesc("chroot", unimplementedFunc),
184 /* 62 */ SyscallDesc("ustat", unimplementedFunc),
185 /* 63 */ SyscallDesc("dup2", unimplementedFunc),
186 /* 64 */ SyscallDesc("getppid", getppidFunc),
187 /* 65 */ SyscallDesc("getpgrp", unimplementedFunc),
188 /* 66 */ SyscallDesc("setsid", unimplementedFunc),
189 /* 67 */ SyscallDesc("sigaction",unimplementedFunc),
190 /* 68 */ SyscallDesc("unused#68", unimplementedFunc),
191 /* 69 */ SyscallDesc("unused#69", unimplementedFunc),
192 /* 70 */ SyscallDesc("setreuid", unimplementedFunc),
193 /* 71 */ SyscallDesc("setregid", unimplementedFunc),
194 /* 72 */ SyscallDesc("sigsuspend", unimplementedFunc),
195 /* 73 */ SyscallDesc("sigpending", unimplementedFunc),
196 /* 74 */ SyscallDesc("sethostname", ignoreFunc),
197 /* 75 */ SyscallDesc("setrlimit", ignoreFunc),
198 /* 76 */ SyscallDesc("getrlimit", getrlimitFunc<ArmLinux32>),
199 /* 77 */ SyscallDesc("getrusage", getrusageFunc<ArmLinux32>),
200 /* 78 */ SyscallDesc("gettimeofday", gettimeofdayFunc<ArmLinux32>),
201 /* 79 */ SyscallDesc("settimeofday", unimplementedFunc),
202 /* 80 */ SyscallDesc("getgroups", unimplementedFunc),
203 /* 81 */ SyscallDesc("setgroups", unimplementedFunc),
204 /* 82 */ SyscallDesc("reserved#82", unimplementedFunc),
205 /* 83 */ SyscallDesc("symlink", unimplementedFunc),
206 /* 84 */ SyscallDesc("unused#84", unimplementedFunc),
207 /* 85 */ SyscallDesc("readlink", readlinkFunc),
208 /* 86 */ SyscallDesc("uselib", unimplementedFunc),
209 /* 87 */ SyscallDesc("swapon", unimplementedFunc),
210 /* 88 */ SyscallDesc("reboot", unimplementedFunc),
211 /* 89 */ SyscallDesc("readdir", unimplementedFunc),
212 /* 90 */ SyscallDesc("mmap", mmapFunc<ArmLinux32>),
213 /* 91 */ SyscallDesc("munmap", munmapFunc),
214 /* 92 */ SyscallDesc("truncate", truncateFunc),
215 /* 93 */ SyscallDesc("ftruncate", ftruncateFunc),
216 /* 94 */ SyscallDesc("fchmod", unimplementedFunc),
217 /* 95 */ SyscallDesc("fchown", unimplementedFunc),
218 /* 96 */ SyscallDesc("getpriority", unimplementedFunc),
219 /* 97 */ SyscallDesc("setpriority", unimplementedFunc),
220 /* 98 */ SyscallDesc("unused#98", unimplementedFunc),
221 /* 99 */ SyscallDesc("statfs", unimplementedFunc),
222 /* 100 */ SyscallDesc("fstatfs", unimplementedFunc),
223 /* 101 */ SyscallDesc("unused#101", unimplementedFunc),
224 /* 102 */ SyscallDesc("socketcall", unimplementedFunc),
225 /* 103 */ SyscallDesc("syslog", unimplementedFunc),
226 /* 104 */ SyscallDesc("setitimer", unimplementedFunc),
227 /* 105 */ SyscallDesc("getitimer", unimplementedFunc),
228 /* 106 */ SyscallDesc("stat", statFunc<ArmLinux32>),
229 /* 107 */ SyscallDesc("lstat", unimplementedFunc),
230 /* 108 */ SyscallDesc("fstat", fstatFunc<ArmLinux32>),
231 /* 109 */ SyscallDesc("unused#109", unimplementedFunc),
232 /* 110 */ SyscallDesc("unused#101", unimplementedFunc),
233 /* 111 */ SyscallDesc("vhangup", unimplementedFunc),
234 /* 112 */ SyscallDesc("unused#112", unimplementedFunc),
235 /* 113 */ SyscallDesc("syscall", unimplementedFunc),
236 /* 114 */ SyscallDesc("wait4", unimplementedFunc),
237 /* 115 */ SyscallDesc("swapoff", unimplementedFunc),
238 /* 116 */ SyscallDesc("sysinfo", sysinfoFunc<ArmLinux32>),
239 /* 117 */ SyscallDesc("ipc", unimplementedFunc),
240 /* 118 */ SyscallDesc("fsync", unimplementedFunc),
241 /* 119 */ SyscallDesc("sigreturn", unimplementedFunc),
242 /* 120 */ SyscallDesc("clone", cloneFunc),
243 /* 121 */ SyscallDesc("setdomainname", unimplementedFunc),
244 /* 122 */ SyscallDesc("uname", unameFunc32),
245 /* 123 */ SyscallDesc("unused#123", unimplementedFunc),
246 /* 124 */ SyscallDesc("adjtimex", unimplementedFunc),
247 /* 125 */ SyscallDesc("mprotect", ignoreFunc),
248 /* 126 */ SyscallDesc("sigprocmask", ignoreWarnOnceFunc),
249 /* 127 */ SyscallDesc("unused#127", unimplementedFunc),
250 /* 128 */ SyscallDesc("init_module", unimplementedFunc),
251 /* 129 */ SyscallDesc("delete_module", unimplementedFunc),
252 /* 130 */ SyscallDesc("unused#130", unimplementedFunc),
253 /* 131 */ SyscallDesc("quotactl", unimplementedFunc),
254 /* 132 */ SyscallDesc("getpgid", unimplementedFunc),
255 /* 133 */ SyscallDesc("fchdir", unimplementedFunc),
256 /* 134 */ SyscallDesc("bdflush", unimplementedFunc),
257 /* 135 */ SyscallDesc("sysfs", unimplementedFunc),
258 /* 136 */ SyscallDesc("personality", unimplementedFunc),
259 /* 137 */ SyscallDesc("reserved#138", unimplementedFunc),
260 /* 138 */ SyscallDesc("setfsuid", unimplementedFunc),
261 /* 139 */ SyscallDesc("setfsgid", unimplementedFunc),
262 /* 140 */ SyscallDesc("llseek", _llseekFunc),
263 /* 141 */ SyscallDesc("getdents", unimplementedFunc),
264 /* 142 */ SyscallDesc("newselect", unimplementedFunc),
265 /* 143 */ SyscallDesc("flock", unimplementedFunc),
266 /* 144 */ SyscallDesc("msync", unimplementedFunc),
267 /* 145 */ SyscallDesc("readv", unimplementedFunc),
268 /* 146 */ SyscallDesc("writev", writevFunc<ArmLinux32>),
269 /* 147 */ SyscallDesc("getsid", unimplementedFunc),
270 /* 148 */ SyscallDesc("fdatasync", unimplementedFunc),
271 /* 149 */ SyscallDesc("sysctl", unimplementedFunc),
272 /* 150 */ SyscallDesc("mlock", unimplementedFunc),
273 /* 151 */ SyscallDesc("munlock", unimplementedFunc),
274 /* 152 */ SyscallDesc("mlockall", unimplementedFunc),
275 /* 153 */ SyscallDesc("munlockall", unimplementedFunc),
276 /* 154 */ SyscallDesc("sched_setparam", unimplementedFunc),
277 /* 155 */ SyscallDesc("sched_getparam", unimplementedFunc),
278 /* 156 */ SyscallDesc("sched_setscheduler", unimplementedFunc),
279 /* 157 */ SyscallDesc("sched_getscheduler", unimplementedFunc),
280 /* 158 */ SyscallDesc("sched_yield", unimplementedFunc),
281 /* 159 */ SyscallDesc("sched_get_priority_max", unimplementedFunc),
282 /* 160 */ SyscallDesc("sched_get_priority_min", unimplementedFunc),
283 /* 161 */ SyscallDesc("sched_rr_get_interval", unimplementedFunc),
284 /* 162 */ SyscallDesc("nanosleep", ignoreWarnOnceFunc),
285 /* 163 */ SyscallDesc("mremap", mremapFunc<ArmLinux32>), // ARM-specific
286 /* 164 */ SyscallDesc("setresuid", unimplementedFunc),
287 /* 165 */ SyscallDesc("getresuid", unimplementedFunc),
288 /* 166 */ SyscallDesc("unused#166", unimplementedFunc),
289 /* 167 */ SyscallDesc("unused#167", unimplementedFunc),
290 /* 168 */ SyscallDesc("poll", unimplementedFunc),
291 /* 169 */ SyscallDesc("nfsservctl", unimplementedFunc),
292 /* 170 */ SyscallDesc("setresgid", unimplementedFunc),
293 /* 171 */ SyscallDesc("getresgid", unimplementedFunc),
294 /* 172 */ SyscallDesc("prctl", unimplementedFunc),
295 /* 173 */ SyscallDesc("rt_sigreturn", unimplementedFunc),
296 /* 174 */ SyscallDesc("rt_sigaction", ignoreWarnOnceFunc),
297 /* 175 */ SyscallDesc("rt_sigprocmask", ignoreWarnOnceFunc),
298 /* 176 */ SyscallDesc("rt_sigpending", unimplementedFunc),
299 /* 177 */ SyscallDesc("rt_sigtimedwait", unimplementedFunc),
300 /* 178 */ SyscallDesc("rt_sigqueueinfo", ignoreFunc),
301 /* 179 */ SyscallDesc("rt_sigsuspend", unimplementedFunc),
302 /* 180 */ SyscallDesc("pread64", unimplementedFunc),
303 /* 181 */ SyscallDesc("pwrite64", unimplementedFunc),
304 /* 182 */ SyscallDesc("chown", unimplementedFunc),
305 /* 183 */ SyscallDesc("getcwd", getcwdFunc),
306 /* 184 */ SyscallDesc("capget", unimplementedFunc),
307 /* 185 */ SyscallDesc("capset", unimplementedFunc),
308 /* 186 */ SyscallDesc("sigaltstack", unimplementedFunc),
309 /* 187 */ SyscallDesc("sendfile", unimplementedFunc),
310 /* 188 */ SyscallDesc("unused#188", unimplementedFunc),
311 /* 189 */ SyscallDesc("unused#189", unimplementedFunc),
312 /* 190 */ SyscallDesc("vfork", unimplementedFunc),
313 /* 191 */ SyscallDesc("getrlimit", getrlimitFunc<ArmLinux32>),
314 /* 192 */ SyscallDesc("mmap2", mmapFunc<ArmLinux32>),
315 /* 193 */ SyscallDesc("truncate64", unimplementedFunc),
316 /* 194 */ SyscallDesc("ftruncate64", ftruncate64Func),
317 /* 195 */ SyscallDesc("stat64", stat64Func<ArmLinux32>),
318 /* 196 */ SyscallDesc("lstat64", lstat64Func<ArmLinux32>),
319 /* 197 */ SyscallDesc("fstat64", fstat64Func<ArmLinux32>),
320 /* 198 */ SyscallDesc("lchown", unimplementedFunc),
321 /* 199 */ SyscallDesc("getuid", getuidFunc),
322 /* 200 */ SyscallDesc("getgid", getgidFunc),
323 /* 201 */ SyscallDesc("geteuid", geteuidFunc),
324 /* 202 */ SyscallDesc("getegid", getegidFunc),
325 /* 203 */ SyscallDesc("setreuid", unimplementedFunc),
326 /* 204 */ SyscallDesc("setregid", unimplementedFunc),
327 /* 205 */ SyscallDesc("getgroups", unimplementedFunc),
328 /* 206 */ SyscallDesc("setgroups", unimplementedFunc),
329 /* 207 */ SyscallDesc("fchown", unimplementedFunc),
330 /* 208 */ SyscallDesc("setresuid", unimplementedFunc),
331 /* 209 */ SyscallDesc("getresuid", unimplementedFunc),
332 /* 210 */ SyscallDesc("setresgid", unimplementedFunc),
333 /* 211 */ SyscallDesc("getresgid", unimplementedFunc),
334 /* 212 */ SyscallDesc("chown", unimplementedFunc),
335 /* 213 */ SyscallDesc("setuid", unimplementedFunc),
336 /* 214 */ SyscallDesc("setgid", unimplementedFunc),
337 /* 215 */ SyscallDesc("setfsuid", unimplementedFunc),
338 /* 216 */ SyscallDesc("setfsgid", unimplementedFunc),
339 /* 217 */ SyscallDesc("getdents64", unimplementedFunc),
340 /* 218 */ SyscallDesc("pivot_root", unimplementedFunc),
341 /* 219 */ SyscallDesc("mincore", unimplementedFunc),
342 /* 220 */ SyscallDesc("madvise", unimplementedFunc),
343 /* 221 */ SyscallDesc("fcntl64", fcntl64Func),
344 /* 222 */ SyscallDesc("unused#222", unimplementedFunc),
345 /* 223 */ SyscallDesc("unknown#223", unimplementedFunc),
346 /* 224 */ SyscallDesc("gettid", unimplementedFunc),
347 /* 225 */ SyscallDesc("readahead", unimplementedFunc),
348 /* 226 */ SyscallDesc("setxattr", unimplementedFunc),
349 /* 227 */ SyscallDesc("lsetxattr", unimplementedFunc),
350 /* 228 */ SyscallDesc("fsetxattr", unimplementedFunc),
351 /* 229 */ SyscallDesc("getxattr", unimplementedFunc),
352 /* 230 */ SyscallDesc("lgetxattr", unimplementedFunc),
353 /* 231 */ SyscallDesc("fgetxattr", unimplementedFunc),
354 /* 232 */ SyscallDesc("listxattr", unimplementedFunc),
355 /* 233 */ SyscallDesc("llistxattr", unimplementedFunc),
356 /* 234 */ SyscallDesc("flistxattr", unimplementedFunc),
357 /* 235 */ SyscallDesc("removexattr", unimplementedFunc),
358 /* 236 */ SyscallDesc("lremovexattr", unimplementedFunc),
359 /* 237 */ SyscallDesc("fremovexattr", unimplementedFunc),
360 /* 238 */ SyscallDesc("tkill", unimplementedFunc),
361 /* 239 */ SyscallDesc("sendfile64", unimplementedFunc),
362 /* 240 */ SyscallDesc("futex", ignoreWarnOnceFunc),
363 /* 241 */ SyscallDesc("sched_setaffinity", unimplementedFunc),
364 /* 242 */ SyscallDesc("sched_getaffinity", unimplementedFunc),
365 /* 243 */ SyscallDesc("io_setup", unimplementedFunc),
366 /* 244 */ SyscallDesc("io_destroy", unimplementedFunc),
367 /* 245 */ SyscallDesc("io_getevents", unimplementedFunc),
368 /* 246 */ SyscallDesc("io_submit", unimplementedFunc),
369 /* 247 */ SyscallDesc("io_cancel", unimplementedFunc),
370 /* 248 */ SyscallDesc("exit_group", exitGroupFunc),
371 /* 249 */ SyscallDesc("lookup_dcookie", unimplementedFunc),
372 /* 250 */ SyscallDesc("epoll_create", unimplementedFunc),
373 /* 251 */ SyscallDesc("epoll_ctl", unimplementedFunc),
374 /* 252 */ SyscallDesc("epoll_wait", unimplementedFunc),
375 /* 253 */ SyscallDesc("remap_file_pages", unimplementedFunc),
376 /* 254 */ SyscallDesc("unused#254", unimplementedFunc),
377 /* 255 */ SyscallDesc("unused#255", unimplementedFunc),
378 /* 256 */ SyscallDesc("set_tid_address", unimplementedFunc),
379 /* 257 */ SyscallDesc("timer_create", unimplementedFunc),
380 /* 258 */ SyscallDesc("timer_settime", unimplementedFunc),
381 /* 259 */ SyscallDesc("timer_gettime", unimplementedFunc),
382 /* 260 */ SyscallDesc("timer_getoverrun", unimplementedFunc),
383 /* 261 */ SyscallDesc("timer_delete", unimplementedFunc),
384 /* 262 */ SyscallDesc("clock_settime", unimplementedFunc),
385 /* 263 */ SyscallDesc("clock_gettime", unimplementedFunc),
386 /* 264 */ SyscallDesc("clock_getres", unimplementedFunc),
387 /* 265 */ SyscallDesc("clock_nanosleep", unimplementedFunc),
388 /* 266 */ SyscallDesc("statfs64", unimplementedFunc),
389 /* 267 */ SyscallDesc("fstatfs64", unimplementedFunc),
390 /* 268 */ SyscallDesc("tgkill", unimplementedFunc),
391 /* 269 */ SyscallDesc("utimes", unimplementedFunc),
392 /* 270 */ SyscallDesc("arm_fadvise64_64", unimplementedFunc),
393 /* 271 */ SyscallDesc("pciconfig_iobase", unimplementedFunc),
394 /* 272 */ SyscallDesc("pciconfig_read", unimplementedFunc),
395 /* 273 */ SyscallDesc("pciconfig_write", unimplementedFunc),
396 /* 274 */ SyscallDesc("mq_open", unimplementedFunc),
397 /* 275 */ SyscallDesc("mq_unlink", unimplementedFunc),
398 /* 276 */ SyscallDesc("mq_timedsend", unimplementedFunc),
399 /* 277 */ SyscallDesc("mq_timedreceive", unimplementedFunc),
400 /* 278 */ SyscallDesc("mq_notify", unimplementedFunc),
401 /* 279 */ SyscallDesc("mq_getsetattr", unimplementedFunc),
402 /* 280 */ SyscallDesc("waitid", unimplementedFunc),
403 /* 281 */ SyscallDesc("socket", unimplementedFunc),
404 /* 282 */ SyscallDesc("bind", unimplementedFunc),
405 /* 283 */ SyscallDesc("connect", unimplementedFunc),
406 /* 284 */ SyscallDesc("listen", unimplementedFunc),
407 /* 285 */ SyscallDesc("accept", unimplementedFunc),
408 /* 286 */ SyscallDesc("getsockname", unimplementedFunc),
409 /* 287 */ SyscallDesc("getpeername", unimplementedFunc),
410 /* 288 */ SyscallDesc("socketpair", unimplementedFunc),
411 /* 289 */ SyscallDesc("send", unimplementedFunc),
412 /* 290 */ SyscallDesc("sendto", unimplementedFunc),
413 /* 291 */ SyscallDesc("recv", unimplementedFunc),
414 /* 292 */ SyscallDesc("recvfrom", unimplementedFunc),
415 /* 293 */ SyscallDesc("shutdown", unimplementedFunc),
416 /* 294 */ SyscallDesc("setsockopt", unimplementedFunc),
417 /* 295 */ SyscallDesc("getsockopt", unimplementedFunc),
418 /* 296 */ SyscallDesc("sendmsg", unimplementedFunc),
419 /* 297 */ SyscallDesc("rcvmsg", unimplementedFunc),
420 /* 298 */ SyscallDesc("semop", unimplementedFunc),
421 /* 299 */ SyscallDesc("semget", unimplementedFunc),
422 /* 300 */ SyscallDesc("semctl", unimplementedFunc),
423 /* 301 */ SyscallDesc("msgsend", unimplementedFunc),
424 /* 302 */ SyscallDesc("msgrcv", unimplementedFunc),
425 /* 303 */ SyscallDesc("msgget", unimplementedFunc),
426 /* 304 */ SyscallDesc("msgctl", unimplementedFunc),
427 /* 305 */ SyscallDesc("shmat", unimplementedFunc),
428 /* 306 */ SyscallDesc("shmdt", unimplementedFunc),
429 /* 307 */ SyscallDesc("shmget", unimplementedFunc),
430 /* 308 */ SyscallDesc("shmctl", unimplementedFunc),
431 /* 309 */ SyscallDesc("add_key", unimplementedFunc),
432 /* 310 */ SyscallDesc("request_key", unimplementedFunc),
433 /* 311 */ SyscallDesc("keyctl", unimplementedFunc),
434 /* 312 */ SyscallDesc("semtimedop", unimplementedFunc),
435 /* 313 */ SyscallDesc("unused#313", unimplementedFunc),
436 /* 314 */ SyscallDesc("ioprio_set", unimplementedFunc),
437 /* 315 */ SyscallDesc("ioprio_get", unimplementedFunc),
438 /* 316 */ SyscallDesc("inotify_init", unimplementedFunc),
439 /* 317 */ SyscallDesc("inotify_add_watch", unimplementedFunc),
440 /* 318 */ SyscallDesc("inotify_rm_watch", unimplementedFunc),
441 /* 319 */ SyscallDesc("mbind", unimplementedFunc),
442 /* 320 */ SyscallDesc("get_mempolicy", unimplementedFunc),
443 /* 321 */ SyscallDesc("set_mempolicy", unimplementedFunc),
444 /* 322 */ SyscallDesc("openat", unimplementedFunc),
445 /* 323 */ SyscallDesc("mkdirat", unimplementedFunc),
446 /* 324 */ SyscallDesc("mknodat", unimplementedFunc),
447 /* 325 */ SyscallDesc("fchownat", unimplementedFunc),
448 /* 326 */ SyscallDesc("futimesat", unimplementedFunc),
449 /* 327 */ SyscallDesc("fstatat64", unimplementedFunc),
450 /* 328 */ SyscallDesc("unlinkat", unimplementedFunc),
451 /* 329 */ SyscallDesc("renameat", unimplementedFunc),
452 /* 330 */ SyscallDesc("linkat", unimplementedFunc),
453 /* 331 */ SyscallDesc("symlinkat", unimplementedFunc),
454 /* 332 */ SyscallDesc("readlinkat", unimplementedFunc),
455 /* 333 */ SyscallDesc("fchmodat", unimplementedFunc),
456 /* 334 */ SyscallDesc("faccessat", unimplementedFunc),
457 /* 335 */ SyscallDesc("pselect6", unimplementedFunc),
458 /* 336 */ SyscallDesc("ppoll", unimplementedFunc),
459 /* 337 */ SyscallDesc("unshare", unimplementedFunc),
460 /* 338 */ SyscallDesc("set_robust_list", unimplementedFunc),
461 /* 339 */ SyscallDesc("get_robust_list", unimplementedFunc),
462 /* 340 */ SyscallDesc("splice", unimplementedFunc),
463 /* 341 */ SyscallDesc("arm_sync_file_range", unimplementedFunc),
464 /* 342 */ SyscallDesc("tee", unimplementedFunc),
465 /* 343 */ SyscallDesc("vmsplice", unimplementedFunc),
466 /* 344 */ SyscallDesc("move_pages", unimplementedFunc),
467 /* 345 */ SyscallDesc("getcpu", unimplementedFunc),
468 /* 346 */ SyscallDesc("epoll_pwait", unimplementedFunc),
469 /* 347 */ SyscallDesc("sys_kexec_load", unimplementedFunc),
470 /* 348 */ SyscallDesc("sys_utimensat", unimplementedFunc),
471 /* 349 */ SyscallDesc("sys_signalfd", unimplementedFunc),
472 /* 350 */ SyscallDesc("sys_timerfd_create", unimplementedFunc),
473 /* 351 */ SyscallDesc("sys_eventfd", unimplementedFunc),
474 /* 352 */ SyscallDesc("sys_fallocate", unimplementedFunc),
475 /* 353 */ SyscallDesc("sys_timerfd_settime", unimplementedFunc),
476 /* 354 */ SyscallDesc("sys_timerfd_gettime", unimplementedFunc),
477 /* 355 */ SyscallDesc("sys_signalfd4", unimplementedFunc),
478 /* 356 */ SyscallDesc("sys_eventfd2", unimplementedFunc),
479 /* 357 */ SyscallDesc("sys_epoll_create1", unimplementedFunc),
480 /* 358 */ SyscallDesc("sys_dup3", unimplementedFunc),
481 /* 359 */ SyscallDesc("sys_pipe2", unimplementedFunc),
482 /* 360 */ SyscallDesc("sys_inotify_init1", unimplementedFunc),
483 /* 361 */ SyscallDesc("sys_preadv", unimplementedFunc),
484 /* 362 */ SyscallDesc("sys_pwritev", unimplementedFunc),
485 /* 363 */ SyscallDesc("sys_rt_tgsigqueueinfo", unimplementedFunc),
486 /* 364 */ SyscallDesc("sys_perf_event_open", unimplementedFunc),
487 /* 365 */ SyscallDesc("sys_recvmmsg", unimplementedFunc),
488};
489
490static SyscallDesc syscallDescs64[] = {
491 /* 0 */ SyscallDesc("io_setup", unimplementedFunc),
492 /* 1 */ SyscallDesc("io_destroy", unimplementedFunc),
493 /* 2 */ SyscallDesc("io_submit", unimplementedFunc),
494 /* 3 */ SyscallDesc("io_cancel", unimplementedFunc),
495 /* 4 */ SyscallDesc("io_getevents", unimplementedFunc),
496 /* 5 */ SyscallDesc("setxattr", unimplementedFunc),
497 /* 6 */ SyscallDesc("lsetxattr", unimplementedFunc),
498 /* 7 */ SyscallDesc("fsetxattr", unimplementedFunc),
499 /* 8 */ SyscallDesc("getxattr", unimplementedFunc),
500 /* 9 */ SyscallDesc("lgetxattr", unimplementedFunc),
501 /* 10 */ SyscallDesc("fgetxattr", unimplementedFunc),
502 /* 11 */ SyscallDesc("listxattr", unimplementedFunc),
503 /* 12 */ SyscallDesc("llistxattr", unimplementedFunc),
504 /* 13 */ SyscallDesc("flistxattr", unimplementedFunc),
505 /* 14 */ SyscallDesc("removexattr", unimplementedFunc),
506 /* 15 */ SyscallDesc("lremovexattr", unimplementedFunc),
507 /* 16 */ SyscallDesc("fremovexattr", unimplementedFunc),
508 /* 17 */ SyscallDesc("getcwd", getcwdFunc),
509 /* 18 */ SyscallDesc("lookup_dcookie", unimplementedFunc),
510 /* 19 */ SyscallDesc("eventfd2", unimplementedFunc),
511 /* 20 */ SyscallDesc("epoll_create1", unimplementedFunc),
512 /* 21 */ SyscallDesc("epoll_ctl", unimplementedFunc),
513 /* 22 */ SyscallDesc("epoll_pwait", unimplementedFunc),
514 /* 23 */ SyscallDesc("dup", dupFunc),
515 /* 24 */ SyscallDesc("dup3", unimplementedFunc),
516 /* 25 */ SyscallDesc("fcntl64", fcntl64Func),
517 /* 26 */ SyscallDesc("inotify_init1", unimplementedFunc),
518 /* 27 */ SyscallDesc("inotify_add_watch", unimplementedFunc),
519 /* 28 */ SyscallDesc("inotify_rm_watch", unimplementedFunc),
520 /* 29 */ SyscallDesc("ioctl", ioctlFunc<ArmLinux64>),
521 /* 30 */ SyscallDesc("ioprio_set", unimplementedFunc),
522 /* 31 */ SyscallDesc("ioprio_get", unimplementedFunc),
523 /* 32 */ SyscallDesc("flock", unimplementedFunc),
524 /* 33 */ SyscallDesc("mknodat", unimplementedFunc),
525 /* 34 */ SyscallDesc("mkdirat", unimplementedFunc),
526 /* 35 */ SyscallDesc("unlinkat", unimplementedFunc),
527 /* 36 */ SyscallDesc("symlinkat", unimplementedFunc),
528 /* 37 */ SyscallDesc("linkat", unimplementedFunc),
529 /* 38 */ SyscallDesc("renameat", unimplementedFunc),
530 /* 39 */ SyscallDesc("umount2", unimplementedFunc),
531 /* 40 */ SyscallDesc("mount", unimplementedFunc),
532 /* 41 */ SyscallDesc("pivot_root", unimplementedFunc),
533 /* 42 */ SyscallDesc("nfsservctl", unimplementedFunc),
534 /* 43 */ SyscallDesc("statfs64", unimplementedFunc),
535 /* 44 */ SyscallDesc("fstatfs64", unimplementedFunc),
536 /* 45 */ SyscallDesc("truncate64", unimplementedFunc),
537 /* 46 */ SyscallDesc("ftruncate64", ftruncate64Func),
538 /* 47 */ SyscallDesc("fallocate", unimplementedFunc),
539 /* 48 */ SyscallDesc("faccessat", unimplementedFunc),
539 /* 48 */ SyscallDesc("faccessat", faccessatFunc<ArmLinux64>),
540 /* 49 */ SyscallDesc("chdir", unimplementedFunc),
541 /* 50 */ SyscallDesc("fchdir", unimplementedFunc),
542 /* 51 */ SyscallDesc("chroot", unimplementedFunc),
543 /* 52 */ SyscallDesc("fchmod", unimplementedFunc),
544 /* 53 */ SyscallDesc("fchmodat", unimplementedFunc),
545 /* 54 */ SyscallDesc("fchownat", unimplementedFunc),
546 /* 55 */ SyscallDesc("fchown", unimplementedFunc),
547 /* 56 */ SyscallDesc("openat", openatFunc<ArmLinux64>),
548 /* 57 */ SyscallDesc("close", closeFunc),
549 /* 58 */ SyscallDesc("vhangup", unimplementedFunc),
550 /* 59 */ SyscallDesc("pipe2", unimplementedFunc),
551 /* 60 */ SyscallDesc("quotactl", unimplementedFunc),
552 /* 61 */ SyscallDesc("getdents64", unimplementedFunc),
553 /* 62 */ SyscallDesc("llseek", lseekFunc),
554 /* 63 */ SyscallDesc("read", readFunc),
555 /* 64 */ SyscallDesc("write", writeFunc),
556 /* 65 */ SyscallDesc("readv", unimplementedFunc),
557 /* 66 */ SyscallDesc("writev", writevFunc<ArmLinux64>),
558 /* 67 */ SyscallDesc("pread64", unimplementedFunc),
559 /* 68 */ SyscallDesc("pwrite64", unimplementedFunc),
560 /* 69 */ SyscallDesc("preadv", unimplementedFunc),
561 /* 70 */ SyscallDesc("pwritev", unimplementedFunc),
562 /* 71 */ SyscallDesc("sendfile64", unimplementedFunc),
563 /* 72 */ SyscallDesc("pselect6", unimplementedFunc),
564 /* 73 */ SyscallDesc("ppoll", unimplementedFunc),
565 /* 74 */ SyscallDesc("signalfd4", unimplementedFunc),
566 /* 75 */ SyscallDesc("vmsplice", unimplementedFunc),
567 /* 76 */ SyscallDesc("splice", unimplementedFunc),
568 /* 77 */ SyscallDesc("tee", unimplementedFunc),
540 /* 49 */ SyscallDesc("chdir", unimplementedFunc),
541 /* 50 */ SyscallDesc("fchdir", unimplementedFunc),
542 /* 51 */ SyscallDesc("chroot", unimplementedFunc),
543 /* 52 */ SyscallDesc("fchmod", unimplementedFunc),
544 /* 53 */ SyscallDesc("fchmodat", unimplementedFunc),
545 /* 54 */ SyscallDesc("fchownat", unimplementedFunc),
546 /* 55 */ SyscallDesc("fchown", unimplementedFunc),
547 /* 56 */ SyscallDesc("openat", openatFunc<ArmLinux64>),
548 /* 57 */ SyscallDesc("close", closeFunc),
549 /* 58 */ SyscallDesc("vhangup", unimplementedFunc),
550 /* 59 */ SyscallDesc("pipe2", unimplementedFunc),
551 /* 60 */ SyscallDesc("quotactl", unimplementedFunc),
552 /* 61 */ SyscallDesc("getdents64", unimplementedFunc),
553 /* 62 */ SyscallDesc("llseek", lseekFunc),
554 /* 63 */ SyscallDesc("read", readFunc),
555 /* 64 */ SyscallDesc("write", writeFunc),
556 /* 65 */ SyscallDesc("readv", unimplementedFunc),
557 /* 66 */ SyscallDesc("writev", writevFunc<ArmLinux64>),
558 /* 67 */ SyscallDesc("pread64", unimplementedFunc),
559 /* 68 */ SyscallDesc("pwrite64", unimplementedFunc),
560 /* 69 */ SyscallDesc("preadv", unimplementedFunc),
561 /* 70 */ SyscallDesc("pwritev", unimplementedFunc),
562 /* 71 */ SyscallDesc("sendfile64", unimplementedFunc),
563 /* 72 */ SyscallDesc("pselect6", unimplementedFunc),
564 /* 73 */ SyscallDesc("ppoll", unimplementedFunc),
565 /* 74 */ SyscallDesc("signalfd4", unimplementedFunc),
566 /* 75 */ SyscallDesc("vmsplice", unimplementedFunc),
567 /* 76 */ SyscallDesc("splice", unimplementedFunc),
568 /* 77 */ SyscallDesc("tee", unimplementedFunc),
569 /* 78 */ SyscallDesc("readlinkat", unimplementedFunc),
569 /* 78 */ SyscallDesc("readlinkat", readlinkatFunc<ArmLinux64>),
570 /* 79 */ SyscallDesc("fstatat64", fstatat64Func<ArmLinux64>),
571 /* 80 */ SyscallDesc("fstat64", fstat64Func<ArmLinux64>),
572 /* 81 */ SyscallDesc("sync", unimplementedFunc),
573 /* 82 */ SyscallDesc("fsync", unimplementedFunc),
574 /* 83 */ SyscallDesc("fdatasync", unimplementedFunc),
575 /* 84 */ SyscallDesc("sync_file_range", unimplementedFunc),
576 /* 85 */ SyscallDesc("timerfd_create", unimplementedFunc),
577 /* 86 */ SyscallDesc("timerfd_settime", unimplementedFunc),
578 /* 87 */ SyscallDesc("timerfd_gettime", unimplementedFunc),
579 /* 88 */ SyscallDesc("utimensat", unimplementedFunc),
580 /* 89 */ SyscallDesc("acct", unimplementedFunc),
581 /* 90 */ SyscallDesc("capget", unimplementedFunc),
582 /* 91 */ SyscallDesc("capset", unimplementedFunc),
583 /* 92 */ SyscallDesc("personality", unimplementedFunc),
584 /* 93 */ SyscallDesc("exit", exitFunc),
585 /* 94 */ SyscallDesc("exit_group", exitGroupFunc),
586 /* 95 */ SyscallDesc("waitid", unimplementedFunc),
587 /* 96 */ SyscallDesc("set_tid_address", unimplementedFunc),
588 /* 97 */ SyscallDesc("unshare", unimplementedFunc),
589 /* 98 */ SyscallDesc("futex", unimplementedFunc),
590 /* 99 */ SyscallDesc("set_robust_list", unimplementedFunc),
591 /* 100 */ SyscallDesc("get_robust_list", unimplementedFunc),
592 /* 101 */ SyscallDesc("nanosleep", ignoreWarnOnceFunc),
593 /* 102 */ SyscallDesc("getitimer", unimplementedFunc),
594 /* 103 */ SyscallDesc("setitimer", unimplementedFunc),
595 /* 104 */ SyscallDesc("kexec_load", unimplementedFunc),
596 /* 105 */ SyscallDesc("init_module", unimplementedFunc),
597 /* 106 */ SyscallDesc("delete_module", unimplementedFunc),
598 /* 107 */ SyscallDesc("timer_create", unimplementedFunc),
599 /* 108 */ SyscallDesc("timer_gettime", unimplementedFunc),
600 /* 109 */ SyscallDesc("timer_getoverrun", unimplementedFunc),
601 /* 110 */ SyscallDesc("timer_settime", unimplementedFunc),
602 /* 111 */ SyscallDesc("timer_delete", unimplementedFunc),
603 /* 112 */ SyscallDesc("clock_settime", unimplementedFunc),
604 /* 113 */ SyscallDesc("clock_gettime", unimplementedFunc),
605 /* 114 */ SyscallDesc("clock_getres", unimplementedFunc),
606 /* 115 */ SyscallDesc("clock_nanosleep", unimplementedFunc),
607 /* 116 */ SyscallDesc("syslog", unimplementedFunc),
608 /* 117 */ SyscallDesc("ptrace", unimplementedFunc),
609 /* 118 */ SyscallDesc("sched_setparam", unimplementedFunc),
610 /* 119 */ SyscallDesc("sched_setscheduler", unimplementedFunc),
611 /* 120 */ SyscallDesc("sched_getscheduler", unimplementedFunc),
612 /* 121 */ SyscallDesc("sched_getparam", unimplementedFunc),
613 /* 122 */ SyscallDesc("sched_setaffinity", unimplementedFunc),
614 /* 123 */ SyscallDesc("sched_getaffinity", unimplementedFunc),
615 /* 124 */ SyscallDesc("sched_yield", unimplementedFunc),
616 /* 125 */ SyscallDesc("sched_get_priority_max", unimplementedFunc),
617 /* 126 */ SyscallDesc("sched_get_priority_min", unimplementedFunc),
618 /* 127 */ SyscallDesc("sched_rr_get_interval", unimplementedFunc),
619 /* 128 */ SyscallDesc("restart_syscall", unimplementedFunc),
620 /* 129 */ SyscallDesc("kill", ignoreFunc),
621 /* 130 */ SyscallDesc("tkill", unimplementedFunc),
622 /* 131 */ SyscallDesc("tgkill", unimplementedFunc),
623 /* 132 */ SyscallDesc("sigaltstack", unimplementedFunc),
624 /* 133 */ SyscallDesc("rt_sigsuspend", unimplementedFunc),
625 /* 134 */ SyscallDesc("rt_sigaction", ignoreFunc),
626 /* 135 */ SyscallDesc("rt_sigprocmask", ignoreWarnOnceFunc),
627 /* 136 */ SyscallDesc("rt_sigpending", unimplementedFunc),
628 /* 137 */ SyscallDesc("rt_sigtimedwait", unimplementedFunc),
629 /* 138 */ SyscallDesc("rt_sigqueueinfo", ignoreFunc),
630 /* 139 */ SyscallDesc("rt_sigreturn", unimplementedFunc),
631 /* 140 */ SyscallDesc("setpriority", unimplementedFunc),
632 /* 141 */ SyscallDesc("getpriority", unimplementedFunc),
633 /* 142 */ SyscallDesc("reboot", unimplementedFunc),
634 /* 143 */ SyscallDesc("setregid", unimplementedFunc),
635 /* 144 */ SyscallDesc("setgid", unimplementedFunc),
636 /* 145 */ SyscallDesc("setreuid", unimplementedFunc),
637 /* 146 */ SyscallDesc("setuid", unimplementedFunc),
638 /* 147 */ SyscallDesc("setresuid", unimplementedFunc),
639 /* 148 */ SyscallDesc("getresuid", unimplementedFunc),
640 /* 149 */ SyscallDesc("setresgid", unimplementedFunc),
641 /* 150 */ SyscallDesc("getresgid", unimplementedFunc),
642 /* 151 */ SyscallDesc("setfsuid", unimplementedFunc),
643 /* 152 */ SyscallDesc("setfsgid", unimplementedFunc),
644 /* 153 */ SyscallDesc("times", timesFunc<ArmLinux64>),
645 /* 154 */ SyscallDesc("setpgid", unimplementedFunc),
646 /* 155 */ SyscallDesc("getpgid", unimplementedFunc),
647 /* 156 */ SyscallDesc("getsid", unimplementedFunc),
648 /* 157 */ SyscallDesc("setsid", unimplementedFunc),
649 /* 158 */ SyscallDesc("getgroups", unimplementedFunc),
650 /* 159 */ SyscallDesc("setgroups", unimplementedFunc),
651 /* 160 */ SyscallDesc("uname", unameFunc64),
652 /* 161 */ SyscallDesc("sethostname", ignoreFunc),
653 /* 162 */ SyscallDesc("setdomainname", unimplementedFunc),
654 /* 163 */ SyscallDesc("getrlimit", getrlimitFunc<ArmLinux64>),
655 /* 164 */ SyscallDesc("setrlimit", ignoreFunc),
656 /* 165 */ SyscallDesc("getrusage", getrusageFunc<ArmLinux64>),
657 /* 166 */ SyscallDesc("umask", unimplementedFunc),
658 /* 167 */ SyscallDesc("prctl", unimplementedFunc),
659 /* 168 */ SyscallDesc("getcpu", unimplementedFunc),
660 /* 169 */ SyscallDesc("gettimeofday", gettimeofdayFunc<ArmLinux64>),
661 /* 170 */ SyscallDesc("settimeofday", unimplementedFunc),
662 /* 171 */ SyscallDesc("adjtimex", unimplementedFunc),
663 /* 172 */ SyscallDesc("getpid", getpidFunc),
664 /* 173 */ SyscallDesc("getppid", getppidFunc),
665 /* 174 */ SyscallDesc("getuid", getuidFunc),
666 /* 175 */ SyscallDesc("geteuid", geteuidFunc),
667 /* 176 */ SyscallDesc("getgid", getgidFunc),
668 /* 177 */ SyscallDesc("getegid", getegidFunc),
669 /* 178 */ SyscallDesc("gettid", unimplementedFunc),
670 /* 179 */ SyscallDesc("sysinfo", sysinfoFunc<ArmLinux64>),
671 /* 180 */ SyscallDesc("mq_open", unimplementedFunc),
672 /* 181 */ SyscallDesc("mq_unlink", unimplementedFunc),
673 /* 182 */ SyscallDesc("mq_timedsend", unimplementedFunc),
674 /* 183 */ SyscallDesc("mq_timedreceive", unimplementedFunc),
675 /* 184 */ SyscallDesc("mq_notify", unimplementedFunc),
676 /* 185 */ SyscallDesc("mq_getsetattr", unimplementedFunc),
677 /* 186 */ SyscallDesc("msgget", unimplementedFunc),
678 /* 187 */ SyscallDesc("msgctl", unimplementedFunc),
679 /* 188 */ SyscallDesc("msgrcv", unimplementedFunc),
680 /* 189 */ SyscallDesc("msgsnd", unimplementedFunc),
681 /* 190 */ SyscallDesc("semget", unimplementedFunc),
682 /* 191 */ SyscallDesc("semctl", unimplementedFunc),
683 /* 192 */ SyscallDesc("semtimedop", unimplementedFunc),
684 /* 193 */ SyscallDesc("semop", unimplementedFunc),
685 /* 194 */ SyscallDesc("shmget", unimplementedFunc),
686 /* 195 */ SyscallDesc("shmctl", unimplementedFunc),
687 /* 196 */ SyscallDesc("shmat", unimplementedFunc),
688 /* 197 */ SyscallDesc("shmdt", unimplementedFunc),
689 /* 198 */ SyscallDesc("socket", unimplementedFunc),
690 /* 199 */ SyscallDesc("socketpair", unimplementedFunc),
691 /* 200 */ SyscallDesc("bind", unimplementedFunc),
692 /* 201 */ SyscallDesc("listen", unimplementedFunc),
693 /* 202 */ SyscallDesc("accept", unimplementedFunc),
694 /* 203 */ SyscallDesc("connect", unimplementedFunc),
695 /* 204 */ SyscallDesc("getsockname", unimplementedFunc),
696 /* 205 */ SyscallDesc("getpeername", unimplementedFunc),
697 /* 206 */ SyscallDesc("sendto", unimplementedFunc),
698 /* 207 */ SyscallDesc("recvfrom", unimplementedFunc),
699 /* 208 */ SyscallDesc("setsockopt", unimplementedFunc),
700 /* 209 */ SyscallDesc("getsockopt", unimplementedFunc),
701 /* 210 */ SyscallDesc("shutdown", unimplementedFunc),
702 /* 211 */ SyscallDesc("sendmsg", unimplementedFunc),
703 /* 212 */ SyscallDesc("recvmsg", unimplementedFunc),
704 /* 213 */ SyscallDesc("readahead", unimplementedFunc),
705 /* 214 */ SyscallDesc("brk", brkFunc),
706 /* 215 */ SyscallDesc("munmap", munmapFunc),
707 /* 216 */ SyscallDesc("mremap", mremapFunc<ArmLinux64>),
708 /* 217 */ SyscallDesc("add_key", unimplementedFunc),
709 /* 218 */ SyscallDesc("request_key", unimplementedFunc),
710 /* 219 */ SyscallDesc("keyctl", unimplementedFunc),
711 /* 220 */ SyscallDesc("clone", unimplementedFunc),
712 /* 221 */ SyscallDesc("execve", unimplementedFunc),
713 /* 222 */ SyscallDesc("mmap2", mmapFunc<ArmLinux64>),
714 /* 223 */ SyscallDesc("fadvise64_64", unimplementedFunc),
715 /* 224 */ SyscallDesc("swapon", unimplementedFunc),
716 /* 225 */ SyscallDesc("swapoff", unimplementedFunc),
717 /* 226 */ SyscallDesc("mprotect", ignoreFunc),
718 /* 227 */ SyscallDesc("msync", unimplementedFunc),
719 /* 228 */ SyscallDesc("mlock", unimplementedFunc),
720 /* 229 */ SyscallDesc("munlock", unimplementedFunc),
721 /* 230 */ SyscallDesc("mlockall", unimplementedFunc),
722 /* 231 */ SyscallDesc("munlockall", unimplementedFunc),
723 /* 232 */ SyscallDesc("mincore", unimplementedFunc),
724 /* 233 */ SyscallDesc("madvise", unimplementedFunc),
725 /* 234 */ SyscallDesc("remap_file_pages", unimplementedFunc),
726 /* 235 */ SyscallDesc("mbind", unimplementedFunc),
727 /* 236 */ SyscallDesc("get_mempolicy", unimplementedFunc),
728 /* 237 */ SyscallDesc("set_mempolicy", unimplementedFunc),
729 /* 238 */ SyscallDesc("migrate_pages", unimplementedFunc),
730 /* 239 */ SyscallDesc("move_pages", unimplementedFunc),
731 /* 240 */ SyscallDesc("rt_tgsigqueueinfo", unimplementedFunc),
732 /* 241 */ SyscallDesc("perf_event_open", unimplementedFunc),
733 /* 242 */ SyscallDesc("accept4", unimplementedFunc),
734 /* 243 */ SyscallDesc("recvmmsg", unimplementedFunc),
735 /* 244 */ SyscallDesc("unused#244", unimplementedFunc),
736 /* 245 */ SyscallDesc("unused#245", unimplementedFunc),
737 /* 246 */ SyscallDesc("unused#246", unimplementedFunc),
738 /* 247 */ SyscallDesc("unused#247", unimplementedFunc),
739 /* 248 */ SyscallDesc("unused#248", unimplementedFunc),
740 /* 249 */ SyscallDesc("unused#249", unimplementedFunc),
741 /* 250 */ SyscallDesc("unused#250", unimplementedFunc),
742 /* 251 */ SyscallDesc("unused#251", unimplementedFunc),
743 /* 252 */ SyscallDesc("unused#252", unimplementedFunc),
744 /* 253 */ SyscallDesc("unused#253", unimplementedFunc),
745 /* 254 */ SyscallDesc("unused#254", unimplementedFunc),
746 /* 255 */ SyscallDesc("unused#255", unimplementedFunc),
747 /* 256 */ SyscallDesc("unused#256", unimplementedFunc),
748 /* 257 */ SyscallDesc("unused#257", unimplementedFunc),
749 /* 258 */ SyscallDesc("unused#258", unimplementedFunc),
750 /* 259 */ SyscallDesc("unused#259", unimplementedFunc),
751 /* 260 */ SyscallDesc("wait4", unimplementedFunc),
752 /* 261 */ SyscallDesc("prlimit64", unimplementedFunc),
753 /* 262 */ SyscallDesc("fanotify_init", unimplementedFunc),
754 /* 263 */ SyscallDesc("fanotify_mark", unimplementedFunc),
755 /* 264 */ SyscallDesc("name_to_handle_at", unimplementedFunc),
756 /* 265 */ SyscallDesc("open_by_handle_at", unimplementedFunc),
757 /* 266 */ SyscallDesc("clock_adjtime", unimplementedFunc),
758 /* 267 */ SyscallDesc("syncfs", unimplementedFunc),
759 /* 268 */ SyscallDesc("setns", unimplementedFunc),
760 /* 269 */ SyscallDesc("sendmmsg", unimplementedFunc),
761 /* 270 */ SyscallDesc("process_vm_readv", unimplementedFunc),
762 /* 271 */ SyscallDesc("process_vm_writev", unimplementedFunc),
763 /* 272 */ SyscallDesc("unused#272", unimplementedFunc),
764 /* 273 */ SyscallDesc("unused#273", unimplementedFunc),
765 /* 274 */ SyscallDesc("unused#274", unimplementedFunc),
766 /* 275 */ SyscallDesc("unused#275", unimplementedFunc),
767 /* 276 */ SyscallDesc("unused#276", unimplementedFunc),
768 /* 277 */ SyscallDesc("unused#277", unimplementedFunc),
769 /* 278 */ SyscallDesc("unused#278", unimplementedFunc),
770 /* 279 */ SyscallDesc("unused#279", unimplementedFunc),
771 /* 280 */ SyscallDesc("unused#280", unimplementedFunc),
772 /* 281 */ SyscallDesc("unused#281", unimplementedFunc),
773 /* 282 */ SyscallDesc("unused#282", unimplementedFunc),
774 /* 283 */ SyscallDesc("unused#283", unimplementedFunc),
775 /* 284 */ SyscallDesc("unused#284", unimplementedFunc),
776 /* 285 */ SyscallDesc("unused#285", unimplementedFunc),
777 /* 286 */ SyscallDesc("unused#286", unimplementedFunc),
778 /* 287 */ SyscallDesc("unused#287", unimplementedFunc),
779 /* 288 */ SyscallDesc("unused#288", unimplementedFunc),
780 /* 289 */ SyscallDesc("unused#289", unimplementedFunc),
781 /* 290 */ SyscallDesc("unused#290", unimplementedFunc),
782 /* 291 */ SyscallDesc("unused#291", unimplementedFunc),
783 /* 292 */ SyscallDesc("unused#292", unimplementedFunc),
784 /* 293 */ SyscallDesc("unused#293", unimplementedFunc),
785 /* 294 */ SyscallDesc("unused#294", unimplementedFunc),
786 /* 295 */ SyscallDesc("unused#295", unimplementedFunc),
787 /* 296 */ SyscallDesc("unused#296", unimplementedFunc),
788 /* 297 */ SyscallDesc("unused#297", unimplementedFunc),
789 /* 298 */ SyscallDesc("unused#298", unimplementedFunc),
790 /* 299 */ SyscallDesc("unused#299", unimplementedFunc),
791 /* 300 */ SyscallDesc("unused#300", unimplementedFunc),
792 /* 301 */ SyscallDesc("unused#301", unimplementedFunc),
793 /* 302 */ SyscallDesc("unused#302", unimplementedFunc),
794 /* 303 */ SyscallDesc("unused#303", unimplementedFunc),
795 /* 304 */ SyscallDesc("unused#304", unimplementedFunc),
796 /* 305 */ SyscallDesc("unused#305", unimplementedFunc),
797 /* 306 */ SyscallDesc("unused#306", unimplementedFunc),
798 /* 307 */ SyscallDesc("unused#307", unimplementedFunc),
799 /* 308 */ SyscallDesc("unused#308", unimplementedFunc),
800 /* 309 */ SyscallDesc("unused#309", unimplementedFunc),
801 /* 310 */ SyscallDesc("unused#310", unimplementedFunc),
802 /* 311 */ SyscallDesc("unused#311", unimplementedFunc),
803 /* 312 */ SyscallDesc("unused#312", unimplementedFunc),
804 /* 313 */ SyscallDesc("unused#313", unimplementedFunc),
805 /* 314 */ SyscallDesc("unused#314", unimplementedFunc),
806 /* 315 */ SyscallDesc("unused#315", unimplementedFunc),
807 /* 316 */ SyscallDesc("unused#316", unimplementedFunc),
808 /* 317 */ SyscallDesc("unused#317", unimplementedFunc),
809 /* 318 */ SyscallDesc("unused#318", unimplementedFunc),
810 /* 319 */ SyscallDesc("unused#319", unimplementedFunc),
811 /* 320 */ SyscallDesc("unused#320", unimplementedFunc),
812 /* 321 */ SyscallDesc("unused#321", unimplementedFunc),
813 /* 322 */ SyscallDesc("unused#322", unimplementedFunc),
814 /* 323 */ SyscallDesc("unused#323", unimplementedFunc),
815 /* 324 */ SyscallDesc("unused#324", unimplementedFunc),
816 /* 325 */ SyscallDesc("unused#325", unimplementedFunc),
817 /* 326 */ SyscallDesc("unused#326", unimplementedFunc),
818 /* 327 */ SyscallDesc("unused#327", unimplementedFunc),
819 /* 328 */ SyscallDesc("unused#328", unimplementedFunc),
820 /* 329 */ SyscallDesc("unused#329", unimplementedFunc),
821 /* 330 */ SyscallDesc("unused#330", unimplementedFunc),
822 /* 331 */ SyscallDesc("unused#331", unimplementedFunc),
823 /* 332 */ SyscallDesc("unused#332", unimplementedFunc),
824 /* 333 */ SyscallDesc("unused#333", unimplementedFunc),
825 /* 334 */ SyscallDesc("unused#334", unimplementedFunc),
826 /* 335 */ SyscallDesc("unused#335", unimplementedFunc),
827 /* 336 */ SyscallDesc("unused#336", unimplementedFunc),
828 /* 337 */ SyscallDesc("unused#337", unimplementedFunc),
829 /* 338 */ SyscallDesc("unused#338", unimplementedFunc),
830 /* 339 */ SyscallDesc("unused#339", unimplementedFunc),
831 /* 340 */ SyscallDesc("unused#340", unimplementedFunc),
832 /* 341 */ SyscallDesc("unused#341", unimplementedFunc),
833 /* 342 */ SyscallDesc("unused#342", unimplementedFunc),
834 /* 343 */ SyscallDesc("unused#343", unimplementedFunc),
835 /* 344 */ SyscallDesc("unused#344", unimplementedFunc),
836 /* 345 */ SyscallDesc("unused#345", unimplementedFunc),
837 /* 346 */ SyscallDesc("unused#346", unimplementedFunc),
838 /* 347 */ SyscallDesc("unused#347", unimplementedFunc),
839 /* 348 */ SyscallDesc("unused#348", unimplementedFunc),
840 /* 349 */ SyscallDesc("unused#349", unimplementedFunc),
841 /* 350 */ SyscallDesc("unused#350", unimplementedFunc),
842 /* 351 */ SyscallDesc("unused#351", unimplementedFunc),
843 /* 352 */ SyscallDesc("unused#352", unimplementedFunc),
844 /* 353 */ SyscallDesc("unused#353", unimplementedFunc),
845 /* 354 */ SyscallDesc("unused#354", unimplementedFunc),
846 /* 355 */ SyscallDesc("unused#355", unimplementedFunc),
847 /* 356 */ SyscallDesc("unused#356", unimplementedFunc),
848 /* 357 */ SyscallDesc("unused#357", unimplementedFunc),
849 /* 358 */ SyscallDesc("unused#358", unimplementedFunc),
850 /* 359 */ SyscallDesc("unused#359", unimplementedFunc),
851 /* 360 */ SyscallDesc("unused#360", unimplementedFunc),
852 /* 361 */ SyscallDesc("unused#361", unimplementedFunc),
853 /* 362 */ SyscallDesc("unused#362", unimplementedFunc),
854 /* 363 */ SyscallDesc("unused#363", unimplementedFunc),
855 /* 364 */ SyscallDesc("unused#364", unimplementedFunc),
856 /* 365 */ SyscallDesc("unused#365", unimplementedFunc),
857 /* 366 */ SyscallDesc("unused#366", unimplementedFunc),
858 /* 367 */ SyscallDesc("unused#367", unimplementedFunc),
859 /* 368 */ SyscallDesc("unused#368", unimplementedFunc),
860 /* 369 */ SyscallDesc("unused#369", unimplementedFunc),
861 /* 370 */ SyscallDesc("unused#370", unimplementedFunc),
862 /* 371 */ SyscallDesc("unused#371", unimplementedFunc),
863 /* 372 */ SyscallDesc("unused#372", unimplementedFunc),
864 /* 373 */ SyscallDesc("unused#373", unimplementedFunc),
865 /* 374 */ SyscallDesc("unused#374", unimplementedFunc),
866 /* 375 */ SyscallDesc("unused#375", unimplementedFunc),
867 /* 376 */ SyscallDesc("unused#376", unimplementedFunc),
868 /* 377 */ SyscallDesc("unused#377", unimplementedFunc),
869 /* 378 */ SyscallDesc("unused#378", unimplementedFunc),
870 /* 379 */ SyscallDesc("unused#379", unimplementedFunc),
871 /* 380 */ SyscallDesc("unused#380", unimplementedFunc),
872 /* 381 */ SyscallDesc("unused#381", unimplementedFunc),
873 /* 382 */ SyscallDesc("unused#382", unimplementedFunc),
874 /* 383 */ SyscallDesc("unused#383", unimplementedFunc),
875 /* 384 */ SyscallDesc("unused#384", unimplementedFunc),
876 /* 385 */ SyscallDesc("unused#385", unimplementedFunc),
877 /* 386 */ SyscallDesc("unused#386", unimplementedFunc),
878 /* 387 */ SyscallDesc("unused#387", unimplementedFunc),
879 /* 388 */ SyscallDesc("unused#388", unimplementedFunc),
880 /* 389 */ SyscallDesc("unused#389", unimplementedFunc),
881 /* 390 */ SyscallDesc("unused#390", unimplementedFunc),
882 /* 391 */ SyscallDesc("unused#391", unimplementedFunc),
883 /* 392 */ SyscallDesc("unused#392", unimplementedFunc),
884 /* 393 */ SyscallDesc("unused#393", unimplementedFunc),
885 /* 394 */ SyscallDesc("unused#394", unimplementedFunc),
886 /* 395 */ SyscallDesc("unused#395", unimplementedFunc),
887 /* 396 */ SyscallDesc("unused#396", unimplementedFunc),
888 /* 397 */ SyscallDesc("unused#397", unimplementedFunc),
889 /* 398 */ SyscallDesc("unused#398", unimplementedFunc),
890 /* 399 */ SyscallDesc("unused#399", unimplementedFunc),
891 /* 400 */ SyscallDesc("unused#400", unimplementedFunc),
892 /* 401 */ SyscallDesc("unused#401", unimplementedFunc),
893 /* 402 */ SyscallDesc("unused#402", unimplementedFunc),
894 /* 403 */ SyscallDesc("unused#403", unimplementedFunc),
895 /* 404 */ SyscallDesc("unused#404", unimplementedFunc),
896 /* 405 */ SyscallDesc("unused#405", unimplementedFunc),
897 /* 406 */ SyscallDesc("unused#406", unimplementedFunc),
898 /* 407 */ SyscallDesc("unused#407", unimplementedFunc),
899 /* 408 */ SyscallDesc("unused#408", unimplementedFunc),
900 /* 409 */ SyscallDesc("unused#409", unimplementedFunc),
901 /* 410 */ SyscallDesc("unused#410", unimplementedFunc),
902 /* 411 */ SyscallDesc("unused#411", unimplementedFunc),
903 /* 412 */ SyscallDesc("unused#412", unimplementedFunc),
904 /* 413 */ SyscallDesc("unused#413", unimplementedFunc),
905 /* 414 */ SyscallDesc("unused#414", unimplementedFunc),
906 /* 415 */ SyscallDesc("unused#415", unimplementedFunc),
907 /* 416 */ SyscallDesc("unused#416", unimplementedFunc),
908 /* 417 */ SyscallDesc("unused#417", unimplementedFunc),
909 /* 418 */ SyscallDesc("unused#418", unimplementedFunc),
910 /* 419 */ SyscallDesc("unused#419", unimplementedFunc),
911 /* 420 */ SyscallDesc("unused#420", unimplementedFunc),
912 /* 421 */ SyscallDesc("unused#421", unimplementedFunc),
913 /* 422 */ SyscallDesc("unused#422", unimplementedFunc),
914 /* 423 */ SyscallDesc("unused#423", unimplementedFunc),
915 /* 424 */ SyscallDesc("unused#424", unimplementedFunc),
916 /* 425 */ SyscallDesc("unused#425", unimplementedFunc),
917 /* 426 */ SyscallDesc("unused#426", unimplementedFunc),
918 /* 427 */ SyscallDesc("unused#427", unimplementedFunc),
919 /* 428 */ SyscallDesc("unused#428", unimplementedFunc),
920 /* 429 */ SyscallDesc("unused#429", unimplementedFunc),
921 /* 430 */ SyscallDesc("unused#430", unimplementedFunc),
922 /* 431 */ SyscallDesc("unused#431", unimplementedFunc),
923 /* 432 */ SyscallDesc("unused#432", unimplementedFunc),
924 /* 433 */ SyscallDesc("unused#433", unimplementedFunc),
925 /* 434 */ SyscallDesc("unused#434", unimplementedFunc),
926 /* 435 */ SyscallDesc("unused#435", unimplementedFunc),
927 /* 436 */ SyscallDesc("unused#436", unimplementedFunc),
928 /* 437 */ SyscallDesc("unused#437", unimplementedFunc),
929 /* 438 */ SyscallDesc("unused#438", unimplementedFunc),
930 /* 439 */ SyscallDesc("unused#439", unimplementedFunc),
931 /* 440 */ SyscallDesc("unused#440", unimplementedFunc),
932 /* 441 */ SyscallDesc("unused#441", unimplementedFunc),
933 /* 442 */ SyscallDesc("unused#442", unimplementedFunc),
934 /* 443 */ SyscallDesc("unused#443", unimplementedFunc),
935 /* 444 */ SyscallDesc("unused#444", unimplementedFunc),
936 /* 445 */ SyscallDesc("unused#445", unimplementedFunc),
937 /* 446 */ SyscallDesc("unused#446", unimplementedFunc),
938 /* 447 */ SyscallDesc("unused#447", unimplementedFunc),
939 /* 448 */ SyscallDesc("unused#448", unimplementedFunc),
940 /* 449 */ SyscallDesc("unused#449", unimplementedFunc),
941 /* 450 */ SyscallDesc("unused#450", unimplementedFunc),
942 /* 451 */ SyscallDesc("unused#451", unimplementedFunc),
943 /* 452 */ SyscallDesc("unused#452", unimplementedFunc),
944 /* 453 */ SyscallDesc("unused#453", unimplementedFunc),
945 /* 454 */ SyscallDesc("unused#454", unimplementedFunc),
946 /* 455 */ SyscallDesc("unused#455", unimplementedFunc),
947 /* 456 */ SyscallDesc("unused#456", unimplementedFunc),
948 /* 457 */ SyscallDesc("unused#457", unimplementedFunc),
949 /* 458 */ SyscallDesc("unused#458", unimplementedFunc),
950 /* 459 */ SyscallDesc("unused#459", unimplementedFunc),
951 /* 460 */ SyscallDesc("unused#460", unimplementedFunc),
952 /* 461 */ SyscallDesc("unused#461", unimplementedFunc),
953 /* 462 */ SyscallDesc("unused#462", unimplementedFunc),
954 /* 463 */ SyscallDesc("unused#463", unimplementedFunc),
955 /* 464 */ SyscallDesc("unused#464", unimplementedFunc),
956 /* 465 */ SyscallDesc("unused#465", unimplementedFunc),
957 /* 466 */ SyscallDesc("unused#466", unimplementedFunc),
958 /* 467 */ SyscallDesc("unused#467", unimplementedFunc),
959 /* 468 */ SyscallDesc("unused#468", unimplementedFunc),
960 /* 469 */ SyscallDesc("unused#469", unimplementedFunc),
961 /* 470 */ SyscallDesc("unused#470", unimplementedFunc),
962 /* 471 */ SyscallDesc("unused#471", unimplementedFunc),
963 /* 472 */ SyscallDesc("unused#472", unimplementedFunc),
964 /* 473 */ SyscallDesc("unused#473", unimplementedFunc),
965 /* 474 */ SyscallDesc("unused#474", unimplementedFunc),
966 /* 475 */ SyscallDesc("unused#475", unimplementedFunc),
967 /* 476 */ SyscallDesc("unused#476", unimplementedFunc),
968 /* 477 */ SyscallDesc("unused#477", unimplementedFunc),
969 /* 478 */ SyscallDesc("unused#478", unimplementedFunc),
970 /* 479 */ SyscallDesc("unused#479", unimplementedFunc),
971 /* 480 */ SyscallDesc("unused#480", unimplementedFunc),
972 /* 481 */ SyscallDesc("unused#481", unimplementedFunc),
973 /* 482 */ SyscallDesc("unused#482", unimplementedFunc),
974 /* 483 */ SyscallDesc("unused#483", unimplementedFunc),
975 /* 484 */ SyscallDesc("unused#484", unimplementedFunc),
976 /* 485 */ SyscallDesc("unused#485", unimplementedFunc),
977 /* 486 */ SyscallDesc("unused#486", unimplementedFunc),
978 /* 487 */ SyscallDesc("unused#487", unimplementedFunc),
979 /* 488 */ SyscallDesc("unused#488", unimplementedFunc),
980 /* 489 */ SyscallDesc("unused#489", unimplementedFunc),
981 /* 490 */ SyscallDesc("unused#490", unimplementedFunc),
982 /* 491 */ SyscallDesc("unused#491", unimplementedFunc),
983 /* 492 */ SyscallDesc("unused#492", unimplementedFunc),
984 /* 493 */ SyscallDesc("unused#493", unimplementedFunc),
985 /* 494 */ SyscallDesc("unused#494", unimplementedFunc),
986 /* 495 */ SyscallDesc("unused#495", unimplementedFunc),
987 /* 496 */ SyscallDesc("unused#496", unimplementedFunc),
988 /* 497 */ SyscallDesc("unused#497", unimplementedFunc),
989 /* 498 */ SyscallDesc("unused#498", unimplementedFunc),
990 /* 499 */ SyscallDesc("unused#499", unimplementedFunc),
991 /* 500 */ SyscallDesc("unused#500", unimplementedFunc),
992 /* 501 */ SyscallDesc("unused#501", unimplementedFunc),
993 /* 502 */ SyscallDesc("unused#502", unimplementedFunc),
994 /* 503 */ SyscallDesc("unused#503", unimplementedFunc),
995 /* 504 */ SyscallDesc("unused#504", unimplementedFunc),
996 /* 505 */ SyscallDesc("unused#505", unimplementedFunc),
997 /* 506 */ SyscallDesc("unused#506", unimplementedFunc),
998 /* 507 */ SyscallDesc("unused#507", unimplementedFunc),
999 /* 508 */ SyscallDesc("unused#508", unimplementedFunc),
1000 /* 509 */ SyscallDesc("unused#509", unimplementedFunc),
1001 /* 510 */ SyscallDesc("unused#510", unimplementedFunc),
1002 /* 511 */ SyscallDesc("unused#511", unimplementedFunc),
1003 /* 512 */ SyscallDesc("unused#512", unimplementedFunc),
1004 /* 513 */ SyscallDesc("unused#513", unimplementedFunc),
1005 /* 514 */ SyscallDesc("unused#514", unimplementedFunc),
1006 /* 515 */ SyscallDesc("unused#515", unimplementedFunc),
1007 /* 516 */ SyscallDesc("unused#516", unimplementedFunc),
1008 /* 517 */ SyscallDesc("unused#517", unimplementedFunc),
1009 /* 518 */ SyscallDesc("unused#518", unimplementedFunc),
1010 /* 519 */ SyscallDesc("unused#519", unimplementedFunc),
1011 /* 520 */ SyscallDesc("unused#520", unimplementedFunc),
1012 /* 521 */ SyscallDesc("unused#521", unimplementedFunc),
1013 /* 522 */ SyscallDesc("unused#522", unimplementedFunc),
1014 /* 523 */ SyscallDesc("unused#523", unimplementedFunc),
1015 /* 524 */ SyscallDesc("unused#524", unimplementedFunc),
1016 /* 525 */ SyscallDesc("unused#525", unimplementedFunc),
1017 /* 526 */ SyscallDesc("unused#526", unimplementedFunc),
1018 /* 527 */ SyscallDesc("unused#527", unimplementedFunc),
1019 /* 528 */ SyscallDesc("unused#528", unimplementedFunc),
1020 /* 529 */ SyscallDesc("unused#529", unimplementedFunc),
1021 /* 530 */ SyscallDesc("unused#530", unimplementedFunc),
1022 /* 531 */ SyscallDesc("unused#531", unimplementedFunc),
1023 /* 532 */ SyscallDesc("unused#532", unimplementedFunc),
1024 /* 533 */ SyscallDesc("unused#533", unimplementedFunc),
1025 /* 534 */ SyscallDesc("unused#534", unimplementedFunc),
1026 /* 535 */ SyscallDesc("unused#535", unimplementedFunc),
1027 /* 536 */ SyscallDesc("unused#536", unimplementedFunc),
1028 /* 537 */ SyscallDesc("unused#537", unimplementedFunc),
1029 /* 538 */ SyscallDesc("unused#538", unimplementedFunc),
1030 /* 539 */ SyscallDesc("unused#539", unimplementedFunc),
1031 /* 540 */ SyscallDesc("unused#540", unimplementedFunc),
1032 /* 541 */ SyscallDesc("unused#541", unimplementedFunc),
1033 /* 542 */ SyscallDesc("unused#542", unimplementedFunc),
1034 /* 543 */ SyscallDesc("unused#543", unimplementedFunc),
1035 /* 544 */ SyscallDesc("unused#544", unimplementedFunc),
1036 /* 545 */ SyscallDesc("unused#545", unimplementedFunc),
1037 /* 546 */ SyscallDesc("unused#546", unimplementedFunc),
1038 /* 547 */ SyscallDesc("unused#547", unimplementedFunc),
1039 /* 548 */ SyscallDesc("unused#548", unimplementedFunc),
1040 /* 549 */ SyscallDesc("unused#549", unimplementedFunc),
1041 /* 550 */ SyscallDesc("unused#550", unimplementedFunc),
1042 /* 551 */ SyscallDesc("unused#551", unimplementedFunc),
1043 /* 552 */ SyscallDesc("unused#552", unimplementedFunc),
1044 /* 553 */ SyscallDesc("unused#553", unimplementedFunc),
1045 /* 554 */ SyscallDesc("unused#554", unimplementedFunc),
1046 /* 555 */ SyscallDesc("unused#555", unimplementedFunc),
1047 /* 556 */ SyscallDesc("unused#556", unimplementedFunc),
1048 /* 557 */ SyscallDesc("unused#557", unimplementedFunc),
1049 /* 558 */ SyscallDesc("unused#558", unimplementedFunc),
1050 /* 559 */ SyscallDesc("unused#559", unimplementedFunc),
1051 /* 560 */ SyscallDesc("unused#560", unimplementedFunc),
1052 /* 561 */ SyscallDesc("unused#561", unimplementedFunc),
1053 /* 562 */ SyscallDesc("unused#562", unimplementedFunc),
1054 /* 563 */ SyscallDesc("unused#563", unimplementedFunc),
1055 /* 564 */ SyscallDesc("unused#564", unimplementedFunc),
1056 /* 565 */ SyscallDesc("unused#565", unimplementedFunc),
1057 /* 566 */ SyscallDesc("unused#566", unimplementedFunc),
1058 /* 567 */ SyscallDesc("unused#567", unimplementedFunc),
1059 /* 568 */ SyscallDesc("unused#568", unimplementedFunc),
1060 /* 569 */ SyscallDesc("unused#569", unimplementedFunc),
1061 /* 570 */ SyscallDesc("unused#570", unimplementedFunc),
1062 /* 571 */ SyscallDesc("unused#571", unimplementedFunc),
1063 /* 572 */ SyscallDesc("unused#572", unimplementedFunc),
1064 /* 573 */ SyscallDesc("unused#573", unimplementedFunc),
1065 /* 574 */ SyscallDesc("unused#574", unimplementedFunc),
1066 /* 575 */ SyscallDesc("unused#575", unimplementedFunc),
1067 /* 576 */ SyscallDesc("unused#576", unimplementedFunc),
1068 /* 577 */ SyscallDesc("unused#577", unimplementedFunc),
1069 /* 578 */ SyscallDesc("unused#578", unimplementedFunc),
1070 /* 579 */ SyscallDesc("unused#579", unimplementedFunc),
1071 /* 580 */ SyscallDesc("unused#580", unimplementedFunc),
1072 /* 581 */ SyscallDesc("unused#581", unimplementedFunc),
1073 /* 582 */ SyscallDesc("unused#582", unimplementedFunc),
1074 /* 583 */ SyscallDesc("unused#583", unimplementedFunc),
1075 /* 584 */ SyscallDesc("unused#584", unimplementedFunc),
1076 /* 585 */ SyscallDesc("unused#585", unimplementedFunc),
1077 /* 586 */ SyscallDesc("unused#586", unimplementedFunc),
1078 /* 587 */ SyscallDesc("unused#587", unimplementedFunc),
1079 /* 588 */ SyscallDesc("unused#588", unimplementedFunc),
1080 /* 589 */ SyscallDesc("unused#589", unimplementedFunc),
1081 /* 590 */ SyscallDesc("unused#590", unimplementedFunc),
1082 /* 591 */ SyscallDesc("unused#591", unimplementedFunc),
1083 /* 592 */ SyscallDesc("unused#592", unimplementedFunc),
1084 /* 593 */ SyscallDesc("unused#593", unimplementedFunc),
1085 /* 594 */ SyscallDesc("unused#594", unimplementedFunc),
1086 /* 595 */ SyscallDesc("unused#595", unimplementedFunc),
1087 /* 596 */ SyscallDesc("unused#596", unimplementedFunc),
1088 /* 597 */ SyscallDesc("unused#597", unimplementedFunc),
1089 /* 598 */ SyscallDesc("unused#598", unimplementedFunc),
1090 /* 599 */ SyscallDesc("unused#599", unimplementedFunc),
1091 /* 600 */ SyscallDesc("unused#600", unimplementedFunc),
1092 /* 601 */ SyscallDesc("unused#601", unimplementedFunc),
1093 /* 602 */ SyscallDesc("unused#602", unimplementedFunc),
1094 /* 603 */ SyscallDesc("unused#603", unimplementedFunc),
1095 /* 604 */ SyscallDesc("unused#604", unimplementedFunc),
1096 /* 605 */ SyscallDesc("unused#605", unimplementedFunc),
1097 /* 606 */ SyscallDesc("unused#606", unimplementedFunc),
1098 /* 607 */ SyscallDesc("unused#607", unimplementedFunc),
1099 /* 608 */ SyscallDesc("unused#608", unimplementedFunc),
1100 /* 609 */ SyscallDesc("unused#609", unimplementedFunc),
1101 /* 610 */ SyscallDesc("unused#610", unimplementedFunc),
1102 /* 611 */ SyscallDesc("unused#611", unimplementedFunc),
1103 /* 612 */ SyscallDesc("unused#612", unimplementedFunc),
1104 /* 613 */ SyscallDesc("unused#613", unimplementedFunc),
1105 /* 614 */ SyscallDesc("unused#614", unimplementedFunc),
1106 /* 615 */ SyscallDesc("unused#615", unimplementedFunc),
1107 /* 616 */ SyscallDesc("unused#616", unimplementedFunc),
1108 /* 617 */ SyscallDesc("unused#617", unimplementedFunc),
1109 /* 618 */ SyscallDesc("unused#618", unimplementedFunc),
1110 /* 619 */ SyscallDesc("unused#619", unimplementedFunc),
1111 /* 620 */ SyscallDesc("unused#620", unimplementedFunc),
1112 /* 621 */ SyscallDesc("unused#621", unimplementedFunc),
1113 /* 622 */ SyscallDesc("unused#622", unimplementedFunc),
1114 /* 623 */ SyscallDesc("unused#623", unimplementedFunc),
1115 /* 624 */ SyscallDesc("unused#624", unimplementedFunc),
1116 /* 625 */ SyscallDesc("unused#625", unimplementedFunc),
1117 /* 626 */ SyscallDesc("unused#626", unimplementedFunc),
1118 /* 627 */ SyscallDesc("unused#627", unimplementedFunc),
1119 /* 628 */ SyscallDesc("unused#628", unimplementedFunc),
1120 /* 629 */ SyscallDesc("unused#629", unimplementedFunc),
1121 /* 630 */ SyscallDesc("unused#630", unimplementedFunc),
1122 /* 631 */ SyscallDesc("unused#631", unimplementedFunc),
1123 /* 632 */ SyscallDesc("unused#632", unimplementedFunc),
1124 /* 633 */ SyscallDesc("unused#633", unimplementedFunc),
1125 /* 634 */ SyscallDesc("unused#634", unimplementedFunc),
1126 /* 635 */ SyscallDesc("unused#635", unimplementedFunc),
1127 /* 636 */ SyscallDesc("unused#636", unimplementedFunc),
1128 /* 637 */ SyscallDesc("unused#637", unimplementedFunc),
1129 /* 638 */ SyscallDesc("unused#638", unimplementedFunc),
1130 /* 639 */ SyscallDesc("unused#639", unimplementedFunc),
1131 /* 640 */ SyscallDesc("unused#640", unimplementedFunc),
1132 /* 641 */ SyscallDesc("unused#641", unimplementedFunc),
1133 /* 642 */ SyscallDesc("unused#642", unimplementedFunc),
1134 /* 643 */ SyscallDesc("unused#643", unimplementedFunc),
1135 /* 644 */ SyscallDesc("unused#644", unimplementedFunc),
1136 /* 645 */ SyscallDesc("unused#645", unimplementedFunc),
1137 /* 646 */ SyscallDesc("unused#646", unimplementedFunc),
1138 /* 647 */ SyscallDesc("unused#647", unimplementedFunc),
1139 /* 648 */ SyscallDesc("unused#648", unimplementedFunc),
1140 /* 649 */ SyscallDesc("unused#649", unimplementedFunc),
1141 /* 650 */ SyscallDesc("unused#650", unimplementedFunc),
1142 /* 651 */ SyscallDesc("unused#651", unimplementedFunc),
1143 /* 652 */ SyscallDesc("unused#652", unimplementedFunc),
1144 /* 653 */ SyscallDesc("unused#653", unimplementedFunc),
1145 /* 654 */ SyscallDesc("unused#654", unimplementedFunc),
1146 /* 655 */ SyscallDesc("unused#655", unimplementedFunc),
1147 /* 656 */ SyscallDesc("unused#656", unimplementedFunc),
1148 /* 657 */ SyscallDesc("unused#657", unimplementedFunc),
1149 /* 658 */ SyscallDesc("unused#658", unimplementedFunc),
1150 /* 659 */ SyscallDesc("unused#659", unimplementedFunc),
1151 /* 660 */ SyscallDesc("unused#660", unimplementedFunc),
1152 /* 661 */ SyscallDesc("unused#661", unimplementedFunc),
1153 /* 662 */ SyscallDesc("unused#662", unimplementedFunc),
1154 /* 663 */ SyscallDesc("unused#663", unimplementedFunc),
1155 /* 664 */ SyscallDesc("unused#664", unimplementedFunc),
1156 /* 665 */ SyscallDesc("unused#665", unimplementedFunc),
1157 /* 666 */ SyscallDesc("unused#666", unimplementedFunc),
1158 /* 667 */ SyscallDesc("unused#667", unimplementedFunc),
1159 /* 668 */ SyscallDesc("unused#668", unimplementedFunc),
1160 /* 669 */ SyscallDesc("unused#669", unimplementedFunc),
1161 /* 670 */ SyscallDesc("unused#670", unimplementedFunc),
1162 /* 671 */ SyscallDesc("unused#671", unimplementedFunc),
1163 /* 672 */ SyscallDesc("unused#672", unimplementedFunc),
1164 /* 673 */ SyscallDesc("unused#673", unimplementedFunc),
1165 /* 674 */ SyscallDesc("unused#674", unimplementedFunc),
1166 /* 675 */ SyscallDesc("unused#675", unimplementedFunc),
1167 /* 676 */ SyscallDesc("unused#676", unimplementedFunc),
1168 /* 677 */ SyscallDesc("unused#677", unimplementedFunc),
1169 /* 678 */ SyscallDesc("unused#678", unimplementedFunc),
1170 /* 679 */ SyscallDesc("unused#679", unimplementedFunc),
1171 /* 680 */ SyscallDesc("unused#680", unimplementedFunc),
1172 /* 681 */ SyscallDesc("unused#681", unimplementedFunc),
1173 /* 682 */ SyscallDesc("unused#682", unimplementedFunc),
1174 /* 683 */ SyscallDesc("unused#683", unimplementedFunc),
1175 /* 684 */ SyscallDesc("unused#684", unimplementedFunc),
1176 /* 685 */ SyscallDesc("unused#685", unimplementedFunc),
1177 /* 686 */ SyscallDesc("unused#686", unimplementedFunc),
1178 /* 687 */ SyscallDesc("unused#687", unimplementedFunc),
1179 /* 688 */ SyscallDesc("unused#688", unimplementedFunc),
1180 /* 689 */ SyscallDesc("unused#689", unimplementedFunc),
1181 /* 690 */ SyscallDesc("unused#690", unimplementedFunc),
1182 /* 691 */ SyscallDesc("unused#691", unimplementedFunc),
1183 /* 692 */ SyscallDesc("unused#692", unimplementedFunc),
1184 /* 693 */ SyscallDesc("unused#693", unimplementedFunc),
1185 /* 694 */ SyscallDesc("unused#694", unimplementedFunc),
1186 /* 695 */ SyscallDesc("unused#695", unimplementedFunc),
1187 /* 696 */ SyscallDesc("unused#696", unimplementedFunc),
1188 /* 697 */ SyscallDesc("unused#697", unimplementedFunc),
1189 /* 698 */ SyscallDesc("unused#698", unimplementedFunc),
1190 /* 699 */ SyscallDesc("unused#699", unimplementedFunc),
1191 /* 700 */ SyscallDesc("unused#700", unimplementedFunc),
1192 /* 701 */ SyscallDesc("unused#701", unimplementedFunc),
1193 /* 702 */ SyscallDesc("unused#702", unimplementedFunc),
1194 /* 703 */ SyscallDesc("unused#703", unimplementedFunc),
1195 /* 704 */ SyscallDesc("unused#704", unimplementedFunc),
1196 /* 705 */ SyscallDesc("unused#705", unimplementedFunc),
1197 /* 706 */ SyscallDesc("unused#706", unimplementedFunc),
1198 /* 707 */ SyscallDesc("unused#707", unimplementedFunc),
1199 /* 708 */ SyscallDesc("unused#708", unimplementedFunc),
1200 /* 709 */ SyscallDesc("unused#709", unimplementedFunc),
1201 /* 710 */ SyscallDesc("unused#710", unimplementedFunc),
1202 /* 711 */ SyscallDesc("unused#711", unimplementedFunc),
1203 /* 712 */ SyscallDesc("unused#712", unimplementedFunc),
1204 /* 713 */ SyscallDesc("unused#713", unimplementedFunc),
1205 /* 714 */ SyscallDesc("unused#714", unimplementedFunc),
1206 /* 715 */ SyscallDesc("unused#715", unimplementedFunc),
1207 /* 716 */ SyscallDesc("unused#716", unimplementedFunc),
1208 /* 717 */ SyscallDesc("unused#717", unimplementedFunc),
1209 /* 718 */ SyscallDesc("unused#718", unimplementedFunc),
1210 /* 719 */ SyscallDesc("unused#719", unimplementedFunc),
1211 /* 720 */ SyscallDesc("unused#720", unimplementedFunc),
1212 /* 721 */ SyscallDesc("unused#721", unimplementedFunc),
1213 /* 722 */ SyscallDesc("unused#722", unimplementedFunc),
1214 /* 723 */ SyscallDesc("unused#723", unimplementedFunc),
1215 /* 724 */ SyscallDesc("unused#724", unimplementedFunc),
1216 /* 725 */ SyscallDesc("unused#725", unimplementedFunc),
1217 /* 726 */ SyscallDesc("unused#726", unimplementedFunc),
1218 /* 727 */ SyscallDesc("unused#727", unimplementedFunc),
1219 /* 728 */ SyscallDesc("unused#728", unimplementedFunc),
1220 /* 729 */ SyscallDesc("unused#729", unimplementedFunc),
1221 /* 730 */ SyscallDesc("unused#730", unimplementedFunc),
1222 /* 731 */ SyscallDesc("unused#731", unimplementedFunc),
1223 /* 732 */ SyscallDesc("unused#732", unimplementedFunc),
1224 /* 733 */ SyscallDesc("unused#733", unimplementedFunc),
1225 /* 734 */ SyscallDesc("unused#734", unimplementedFunc),
1226 /* 735 */ SyscallDesc("unused#735", unimplementedFunc),
1227 /* 736 */ SyscallDesc("unused#736", unimplementedFunc),
1228 /* 737 */ SyscallDesc("unused#737", unimplementedFunc),
1229 /* 738 */ SyscallDesc("unused#738", unimplementedFunc),
1230 /* 739 */ SyscallDesc("unused#739", unimplementedFunc),
1231 /* 740 */ SyscallDesc("unused#740", unimplementedFunc),
1232 /* 741 */ SyscallDesc("unused#741", unimplementedFunc),
1233 /* 742 */ SyscallDesc("unused#742", unimplementedFunc),
1234 /* 743 */ SyscallDesc("unused#743", unimplementedFunc),
1235 /* 744 */ SyscallDesc("unused#744", unimplementedFunc),
1236 /* 745 */ SyscallDesc("unused#745", unimplementedFunc),
1237 /* 746 */ SyscallDesc("unused#746", unimplementedFunc),
1238 /* 747 */ SyscallDesc("unused#747", unimplementedFunc),
1239 /* 748 */ SyscallDesc("unused#748", unimplementedFunc),
1240 /* 749 */ SyscallDesc("unused#749", unimplementedFunc),
1241 /* 750 */ SyscallDesc("unused#750", unimplementedFunc),
1242 /* 751 */ SyscallDesc("unused#751", unimplementedFunc),
1243 /* 752 */ SyscallDesc("unused#752", unimplementedFunc),
1244 /* 753 */ SyscallDesc("unused#753", unimplementedFunc),
1245 /* 754 */ SyscallDesc("unused#754", unimplementedFunc),
1246 /* 755 */ SyscallDesc("unused#755", unimplementedFunc),
1247 /* 756 */ SyscallDesc("unused#756", unimplementedFunc),
1248 /* 757 */ SyscallDesc("unused#757", unimplementedFunc),
1249 /* 758 */ SyscallDesc("unused#758", unimplementedFunc),
1250 /* 759 */ SyscallDesc("unused#759", unimplementedFunc),
1251 /* 760 */ SyscallDesc("unused#760", unimplementedFunc),
1252 /* 761 */ SyscallDesc("unused#761", unimplementedFunc),
1253 /* 762 */ SyscallDesc("unused#762", unimplementedFunc),
1254 /* 763 */ SyscallDesc("unused#763", unimplementedFunc),
1255 /* 764 */ SyscallDesc("unused#764", unimplementedFunc),
1256 /* 765 */ SyscallDesc("unused#765", unimplementedFunc),
1257 /* 766 */ SyscallDesc("unused#766", unimplementedFunc),
1258 /* 767 */ SyscallDesc("unused#767", unimplementedFunc),
1259 /* 768 */ SyscallDesc("unused#768", unimplementedFunc),
1260 /* 769 */ SyscallDesc("unused#769", unimplementedFunc),
1261 /* 770 */ SyscallDesc("unused#770", unimplementedFunc),
1262 /* 771 */ SyscallDesc("unused#771", unimplementedFunc),
1263 /* 772 */ SyscallDesc("unused#772", unimplementedFunc),
1264 /* 773 */ SyscallDesc("unused#773", unimplementedFunc),
1265 /* 774 */ SyscallDesc("unused#774", unimplementedFunc),
1266 /* 775 */ SyscallDesc("unused#775", unimplementedFunc),
1267 /* 776 */ SyscallDesc("unused#776", unimplementedFunc),
1268 /* 777 */ SyscallDesc("unused#777", unimplementedFunc),
1269 /* 778 */ SyscallDesc("unused#778", unimplementedFunc),
1270 /* 779 */ SyscallDesc("unused#779", unimplementedFunc),
1271 /* 780 */ SyscallDesc("unused#780", unimplementedFunc),
1272 /* 781 */ SyscallDesc("unused#781", unimplementedFunc),
1273 /* 782 */ SyscallDesc("unused#782", unimplementedFunc),
1274 /* 783 */ SyscallDesc("unused#783", unimplementedFunc),
1275 /* 784 */ SyscallDesc("unused#784", unimplementedFunc),
1276 /* 785 */ SyscallDesc("unused#785", unimplementedFunc),
1277 /* 786 */ SyscallDesc("unused#786", unimplementedFunc),
1278 /* 787 */ SyscallDesc("unused#787", unimplementedFunc),
1279 /* 788 */ SyscallDesc("unused#788", unimplementedFunc),
1280 /* 789 */ SyscallDesc("unused#789", unimplementedFunc),
1281 /* 790 */ SyscallDesc("unused#790", unimplementedFunc),
1282 /* 791 */ SyscallDesc("unused#791", unimplementedFunc),
1283 /* 792 */ SyscallDesc("unused#792", unimplementedFunc),
1284 /* 793 */ SyscallDesc("unused#793", unimplementedFunc),
1285 /* 794 */ SyscallDesc("unused#794", unimplementedFunc),
1286 /* 795 */ SyscallDesc("unused#795", unimplementedFunc),
1287 /* 796 */ SyscallDesc("unused#796", unimplementedFunc),
1288 /* 797 */ SyscallDesc("unused#797", unimplementedFunc),
1289 /* 798 */ SyscallDesc("unused#798", unimplementedFunc),
1290 /* 799 */ SyscallDesc("unused#799", unimplementedFunc),
1291 /* 800 */ SyscallDesc("unused#800", unimplementedFunc),
1292 /* 801 */ SyscallDesc("unused#801", unimplementedFunc),
1293 /* 802 */ SyscallDesc("unused#802", unimplementedFunc),
1294 /* 803 */ SyscallDesc("unused#803", unimplementedFunc),
1295 /* 804 */ SyscallDesc("unused#804", unimplementedFunc),
1296 /* 805 */ SyscallDesc("unused#805", unimplementedFunc),
1297 /* 806 */ SyscallDesc("unused#806", unimplementedFunc),
1298 /* 807 */ SyscallDesc("unused#807", unimplementedFunc),
1299 /* 808 */ SyscallDesc("unused#808", unimplementedFunc),
1300 /* 809 */ SyscallDesc("unused#809", unimplementedFunc),
1301 /* 810 */ SyscallDesc("unused#810", unimplementedFunc),
1302 /* 811 */ SyscallDesc("unused#811", unimplementedFunc),
1303 /* 812 */ SyscallDesc("unused#812", unimplementedFunc),
1304 /* 813 */ SyscallDesc("unused#813", unimplementedFunc),
1305 /* 814 */ SyscallDesc("unused#814", unimplementedFunc),
1306 /* 815 */ SyscallDesc("unused#815", unimplementedFunc),
1307 /* 816 */ SyscallDesc("unused#816", unimplementedFunc),
1308 /* 817 */ SyscallDesc("unused#817", unimplementedFunc),
1309 /* 818 */ SyscallDesc("unused#818", unimplementedFunc),
1310 /* 819 */ SyscallDesc("unused#819", unimplementedFunc),
1311 /* 820 */ SyscallDesc("unused#820", unimplementedFunc),
1312 /* 821 */ SyscallDesc("unused#821", unimplementedFunc),
1313 /* 822 */ SyscallDesc("unused#822", unimplementedFunc),
1314 /* 823 */ SyscallDesc("unused#823", unimplementedFunc),
1315 /* 824 */ SyscallDesc("unused#824", unimplementedFunc),
1316 /* 825 */ SyscallDesc("unused#825", unimplementedFunc),
1317 /* 826 */ SyscallDesc("unused#826", unimplementedFunc),
1318 /* 827 */ SyscallDesc("unused#827", unimplementedFunc),
1319 /* 828 */ SyscallDesc("unused#828", unimplementedFunc),
1320 /* 829 */ SyscallDesc("unused#829", unimplementedFunc),
1321 /* 830 */ SyscallDesc("unused#830", unimplementedFunc),
1322 /* 831 */ SyscallDesc("unused#831", unimplementedFunc),
1323 /* 832 */ SyscallDesc("unused#832", unimplementedFunc),
1324 /* 833 */ SyscallDesc("unused#833", unimplementedFunc),
1325 /* 834 */ SyscallDesc("unused#834", unimplementedFunc),
1326 /* 835 */ SyscallDesc("unused#835", unimplementedFunc),
1327 /* 836 */ SyscallDesc("unused#836", unimplementedFunc),
1328 /* 837 */ SyscallDesc("unused#837", unimplementedFunc),
1329 /* 838 */ SyscallDesc("unused#838", unimplementedFunc),
1330 /* 839 */ SyscallDesc("unused#839", unimplementedFunc),
1331 /* 840 */ SyscallDesc("unused#840", unimplementedFunc),
1332 /* 841 */ SyscallDesc("unused#841", unimplementedFunc),
1333 /* 842 */ SyscallDesc("unused#842", unimplementedFunc),
1334 /* 843 */ SyscallDesc("unused#843", unimplementedFunc),
1335 /* 844 */ SyscallDesc("unused#844", unimplementedFunc),
1336 /* 845 */ SyscallDesc("unused#845", unimplementedFunc),
1337 /* 846 */ SyscallDesc("unused#846", unimplementedFunc),
1338 /* 847 */ SyscallDesc("unused#847", unimplementedFunc),
1339 /* 848 */ SyscallDesc("unused#848", unimplementedFunc),
1340 /* 849 */ SyscallDesc("unused#849", unimplementedFunc),
1341 /* 850 */ SyscallDesc("unused#850", unimplementedFunc),
1342 /* 851 */ SyscallDesc("unused#851", unimplementedFunc),
1343 /* 852 */ SyscallDesc("unused#852", unimplementedFunc),
1344 /* 853 */ SyscallDesc("unused#853", unimplementedFunc),
1345 /* 854 */ SyscallDesc("unused#854", unimplementedFunc),
1346 /* 855 */ SyscallDesc("unused#855", unimplementedFunc),
1347 /* 856 */ SyscallDesc("unused#856", unimplementedFunc),
1348 /* 857 */ SyscallDesc("unused#857", unimplementedFunc),
1349 /* 858 */ SyscallDesc("unused#858", unimplementedFunc),
1350 /* 859 */ SyscallDesc("unused#859", unimplementedFunc),
1351 /* 860 */ SyscallDesc("unused#860", unimplementedFunc),
1352 /* 861 */ SyscallDesc("unused#861", unimplementedFunc),
1353 /* 862 */ SyscallDesc("unused#862", unimplementedFunc),
1354 /* 863 */ SyscallDesc("unused#863", unimplementedFunc),
1355 /* 864 */ SyscallDesc("unused#864", unimplementedFunc),
1356 /* 865 */ SyscallDesc("unused#865", unimplementedFunc),
1357 /* 866 */ SyscallDesc("unused#866", unimplementedFunc),
1358 /* 867 */ SyscallDesc("unused#867", unimplementedFunc),
1359 /* 868 */ SyscallDesc("unused#868", unimplementedFunc),
1360 /* 869 */ SyscallDesc("unused#869", unimplementedFunc),
1361 /* 870 */ SyscallDesc("unused#870", unimplementedFunc),
1362 /* 871 */ SyscallDesc("unused#871", unimplementedFunc),
1363 /* 872 */ SyscallDesc("unused#872", unimplementedFunc),
1364 /* 873 */ SyscallDesc("unused#873", unimplementedFunc),
1365 /* 874 */ SyscallDesc("unused#874", unimplementedFunc),
1366 /* 875 */ SyscallDesc("unused#875", unimplementedFunc),
1367 /* 876 */ SyscallDesc("unused#876", unimplementedFunc),
1368 /* 877 */ SyscallDesc("unused#877", unimplementedFunc),
1369 /* 878 */ SyscallDesc("unused#878", unimplementedFunc),
1370 /* 879 */ SyscallDesc("unused#879", unimplementedFunc),
1371 /* 880 */ SyscallDesc("unused#880", unimplementedFunc),
1372 /* 881 */ SyscallDesc("unused#881", unimplementedFunc),
1373 /* 882 */ SyscallDesc("unused#882", unimplementedFunc),
1374 /* 883 */ SyscallDesc("unused#883", unimplementedFunc),
1375 /* 884 */ SyscallDesc("unused#884", unimplementedFunc),
1376 /* 885 */ SyscallDesc("unused#885", unimplementedFunc),
1377 /* 886 */ SyscallDesc("unused#886", unimplementedFunc),
1378 /* 887 */ SyscallDesc("unused#887", unimplementedFunc),
1379 /* 888 */ SyscallDesc("unused#888", unimplementedFunc),
1380 /* 889 */ SyscallDesc("unused#889", unimplementedFunc),
1381 /* 890 */ SyscallDesc("unused#890", unimplementedFunc),
1382 /* 891 */ SyscallDesc("unused#891", unimplementedFunc),
1383 /* 892 */ SyscallDesc("unused#892", unimplementedFunc),
1384 /* 893 */ SyscallDesc("unused#893", unimplementedFunc),
1385 /* 894 */ SyscallDesc("unused#894", unimplementedFunc),
1386 /* 895 */ SyscallDesc("unused#895", unimplementedFunc),
1387 /* 896 */ SyscallDesc("unused#896", unimplementedFunc),
1388 /* 897 */ SyscallDesc("unused#897", unimplementedFunc),
1389 /* 898 */ SyscallDesc("unused#898", unimplementedFunc),
1390 /* 899 */ SyscallDesc("unused#899", unimplementedFunc),
1391 /* 900 */ SyscallDesc("unused#900", unimplementedFunc),
1392 /* 901 */ SyscallDesc("unused#901", unimplementedFunc),
1393 /* 902 */ SyscallDesc("unused#902", unimplementedFunc),
1394 /* 903 */ SyscallDesc("unused#903", unimplementedFunc),
1395 /* 904 */ SyscallDesc("unused#904", unimplementedFunc),
1396 /* 905 */ SyscallDesc("unused#905", unimplementedFunc),
1397 /* 906 */ SyscallDesc("unused#906", unimplementedFunc),
1398 /* 907 */ SyscallDesc("unused#907", unimplementedFunc),
1399 /* 908 */ SyscallDesc("unused#908", unimplementedFunc),
1400 /* 909 */ SyscallDesc("unused#909", unimplementedFunc),
1401 /* 910 */ SyscallDesc("unused#910", unimplementedFunc),
1402 /* 911 */ SyscallDesc("unused#911", unimplementedFunc),
1403 /* 912 */ SyscallDesc("unused#912", unimplementedFunc),
1404 /* 913 */ SyscallDesc("unused#913", unimplementedFunc),
1405 /* 914 */ SyscallDesc("unused#914", unimplementedFunc),
1406 /* 915 */ SyscallDesc("unused#915", unimplementedFunc),
1407 /* 916 */ SyscallDesc("unused#916", unimplementedFunc),
1408 /* 917 */ SyscallDesc("unused#917", unimplementedFunc),
1409 /* 918 */ SyscallDesc("unused#918", unimplementedFunc),
1410 /* 919 */ SyscallDesc("unused#919", unimplementedFunc),
1411 /* 920 */ SyscallDesc("unused#920", unimplementedFunc),
1412 /* 921 */ SyscallDesc("unused#921", unimplementedFunc),
1413 /* 922 */ SyscallDesc("unused#922", unimplementedFunc),
1414 /* 923 */ SyscallDesc("unused#923", unimplementedFunc),
1415 /* 924 */ SyscallDesc("unused#924", unimplementedFunc),
1416 /* 925 */ SyscallDesc("unused#925", unimplementedFunc),
1417 /* 926 */ SyscallDesc("unused#926", unimplementedFunc),
1418 /* 927 */ SyscallDesc("unused#927", unimplementedFunc),
1419 /* 928 */ SyscallDesc("unused#928", unimplementedFunc),
1420 /* 929 */ SyscallDesc("unused#929", unimplementedFunc),
1421 /* 930 */ SyscallDesc("unused#930", unimplementedFunc),
1422 /* 931 */ SyscallDesc("unused#931", unimplementedFunc),
1423 /* 932 */ SyscallDesc("unused#932", unimplementedFunc),
1424 /* 933 */ SyscallDesc("unused#933", unimplementedFunc),
1425 /* 934 */ SyscallDesc("unused#934", unimplementedFunc),
1426 /* 935 */ SyscallDesc("unused#935", unimplementedFunc),
1427 /* 936 */ SyscallDesc("unused#936", unimplementedFunc),
1428 /* 937 */ SyscallDesc("unused#937", unimplementedFunc),
1429 /* 938 */ SyscallDesc("unused#938", unimplementedFunc),
1430 /* 939 */ SyscallDesc("unused#939", unimplementedFunc),
1431 /* 940 */ SyscallDesc("unused#940", unimplementedFunc),
1432 /* 941 */ SyscallDesc("unused#941", unimplementedFunc),
1433 /* 942 */ SyscallDesc("unused#942", unimplementedFunc),
1434 /* 943 */ SyscallDesc("unused#943", unimplementedFunc),
1435 /* 944 */ SyscallDesc("unused#944", unimplementedFunc),
1436 /* 945 */ SyscallDesc("unused#945", unimplementedFunc),
1437 /* 946 */ SyscallDesc("unused#946", unimplementedFunc),
1438 /* 947 */ SyscallDesc("unused#947", unimplementedFunc),
1439 /* 948 */ SyscallDesc("unused#948", unimplementedFunc),
1440 /* 949 */ SyscallDesc("unused#949", unimplementedFunc),
1441 /* 950 */ SyscallDesc("unused#950", unimplementedFunc),
1442 /* 951 */ SyscallDesc("unused#951", unimplementedFunc),
1443 /* 952 */ SyscallDesc("unused#952", unimplementedFunc),
1444 /* 953 */ SyscallDesc("unused#953", unimplementedFunc),
1445 /* 954 */ SyscallDesc("unused#954", unimplementedFunc),
1446 /* 955 */ SyscallDesc("unused#955", unimplementedFunc),
1447 /* 956 */ SyscallDesc("unused#956", unimplementedFunc),
1448 /* 957 */ SyscallDesc("unused#957", unimplementedFunc),
1449 /* 958 */ SyscallDesc("unused#958", unimplementedFunc),
1450 /* 959 */ SyscallDesc("unused#959", unimplementedFunc),
1451 /* 960 */ SyscallDesc("unused#960", unimplementedFunc),
1452 /* 961 */ SyscallDesc("unused#961", unimplementedFunc),
1453 /* 962 */ SyscallDesc("unused#962", unimplementedFunc),
1454 /* 963 */ SyscallDesc("unused#963", unimplementedFunc),
1455 /* 964 */ SyscallDesc("unused#964", unimplementedFunc),
1456 /* 965 */ SyscallDesc("unused#965", unimplementedFunc),
1457 /* 966 */ SyscallDesc("unused#966", unimplementedFunc),
1458 /* 967 */ SyscallDesc("unused#967", unimplementedFunc),
1459 /* 968 */ SyscallDesc("unused#968", unimplementedFunc),
1460 /* 969 */ SyscallDesc("unused#969", unimplementedFunc),
1461 /* 970 */ SyscallDesc("unused#970", unimplementedFunc),
1462 /* 971 */ SyscallDesc("unused#971", unimplementedFunc),
1463 /* 972 */ SyscallDesc("unused#972", unimplementedFunc),
1464 /* 973 */ SyscallDesc("unused#973", unimplementedFunc),
1465 /* 974 */ SyscallDesc("unused#974", unimplementedFunc),
1466 /* 975 */ SyscallDesc("unused#975", unimplementedFunc),
1467 /* 976 */ SyscallDesc("unused#976", unimplementedFunc),
1468 /* 977 */ SyscallDesc("unused#977", unimplementedFunc),
1469 /* 978 */ SyscallDesc("unused#978", unimplementedFunc),
1470 /* 979 */ SyscallDesc("unused#979", unimplementedFunc),
1471 /* 980 */ SyscallDesc("unused#980", unimplementedFunc),
1472 /* 981 */ SyscallDesc("unused#981", unimplementedFunc),
1473 /* 982 */ SyscallDesc("unused#982", unimplementedFunc),
1474 /* 983 */ SyscallDesc("unused#983", unimplementedFunc),
1475 /* 984 */ SyscallDesc("unused#984", unimplementedFunc),
1476 /* 985 */ SyscallDesc("unused#985", unimplementedFunc),
1477 /* 986 */ SyscallDesc("unused#986", unimplementedFunc),
1478 /* 987 */ SyscallDesc("unused#987", unimplementedFunc),
1479 /* 988 */ SyscallDesc("unused#988", unimplementedFunc),
1480 /* 989 */ SyscallDesc("unused#989", unimplementedFunc),
1481 /* 990 */ SyscallDesc("unused#990", unimplementedFunc),
1482 /* 991 */ SyscallDesc("unused#991", unimplementedFunc),
1483 /* 992 */ SyscallDesc("unused#992", unimplementedFunc),
1484 /* 993 */ SyscallDesc("unused#993", unimplementedFunc),
1485 /* 994 */ SyscallDesc("unused#994", unimplementedFunc),
1486 /* 995 */ SyscallDesc("unused#995", unimplementedFunc),
1487 /* 996 */ SyscallDesc("unused#996", unimplementedFunc),
1488 /* 997 */ SyscallDesc("unused#997", unimplementedFunc),
1489 /* 998 */ SyscallDesc("unused#998", unimplementedFunc),
1490 /* 999 */ SyscallDesc("unused#999", unimplementedFunc),
1491 /* 1000 */ SyscallDesc("unused#1000", unimplementedFunc),
1492 /* 1001 */ SyscallDesc("unused#1001", unimplementedFunc),
1493 /* 1002 */ SyscallDesc("unused#1002", unimplementedFunc),
1494 /* 1003 */ SyscallDesc("unused#1003", unimplementedFunc),
1495 /* 1004 */ SyscallDesc("unused#1004", unimplementedFunc),
1496 /* 1005 */ SyscallDesc("unused#1005", unimplementedFunc),
1497 /* 1006 */ SyscallDesc("unused#1006", unimplementedFunc),
1498 /* 1007 */ SyscallDesc("unused#1007", unimplementedFunc),
1499 /* 1008 */ SyscallDesc("unused#1008", unimplementedFunc),
1500 /* 1009 */ SyscallDesc("unused#1009", unimplementedFunc),
1501 /* 1010 */ SyscallDesc("unused#1010", unimplementedFunc),
1502 /* 1011 */ SyscallDesc("unused#1011", unimplementedFunc),
1503 /* 1012 */ SyscallDesc("unused#1012", unimplementedFunc),
1504 /* 1013 */ SyscallDesc("unused#1013", unimplementedFunc),
1505 /* 1014 */ SyscallDesc("unused#1014", unimplementedFunc),
1506 /* 1015 */ SyscallDesc("unused#1015", unimplementedFunc),
1507 /* 1016 */ SyscallDesc("unused#1016", unimplementedFunc),
1508 /* 1017 */ SyscallDesc("unused#1017", unimplementedFunc),
1509 /* 1018 */ SyscallDesc("unused#1018", unimplementedFunc),
1510 /* 1019 */ SyscallDesc("unused#1019", unimplementedFunc),
1511 /* 1020 */ SyscallDesc("unused#1020", unimplementedFunc),
1512 /* 1021 */ SyscallDesc("unused#1021", unimplementedFunc),
1513 /* 1022 */ SyscallDesc("unused#1022", unimplementedFunc),
1514 /* 1023 */ SyscallDesc("unused#1023", unimplementedFunc),
1515 /* 1024 */ SyscallDesc("open", openFunc<ArmLinux64>),
1516 /* 1025 */ SyscallDesc("link", unimplementedFunc),
1517 /* 1026 */ SyscallDesc("unlink", unlinkFunc),
1518 /* 1027 */ SyscallDesc("mknod", unimplementedFunc),
1519 /* 1028 */ SyscallDesc("chmod", chmodFunc<ArmLinux64>),
1520 /* 1029 */ SyscallDesc("chown", unimplementedFunc),
1521 /* 1030 */ SyscallDesc("mkdir", mkdirFunc),
1522 /* 1031 */ SyscallDesc("rmdir", unimplementedFunc),
1523 /* 1032 */ SyscallDesc("lchown", unimplementedFunc),
1524 /* 1033 */ SyscallDesc("access", unimplementedFunc),
1525 /* 1034 */ SyscallDesc("rename", renameFunc),
1526 /* 1035 */ SyscallDesc("readlink", readlinkFunc),
1527 /* 1036 */ SyscallDesc("symlink", unimplementedFunc),
1528 /* 1037 */ SyscallDesc("utimes", unimplementedFunc),
1529 /* 1038 */ SyscallDesc("stat64", stat64Func<ArmLinux64>),
1530 /* 1039 */ SyscallDesc("lstat64", lstat64Func<ArmLinux64>),
1531 /* 1040 */ SyscallDesc("pipe", pipePseudoFunc),
1532 /* 1041 */ SyscallDesc("dup2", unimplementedFunc),
1533 /* 1042 */ SyscallDesc("epoll_create", unimplementedFunc),
1534 /* 1043 */ SyscallDesc("inotify_init", unimplementedFunc),
1535 /* 1044 */ SyscallDesc("eventfd", unimplementedFunc),
1536 /* 1045 */ SyscallDesc("signalfd", unimplementedFunc),
1537 /* 1046 */ SyscallDesc("sendfile", unimplementedFunc),
1538 /* 1047 */ SyscallDesc("ftruncate", ftruncateFunc),
1539 /* 1048 */ SyscallDesc("truncate", truncateFunc),
1540 /* 1049 */ SyscallDesc("stat", statFunc<ArmLinux64>),
1541 /* 1050 */ SyscallDesc("lstat", unimplementedFunc),
1542 /* 1051 */ SyscallDesc("fstat", fstatFunc<ArmLinux64>),
1543 /* 1052 */ SyscallDesc("fcntl", fcntlFunc),
1544 /* 1053 */ SyscallDesc("fadvise64", unimplementedFunc),
1545 /* 1054 */ SyscallDesc("newfstatat", unimplementedFunc),
1546 /* 1055 */ SyscallDesc("fstatfs", unimplementedFunc),
1547 /* 1056 */ SyscallDesc("statfs", unimplementedFunc),
1548 /* 1057 */ SyscallDesc("lseek", lseekFunc),
1549 /* 1058 */ SyscallDesc("mmap", mmapFunc<ArmLinux64>),
1550 /* 1059 */ SyscallDesc("alarm", unimplementedFunc),
1551 /* 1060 */ SyscallDesc("getpgrp", unimplementedFunc),
1552 /* 1061 */ SyscallDesc("pause", unimplementedFunc),
1553 /* 1062 */ SyscallDesc("time", timeFunc<ArmLinux64>),
1554 /* 1063 */ SyscallDesc("utime", unimplementedFunc),
1555 /* 1064 */ SyscallDesc("creat", unimplementedFunc),
1556 /* 1065 */ SyscallDesc("getdents", unimplementedFunc),
1557 /* 1066 */ SyscallDesc("futimesat", unimplementedFunc),
1558 /* 1067 */ SyscallDesc("select", unimplementedFunc),
1559 /* 1068 */ SyscallDesc("poll", unimplementedFunc),
1560 /* 1069 */ SyscallDesc("epoll_wait", unimplementedFunc),
1561 /* 1070 */ SyscallDesc("ustat", unimplementedFunc),
1562 /* 1071 */ SyscallDesc("vfork", unimplementedFunc),
1563 /* 1072 */ SyscallDesc("oldwait4", unimplementedFunc),
1564 /* 1073 */ SyscallDesc("recv", unimplementedFunc),
1565 /* 1074 */ SyscallDesc("send", unimplementedFunc),
1566 /* 1075 */ SyscallDesc("bdflush", unimplementedFunc),
1567 /* 1076 */ SyscallDesc("umount", unimplementedFunc),
1568 /* 1077 */ SyscallDesc("uselib", unimplementedFunc),
1569 /* 1078 */ SyscallDesc("_sysctl", unimplementedFunc),
1570 /* 1079 */ SyscallDesc("fork", unimplementedFunc)
1571};
1572
1573static SyscallDesc privSyscallDescs32[] = {
1574 /* 1 */ SyscallDesc("breakpoint", unimplementedFunc),
1575 /* 2 */ SyscallDesc("cacheflush", unimplementedFunc),
1576 /* 3 */ SyscallDesc("usr26", unimplementedFunc),
1577 /* 4 */ SyscallDesc("usr32", unimplementedFunc),
1578 /* 5 */ SyscallDesc("set_tls", setTLSFunc32)
1579};
1580
1581// Indices 1, 3 and 4 are unallocated.
1582static SyscallDesc privSyscallDescs64[] = {
1583 /* 1 */ SyscallDesc("unallocated", unimplementedFunc),
1584 /* 2 */ SyscallDesc("cacheflush", unimplementedFunc),
1585 /* 3 */ SyscallDesc("unallocated", unimplementedFunc),
1586 /* 4 */ SyscallDesc("unallocated", unimplementedFunc),
1587 /* 5 */ SyscallDesc("set_tls", setTLSFunc64)
1588};
1589
1590ArmLinuxProcess32::ArmLinuxProcess32(LiveProcessParams * params,
1591 ObjectFile *objFile, ObjectFile::Arch _arch)
1592 : ArmLiveProcess32(params, objFile, _arch)
1593{
1594 SyscallTable table;
1595
1596 table.descs = syscallDescs32;
1597 table.size = sizeof(syscallDescs32) / sizeof(SyscallDesc);
1598 table.base = 0;
1599 syscallTables.push_back(table);
1600 table.base = 0x900000;
1601 syscallTables.push_back(table);
1602
1603 table.descs = privSyscallDescs32;
1604 table.size = sizeof(privSyscallDescs32) / sizeof(SyscallDesc);
1605 table.base = 0xf0001;
1606 syscallTables.push_back(table);
1607}
1608
1609ArmLinuxProcess64::ArmLinuxProcess64(LiveProcessParams * params,
1610 ObjectFile *objFile, ObjectFile::Arch _arch)
1611 : ArmLiveProcess64(params, objFile, _arch)
1612{
1613 SyscallTable table;
1614
1615 table.descs = syscallDescs64;
1616 table.size = sizeof(syscallDescs64) / sizeof(SyscallDesc);
1617 table.base = 0;
1618 syscallTables.push_back(table);
1619 table.base = 0x900000;
1620 syscallTables.push_back(table);
1621
1622 table.descs = privSyscallDescs64;
1623 table.size = sizeof(privSyscallDescs64) / sizeof(SyscallDesc);
1624 table.base = 0x1001;
1625 syscallTables.push_back(table);
1626}
1627
1628const Addr ArmLinuxProcess32::commPage = 0xffff0000;
1629
1630SyscallDesc*
1631ArmLinuxProcessBits::getLinuxDesc(int callnum)
1632{
1633 // Angel SWI syscalls are unsupported in this release
1634 if (callnum == 0x123456)
1635 panic("Attempt to execute an ANGEL_SWI system call (newlib-related)");
1636 for (unsigned i = 0; i < syscallTables.size(); i++) {
1637 SyscallDesc *desc = syscallTables[i].getDesc(callnum);
1638 if (desc)
1639 return desc;
1640 }
1641 return NULL;
1642}
1643
1644SyscallDesc *
1645ArmLinuxProcessBits::SyscallTable::getDesc(int callnum) const
1646{
1647 int offset = callnum - base;
1648 if (offset < 0 || offset >= size)
1649 return NULL;
1650 return &descs[offset];
1651}
1652
1653SyscallDesc*
1654ArmLinuxProcess32::getDesc(int callnum)
1655{
1656 return getLinuxDesc(callnum);
1657}
1658
1659SyscallDesc*
1660ArmLinuxProcess64::getDesc(int callnum)
1661{
1662 return getLinuxDesc(callnum);
1663}
1664
1665void
1666ArmLinuxProcess32::initState()
1667{
1668 ArmLiveProcess32::initState();
1669 allocateMem(commPage, PageBytes);
1670 ThreadContext *tc = system->getThreadContext(contextIds[0]);
1671
1672 uint8_t swiNeg1[] = {
1673 0xff, 0xff, 0xff, 0xef // swi -1
1674 };
1675
1676 // Fill this page with swi -1 so we'll no if we land in it somewhere.
1677 for (Addr addr = 0; addr < PageBytes; addr += sizeof(swiNeg1)) {
1678 tc->getMemProxy().writeBlob(commPage + addr,
1679 swiNeg1, sizeof(swiNeg1));
1680 }
1681
1682 uint8_t memory_barrier[] =
1683 {
1684 0x5f, 0xf0, 0x7f, 0xf5, // dmb
1685 0x0e, 0xf0, 0xa0, 0xe1 // return
1686 };
1687 tc->getMemProxy().writeBlob(commPage + 0x0fa0, memory_barrier,
1688 sizeof(memory_barrier));
1689
1690 uint8_t cmpxchg[] =
1691 {
1692 0x9f, 0x3f, 0x92, 0xe1, // ldrex r3, [r2]
1693 0x00, 0x30, 0x53, 0xe0, // subs r3, r3, r0
1694 0x91, 0x3f, 0x82, 0x01, // strexeq r3, r1, [r2]
1695 0x01, 0x00, 0x33, 0x03, // teqeq r3, #1
1696 0xfa, 0xff, 0xff, 0x0a, // beq 1b
1697 0x00, 0x00, 0x73, 0xe2, // rsbs r0, r3, #0
1698 0x5f, 0xf0, 0x7f, 0xf5, // dmb
1699 0x0e, 0xf0, 0xa0, 0xe1 // return
1700 };
1701 tc->getMemProxy().writeBlob(commPage + 0x0fc0, cmpxchg, sizeof(cmpxchg));
1702
1703 uint8_t get_tls[] =
1704 {
1705 // read user read-only thread id register
1706 0x70, 0x0f, 0x1d, 0xee, // mrc p15, 0, r0, c13, c0, 3
1707 0x0e, 0xf0, 0xa0, 0xe1 // return
1708 };
1709 tc->getMemProxy().writeBlob(commPage + 0x0fe0, get_tls, sizeof(get_tls));
1710}
1711
1712void
1713ArmLinuxProcess64::initState()
1714{
1715 ArmLiveProcess64::initState();
1716 // The 64 bit equivalent of the comm page would be set up here.
1717}
570 /* 79 */ SyscallDesc("fstatat64", fstatat64Func<ArmLinux64>),
571 /* 80 */ SyscallDesc("fstat64", fstat64Func<ArmLinux64>),
572 /* 81 */ SyscallDesc("sync", unimplementedFunc),
573 /* 82 */ SyscallDesc("fsync", unimplementedFunc),
574 /* 83 */ SyscallDesc("fdatasync", unimplementedFunc),
575 /* 84 */ SyscallDesc("sync_file_range", unimplementedFunc),
576 /* 85 */ SyscallDesc("timerfd_create", unimplementedFunc),
577 /* 86 */ SyscallDesc("timerfd_settime", unimplementedFunc),
578 /* 87 */ SyscallDesc("timerfd_gettime", unimplementedFunc),
579 /* 88 */ SyscallDesc("utimensat", unimplementedFunc),
580 /* 89 */ SyscallDesc("acct", unimplementedFunc),
581 /* 90 */ SyscallDesc("capget", unimplementedFunc),
582 /* 91 */ SyscallDesc("capset", unimplementedFunc),
583 /* 92 */ SyscallDesc("personality", unimplementedFunc),
584 /* 93 */ SyscallDesc("exit", exitFunc),
585 /* 94 */ SyscallDesc("exit_group", exitGroupFunc),
586 /* 95 */ SyscallDesc("waitid", unimplementedFunc),
587 /* 96 */ SyscallDesc("set_tid_address", unimplementedFunc),
588 /* 97 */ SyscallDesc("unshare", unimplementedFunc),
589 /* 98 */ SyscallDesc("futex", unimplementedFunc),
590 /* 99 */ SyscallDesc("set_robust_list", unimplementedFunc),
591 /* 100 */ SyscallDesc("get_robust_list", unimplementedFunc),
592 /* 101 */ SyscallDesc("nanosleep", ignoreWarnOnceFunc),
593 /* 102 */ SyscallDesc("getitimer", unimplementedFunc),
594 /* 103 */ SyscallDesc("setitimer", unimplementedFunc),
595 /* 104 */ SyscallDesc("kexec_load", unimplementedFunc),
596 /* 105 */ SyscallDesc("init_module", unimplementedFunc),
597 /* 106 */ SyscallDesc("delete_module", unimplementedFunc),
598 /* 107 */ SyscallDesc("timer_create", unimplementedFunc),
599 /* 108 */ SyscallDesc("timer_gettime", unimplementedFunc),
600 /* 109 */ SyscallDesc("timer_getoverrun", unimplementedFunc),
601 /* 110 */ SyscallDesc("timer_settime", unimplementedFunc),
602 /* 111 */ SyscallDesc("timer_delete", unimplementedFunc),
603 /* 112 */ SyscallDesc("clock_settime", unimplementedFunc),
604 /* 113 */ SyscallDesc("clock_gettime", unimplementedFunc),
605 /* 114 */ SyscallDesc("clock_getres", unimplementedFunc),
606 /* 115 */ SyscallDesc("clock_nanosleep", unimplementedFunc),
607 /* 116 */ SyscallDesc("syslog", unimplementedFunc),
608 /* 117 */ SyscallDesc("ptrace", unimplementedFunc),
609 /* 118 */ SyscallDesc("sched_setparam", unimplementedFunc),
610 /* 119 */ SyscallDesc("sched_setscheduler", unimplementedFunc),
611 /* 120 */ SyscallDesc("sched_getscheduler", unimplementedFunc),
612 /* 121 */ SyscallDesc("sched_getparam", unimplementedFunc),
613 /* 122 */ SyscallDesc("sched_setaffinity", unimplementedFunc),
614 /* 123 */ SyscallDesc("sched_getaffinity", unimplementedFunc),
615 /* 124 */ SyscallDesc("sched_yield", unimplementedFunc),
616 /* 125 */ SyscallDesc("sched_get_priority_max", unimplementedFunc),
617 /* 126 */ SyscallDesc("sched_get_priority_min", unimplementedFunc),
618 /* 127 */ SyscallDesc("sched_rr_get_interval", unimplementedFunc),
619 /* 128 */ SyscallDesc("restart_syscall", unimplementedFunc),
620 /* 129 */ SyscallDesc("kill", ignoreFunc),
621 /* 130 */ SyscallDesc("tkill", unimplementedFunc),
622 /* 131 */ SyscallDesc("tgkill", unimplementedFunc),
623 /* 132 */ SyscallDesc("sigaltstack", unimplementedFunc),
624 /* 133 */ SyscallDesc("rt_sigsuspend", unimplementedFunc),
625 /* 134 */ SyscallDesc("rt_sigaction", ignoreFunc),
626 /* 135 */ SyscallDesc("rt_sigprocmask", ignoreWarnOnceFunc),
627 /* 136 */ SyscallDesc("rt_sigpending", unimplementedFunc),
628 /* 137 */ SyscallDesc("rt_sigtimedwait", unimplementedFunc),
629 /* 138 */ SyscallDesc("rt_sigqueueinfo", ignoreFunc),
630 /* 139 */ SyscallDesc("rt_sigreturn", unimplementedFunc),
631 /* 140 */ SyscallDesc("setpriority", unimplementedFunc),
632 /* 141 */ SyscallDesc("getpriority", unimplementedFunc),
633 /* 142 */ SyscallDesc("reboot", unimplementedFunc),
634 /* 143 */ SyscallDesc("setregid", unimplementedFunc),
635 /* 144 */ SyscallDesc("setgid", unimplementedFunc),
636 /* 145 */ SyscallDesc("setreuid", unimplementedFunc),
637 /* 146 */ SyscallDesc("setuid", unimplementedFunc),
638 /* 147 */ SyscallDesc("setresuid", unimplementedFunc),
639 /* 148 */ SyscallDesc("getresuid", unimplementedFunc),
640 /* 149 */ SyscallDesc("setresgid", unimplementedFunc),
641 /* 150 */ SyscallDesc("getresgid", unimplementedFunc),
642 /* 151 */ SyscallDesc("setfsuid", unimplementedFunc),
643 /* 152 */ SyscallDesc("setfsgid", unimplementedFunc),
644 /* 153 */ SyscallDesc("times", timesFunc<ArmLinux64>),
645 /* 154 */ SyscallDesc("setpgid", unimplementedFunc),
646 /* 155 */ SyscallDesc("getpgid", unimplementedFunc),
647 /* 156 */ SyscallDesc("getsid", unimplementedFunc),
648 /* 157 */ SyscallDesc("setsid", unimplementedFunc),
649 /* 158 */ SyscallDesc("getgroups", unimplementedFunc),
650 /* 159 */ SyscallDesc("setgroups", unimplementedFunc),
651 /* 160 */ SyscallDesc("uname", unameFunc64),
652 /* 161 */ SyscallDesc("sethostname", ignoreFunc),
653 /* 162 */ SyscallDesc("setdomainname", unimplementedFunc),
654 /* 163 */ SyscallDesc("getrlimit", getrlimitFunc<ArmLinux64>),
655 /* 164 */ SyscallDesc("setrlimit", ignoreFunc),
656 /* 165 */ SyscallDesc("getrusage", getrusageFunc<ArmLinux64>),
657 /* 166 */ SyscallDesc("umask", unimplementedFunc),
658 /* 167 */ SyscallDesc("prctl", unimplementedFunc),
659 /* 168 */ SyscallDesc("getcpu", unimplementedFunc),
660 /* 169 */ SyscallDesc("gettimeofday", gettimeofdayFunc<ArmLinux64>),
661 /* 170 */ SyscallDesc("settimeofday", unimplementedFunc),
662 /* 171 */ SyscallDesc("adjtimex", unimplementedFunc),
663 /* 172 */ SyscallDesc("getpid", getpidFunc),
664 /* 173 */ SyscallDesc("getppid", getppidFunc),
665 /* 174 */ SyscallDesc("getuid", getuidFunc),
666 /* 175 */ SyscallDesc("geteuid", geteuidFunc),
667 /* 176 */ SyscallDesc("getgid", getgidFunc),
668 /* 177 */ SyscallDesc("getegid", getegidFunc),
669 /* 178 */ SyscallDesc("gettid", unimplementedFunc),
670 /* 179 */ SyscallDesc("sysinfo", sysinfoFunc<ArmLinux64>),
671 /* 180 */ SyscallDesc("mq_open", unimplementedFunc),
672 /* 181 */ SyscallDesc("mq_unlink", unimplementedFunc),
673 /* 182 */ SyscallDesc("mq_timedsend", unimplementedFunc),
674 /* 183 */ SyscallDesc("mq_timedreceive", unimplementedFunc),
675 /* 184 */ SyscallDesc("mq_notify", unimplementedFunc),
676 /* 185 */ SyscallDesc("mq_getsetattr", unimplementedFunc),
677 /* 186 */ SyscallDesc("msgget", unimplementedFunc),
678 /* 187 */ SyscallDesc("msgctl", unimplementedFunc),
679 /* 188 */ SyscallDesc("msgrcv", unimplementedFunc),
680 /* 189 */ SyscallDesc("msgsnd", unimplementedFunc),
681 /* 190 */ SyscallDesc("semget", unimplementedFunc),
682 /* 191 */ SyscallDesc("semctl", unimplementedFunc),
683 /* 192 */ SyscallDesc("semtimedop", unimplementedFunc),
684 /* 193 */ SyscallDesc("semop", unimplementedFunc),
685 /* 194 */ SyscallDesc("shmget", unimplementedFunc),
686 /* 195 */ SyscallDesc("shmctl", unimplementedFunc),
687 /* 196 */ SyscallDesc("shmat", unimplementedFunc),
688 /* 197 */ SyscallDesc("shmdt", unimplementedFunc),
689 /* 198 */ SyscallDesc("socket", unimplementedFunc),
690 /* 199 */ SyscallDesc("socketpair", unimplementedFunc),
691 /* 200 */ SyscallDesc("bind", unimplementedFunc),
692 /* 201 */ SyscallDesc("listen", unimplementedFunc),
693 /* 202 */ SyscallDesc("accept", unimplementedFunc),
694 /* 203 */ SyscallDesc("connect", unimplementedFunc),
695 /* 204 */ SyscallDesc("getsockname", unimplementedFunc),
696 /* 205 */ SyscallDesc("getpeername", unimplementedFunc),
697 /* 206 */ SyscallDesc("sendto", unimplementedFunc),
698 /* 207 */ SyscallDesc("recvfrom", unimplementedFunc),
699 /* 208 */ SyscallDesc("setsockopt", unimplementedFunc),
700 /* 209 */ SyscallDesc("getsockopt", unimplementedFunc),
701 /* 210 */ SyscallDesc("shutdown", unimplementedFunc),
702 /* 211 */ SyscallDesc("sendmsg", unimplementedFunc),
703 /* 212 */ SyscallDesc("recvmsg", unimplementedFunc),
704 /* 213 */ SyscallDesc("readahead", unimplementedFunc),
705 /* 214 */ SyscallDesc("brk", brkFunc),
706 /* 215 */ SyscallDesc("munmap", munmapFunc),
707 /* 216 */ SyscallDesc("mremap", mremapFunc<ArmLinux64>),
708 /* 217 */ SyscallDesc("add_key", unimplementedFunc),
709 /* 218 */ SyscallDesc("request_key", unimplementedFunc),
710 /* 219 */ SyscallDesc("keyctl", unimplementedFunc),
711 /* 220 */ SyscallDesc("clone", unimplementedFunc),
712 /* 221 */ SyscallDesc("execve", unimplementedFunc),
713 /* 222 */ SyscallDesc("mmap2", mmapFunc<ArmLinux64>),
714 /* 223 */ SyscallDesc("fadvise64_64", unimplementedFunc),
715 /* 224 */ SyscallDesc("swapon", unimplementedFunc),
716 /* 225 */ SyscallDesc("swapoff", unimplementedFunc),
717 /* 226 */ SyscallDesc("mprotect", ignoreFunc),
718 /* 227 */ SyscallDesc("msync", unimplementedFunc),
719 /* 228 */ SyscallDesc("mlock", unimplementedFunc),
720 /* 229 */ SyscallDesc("munlock", unimplementedFunc),
721 /* 230 */ SyscallDesc("mlockall", unimplementedFunc),
722 /* 231 */ SyscallDesc("munlockall", unimplementedFunc),
723 /* 232 */ SyscallDesc("mincore", unimplementedFunc),
724 /* 233 */ SyscallDesc("madvise", unimplementedFunc),
725 /* 234 */ SyscallDesc("remap_file_pages", unimplementedFunc),
726 /* 235 */ SyscallDesc("mbind", unimplementedFunc),
727 /* 236 */ SyscallDesc("get_mempolicy", unimplementedFunc),
728 /* 237 */ SyscallDesc("set_mempolicy", unimplementedFunc),
729 /* 238 */ SyscallDesc("migrate_pages", unimplementedFunc),
730 /* 239 */ SyscallDesc("move_pages", unimplementedFunc),
731 /* 240 */ SyscallDesc("rt_tgsigqueueinfo", unimplementedFunc),
732 /* 241 */ SyscallDesc("perf_event_open", unimplementedFunc),
733 /* 242 */ SyscallDesc("accept4", unimplementedFunc),
734 /* 243 */ SyscallDesc("recvmmsg", unimplementedFunc),
735 /* 244 */ SyscallDesc("unused#244", unimplementedFunc),
736 /* 245 */ SyscallDesc("unused#245", unimplementedFunc),
737 /* 246 */ SyscallDesc("unused#246", unimplementedFunc),
738 /* 247 */ SyscallDesc("unused#247", unimplementedFunc),
739 /* 248 */ SyscallDesc("unused#248", unimplementedFunc),
740 /* 249 */ SyscallDesc("unused#249", unimplementedFunc),
741 /* 250 */ SyscallDesc("unused#250", unimplementedFunc),
742 /* 251 */ SyscallDesc("unused#251", unimplementedFunc),
743 /* 252 */ SyscallDesc("unused#252", unimplementedFunc),
744 /* 253 */ SyscallDesc("unused#253", unimplementedFunc),
745 /* 254 */ SyscallDesc("unused#254", unimplementedFunc),
746 /* 255 */ SyscallDesc("unused#255", unimplementedFunc),
747 /* 256 */ SyscallDesc("unused#256", unimplementedFunc),
748 /* 257 */ SyscallDesc("unused#257", unimplementedFunc),
749 /* 258 */ SyscallDesc("unused#258", unimplementedFunc),
750 /* 259 */ SyscallDesc("unused#259", unimplementedFunc),
751 /* 260 */ SyscallDesc("wait4", unimplementedFunc),
752 /* 261 */ SyscallDesc("prlimit64", unimplementedFunc),
753 /* 262 */ SyscallDesc("fanotify_init", unimplementedFunc),
754 /* 263 */ SyscallDesc("fanotify_mark", unimplementedFunc),
755 /* 264 */ SyscallDesc("name_to_handle_at", unimplementedFunc),
756 /* 265 */ SyscallDesc("open_by_handle_at", unimplementedFunc),
757 /* 266 */ SyscallDesc("clock_adjtime", unimplementedFunc),
758 /* 267 */ SyscallDesc("syncfs", unimplementedFunc),
759 /* 268 */ SyscallDesc("setns", unimplementedFunc),
760 /* 269 */ SyscallDesc("sendmmsg", unimplementedFunc),
761 /* 270 */ SyscallDesc("process_vm_readv", unimplementedFunc),
762 /* 271 */ SyscallDesc("process_vm_writev", unimplementedFunc),
763 /* 272 */ SyscallDesc("unused#272", unimplementedFunc),
764 /* 273 */ SyscallDesc("unused#273", unimplementedFunc),
765 /* 274 */ SyscallDesc("unused#274", unimplementedFunc),
766 /* 275 */ SyscallDesc("unused#275", unimplementedFunc),
767 /* 276 */ SyscallDesc("unused#276", unimplementedFunc),
768 /* 277 */ SyscallDesc("unused#277", unimplementedFunc),
769 /* 278 */ SyscallDesc("unused#278", unimplementedFunc),
770 /* 279 */ SyscallDesc("unused#279", unimplementedFunc),
771 /* 280 */ SyscallDesc("unused#280", unimplementedFunc),
772 /* 281 */ SyscallDesc("unused#281", unimplementedFunc),
773 /* 282 */ SyscallDesc("unused#282", unimplementedFunc),
774 /* 283 */ SyscallDesc("unused#283", unimplementedFunc),
775 /* 284 */ SyscallDesc("unused#284", unimplementedFunc),
776 /* 285 */ SyscallDesc("unused#285", unimplementedFunc),
777 /* 286 */ SyscallDesc("unused#286", unimplementedFunc),
778 /* 287 */ SyscallDesc("unused#287", unimplementedFunc),
779 /* 288 */ SyscallDesc("unused#288", unimplementedFunc),
780 /* 289 */ SyscallDesc("unused#289", unimplementedFunc),
781 /* 290 */ SyscallDesc("unused#290", unimplementedFunc),
782 /* 291 */ SyscallDesc("unused#291", unimplementedFunc),
783 /* 292 */ SyscallDesc("unused#292", unimplementedFunc),
784 /* 293 */ SyscallDesc("unused#293", unimplementedFunc),
785 /* 294 */ SyscallDesc("unused#294", unimplementedFunc),
786 /* 295 */ SyscallDesc("unused#295", unimplementedFunc),
787 /* 296 */ SyscallDesc("unused#296", unimplementedFunc),
788 /* 297 */ SyscallDesc("unused#297", unimplementedFunc),
789 /* 298 */ SyscallDesc("unused#298", unimplementedFunc),
790 /* 299 */ SyscallDesc("unused#299", unimplementedFunc),
791 /* 300 */ SyscallDesc("unused#300", unimplementedFunc),
792 /* 301 */ SyscallDesc("unused#301", unimplementedFunc),
793 /* 302 */ SyscallDesc("unused#302", unimplementedFunc),
794 /* 303 */ SyscallDesc("unused#303", unimplementedFunc),
795 /* 304 */ SyscallDesc("unused#304", unimplementedFunc),
796 /* 305 */ SyscallDesc("unused#305", unimplementedFunc),
797 /* 306 */ SyscallDesc("unused#306", unimplementedFunc),
798 /* 307 */ SyscallDesc("unused#307", unimplementedFunc),
799 /* 308 */ SyscallDesc("unused#308", unimplementedFunc),
800 /* 309 */ SyscallDesc("unused#309", unimplementedFunc),
801 /* 310 */ SyscallDesc("unused#310", unimplementedFunc),
802 /* 311 */ SyscallDesc("unused#311", unimplementedFunc),
803 /* 312 */ SyscallDesc("unused#312", unimplementedFunc),
804 /* 313 */ SyscallDesc("unused#313", unimplementedFunc),
805 /* 314 */ SyscallDesc("unused#314", unimplementedFunc),
806 /* 315 */ SyscallDesc("unused#315", unimplementedFunc),
807 /* 316 */ SyscallDesc("unused#316", unimplementedFunc),
808 /* 317 */ SyscallDesc("unused#317", unimplementedFunc),
809 /* 318 */ SyscallDesc("unused#318", unimplementedFunc),
810 /* 319 */ SyscallDesc("unused#319", unimplementedFunc),
811 /* 320 */ SyscallDesc("unused#320", unimplementedFunc),
812 /* 321 */ SyscallDesc("unused#321", unimplementedFunc),
813 /* 322 */ SyscallDesc("unused#322", unimplementedFunc),
814 /* 323 */ SyscallDesc("unused#323", unimplementedFunc),
815 /* 324 */ SyscallDesc("unused#324", unimplementedFunc),
816 /* 325 */ SyscallDesc("unused#325", unimplementedFunc),
817 /* 326 */ SyscallDesc("unused#326", unimplementedFunc),
818 /* 327 */ SyscallDesc("unused#327", unimplementedFunc),
819 /* 328 */ SyscallDesc("unused#328", unimplementedFunc),
820 /* 329 */ SyscallDesc("unused#329", unimplementedFunc),
821 /* 330 */ SyscallDesc("unused#330", unimplementedFunc),
822 /* 331 */ SyscallDesc("unused#331", unimplementedFunc),
823 /* 332 */ SyscallDesc("unused#332", unimplementedFunc),
824 /* 333 */ SyscallDesc("unused#333", unimplementedFunc),
825 /* 334 */ SyscallDesc("unused#334", unimplementedFunc),
826 /* 335 */ SyscallDesc("unused#335", unimplementedFunc),
827 /* 336 */ SyscallDesc("unused#336", unimplementedFunc),
828 /* 337 */ SyscallDesc("unused#337", unimplementedFunc),
829 /* 338 */ SyscallDesc("unused#338", unimplementedFunc),
830 /* 339 */ SyscallDesc("unused#339", unimplementedFunc),
831 /* 340 */ SyscallDesc("unused#340", unimplementedFunc),
832 /* 341 */ SyscallDesc("unused#341", unimplementedFunc),
833 /* 342 */ SyscallDesc("unused#342", unimplementedFunc),
834 /* 343 */ SyscallDesc("unused#343", unimplementedFunc),
835 /* 344 */ SyscallDesc("unused#344", unimplementedFunc),
836 /* 345 */ SyscallDesc("unused#345", unimplementedFunc),
837 /* 346 */ SyscallDesc("unused#346", unimplementedFunc),
838 /* 347 */ SyscallDesc("unused#347", unimplementedFunc),
839 /* 348 */ SyscallDesc("unused#348", unimplementedFunc),
840 /* 349 */ SyscallDesc("unused#349", unimplementedFunc),
841 /* 350 */ SyscallDesc("unused#350", unimplementedFunc),
842 /* 351 */ SyscallDesc("unused#351", unimplementedFunc),
843 /* 352 */ SyscallDesc("unused#352", unimplementedFunc),
844 /* 353 */ SyscallDesc("unused#353", unimplementedFunc),
845 /* 354 */ SyscallDesc("unused#354", unimplementedFunc),
846 /* 355 */ SyscallDesc("unused#355", unimplementedFunc),
847 /* 356 */ SyscallDesc("unused#356", unimplementedFunc),
848 /* 357 */ SyscallDesc("unused#357", unimplementedFunc),
849 /* 358 */ SyscallDesc("unused#358", unimplementedFunc),
850 /* 359 */ SyscallDesc("unused#359", unimplementedFunc),
851 /* 360 */ SyscallDesc("unused#360", unimplementedFunc),
852 /* 361 */ SyscallDesc("unused#361", unimplementedFunc),
853 /* 362 */ SyscallDesc("unused#362", unimplementedFunc),
854 /* 363 */ SyscallDesc("unused#363", unimplementedFunc),
855 /* 364 */ SyscallDesc("unused#364", unimplementedFunc),
856 /* 365 */ SyscallDesc("unused#365", unimplementedFunc),
857 /* 366 */ SyscallDesc("unused#366", unimplementedFunc),
858 /* 367 */ SyscallDesc("unused#367", unimplementedFunc),
859 /* 368 */ SyscallDesc("unused#368", unimplementedFunc),
860 /* 369 */ SyscallDesc("unused#369", unimplementedFunc),
861 /* 370 */ SyscallDesc("unused#370", unimplementedFunc),
862 /* 371 */ SyscallDesc("unused#371", unimplementedFunc),
863 /* 372 */ SyscallDesc("unused#372", unimplementedFunc),
864 /* 373 */ SyscallDesc("unused#373", unimplementedFunc),
865 /* 374 */ SyscallDesc("unused#374", unimplementedFunc),
866 /* 375 */ SyscallDesc("unused#375", unimplementedFunc),
867 /* 376 */ SyscallDesc("unused#376", unimplementedFunc),
868 /* 377 */ SyscallDesc("unused#377", unimplementedFunc),
869 /* 378 */ SyscallDesc("unused#378", unimplementedFunc),
870 /* 379 */ SyscallDesc("unused#379", unimplementedFunc),
871 /* 380 */ SyscallDesc("unused#380", unimplementedFunc),
872 /* 381 */ SyscallDesc("unused#381", unimplementedFunc),
873 /* 382 */ SyscallDesc("unused#382", unimplementedFunc),
874 /* 383 */ SyscallDesc("unused#383", unimplementedFunc),
875 /* 384 */ SyscallDesc("unused#384", unimplementedFunc),
876 /* 385 */ SyscallDesc("unused#385", unimplementedFunc),
877 /* 386 */ SyscallDesc("unused#386", unimplementedFunc),
878 /* 387 */ SyscallDesc("unused#387", unimplementedFunc),
879 /* 388 */ SyscallDesc("unused#388", unimplementedFunc),
880 /* 389 */ SyscallDesc("unused#389", unimplementedFunc),
881 /* 390 */ SyscallDesc("unused#390", unimplementedFunc),
882 /* 391 */ SyscallDesc("unused#391", unimplementedFunc),
883 /* 392 */ SyscallDesc("unused#392", unimplementedFunc),
884 /* 393 */ SyscallDesc("unused#393", unimplementedFunc),
885 /* 394 */ SyscallDesc("unused#394", unimplementedFunc),
886 /* 395 */ SyscallDesc("unused#395", unimplementedFunc),
887 /* 396 */ SyscallDesc("unused#396", unimplementedFunc),
888 /* 397 */ SyscallDesc("unused#397", unimplementedFunc),
889 /* 398 */ SyscallDesc("unused#398", unimplementedFunc),
890 /* 399 */ SyscallDesc("unused#399", unimplementedFunc),
891 /* 400 */ SyscallDesc("unused#400", unimplementedFunc),
892 /* 401 */ SyscallDesc("unused#401", unimplementedFunc),
893 /* 402 */ SyscallDesc("unused#402", unimplementedFunc),
894 /* 403 */ SyscallDesc("unused#403", unimplementedFunc),
895 /* 404 */ SyscallDesc("unused#404", unimplementedFunc),
896 /* 405 */ SyscallDesc("unused#405", unimplementedFunc),
897 /* 406 */ SyscallDesc("unused#406", unimplementedFunc),
898 /* 407 */ SyscallDesc("unused#407", unimplementedFunc),
899 /* 408 */ SyscallDesc("unused#408", unimplementedFunc),
900 /* 409 */ SyscallDesc("unused#409", unimplementedFunc),
901 /* 410 */ SyscallDesc("unused#410", unimplementedFunc),
902 /* 411 */ SyscallDesc("unused#411", unimplementedFunc),
903 /* 412 */ SyscallDesc("unused#412", unimplementedFunc),
904 /* 413 */ SyscallDesc("unused#413", unimplementedFunc),
905 /* 414 */ SyscallDesc("unused#414", unimplementedFunc),
906 /* 415 */ SyscallDesc("unused#415", unimplementedFunc),
907 /* 416 */ SyscallDesc("unused#416", unimplementedFunc),
908 /* 417 */ SyscallDesc("unused#417", unimplementedFunc),
909 /* 418 */ SyscallDesc("unused#418", unimplementedFunc),
910 /* 419 */ SyscallDesc("unused#419", unimplementedFunc),
911 /* 420 */ SyscallDesc("unused#420", unimplementedFunc),
912 /* 421 */ SyscallDesc("unused#421", unimplementedFunc),
913 /* 422 */ SyscallDesc("unused#422", unimplementedFunc),
914 /* 423 */ SyscallDesc("unused#423", unimplementedFunc),
915 /* 424 */ SyscallDesc("unused#424", unimplementedFunc),
916 /* 425 */ SyscallDesc("unused#425", unimplementedFunc),
917 /* 426 */ SyscallDesc("unused#426", unimplementedFunc),
918 /* 427 */ SyscallDesc("unused#427", unimplementedFunc),
919 /* 428 */ SyscallDesc("unused#428", unimplementedFunc),
920 /* 429 */ SyscallDesc("unused#429", unimplementedFunc),
921 /* 430 */ SyscallDesc("unused#430", unimplementedFunc),
922 /* 431 */ SyscallDesc("unused#431", unimplementedFunc),
923 /* 432 */ SyscallDesc("unused#432", unimplementedFunc),
924 /* 433 */ SyscallDesc("unused#433", unimplementedFunc),
925 /* 434 */ SyscallDesc("unused#434", unimplementedFunc),
926 /* 435 */ SyscallDesc("unused#435", unimplementedFunc),
927 /* 436 */ SyscallDesc("unused#436", unimplementedFunc),
928 /* 437 */ SyscallDesc("unused#437", unimplementedFunc),
929 /* 438 */ SyscallDesc("unused#438", unimplementedFunc),
930 /* 439 */ SyscallDesc("unused#439", unimplementedFunc),
931 /* 440 */ SyscallDesc("unused#440", unimplementedFunc),
932 /* 441 */ SyscallDesc("unused#441", unimplementedFunc),
933 /* 442 */ SyscallDesc("unused#442", unimplementedFunc),
934 /* 443 */ SyscallDesc("unused#443", unimplementedFunc),
935 /* 444 */ SyscallDesc("unused#444", unimplementedFunc),
936 /* 445 */ SyscallDesc("unused#445", unimplementedFunc),
937 /* 446 */ SyscallDesc("unused#446", unimplementedFunc),
938 /* 447 */ SyscallDesc("unused#447", unimplementedFunc),
939 /* 448 */ SyscallDesc("unused#448", unimplementedFunc),
940 /* 449 */ SyscallDesc("unused#449", unimplementedFunc),
941 /* 450 */ SyscallDesc("unused#450", unimplementedFunc),
942 /* 451 */ SyscallDesc("unused#451", unimplementedFunc),
943 /* 452 */ SyscallDesc("unused#452", unimplementedFunc),
944 /* 453 */ SyscallDesc("unused#453", unimplementedFunc),
945 /* 454 */ SyscallDesc("unused#454", unimplementedFunc),
946 /* 455 */ SyscallDesc("unused#455", unimplementedFunc),
947 /* 456 */ SyscallDesc("unused#456", unimplementedFunc),
948 /* 457 */ SyscallDesc("unused#457", unimplementedFunc),
949 /* 458 */ SyscallDesc("unused#458", unimplementedFunc),
950 /* 459 */ SyscallDesc("unused#459", unimplementedFunc),
951 /* 460 */ SyscallDesc("unused#460", unimplementedFunc),
952 /* 461 */ SyscallDesc("unused#461", unimplementedFunc),
953 /* 462 */ SyscallDesc("unused#462", unimplementedFunc),
954 /* 463 */ SyscallDesc("unused#463", unimplementedFunc),
955 /* 464 */ SyscallDesc("unused#464", unimplementedFunc),
956 /* 465 */ SyscallDesc("unused#465", unimplementedFunc),
957 /* 466 */ SyscallDesc("unused#466", unimplementedFunc),
958 /* 467 */ SyscallDesc("unused#467", unimplementedFunc),
959 /* 468 */ SyscallDesc("unused#468", unimplementedFunc),
960 /* 469 */ SyscallDesc("unused#469", unimplementedFunc),
961 /* 470 */ SyscallDesc("unused#470", unimplementedFunc),
962 /* 471 */ SyscallDesc("unused#471", unimplementedFunc),
963 /* 472 */ SyscallDesc("unused#472", unimplementedFunc),
964 /* 473 */ SyscallDesc("unused#473", unimplementedFunc),
965 /* 474 */ SyscallDesc("unused#474", unimplementedFunc),
966 /* 475 */ SyscallDesc("unused#475", unimplementedFunc),
967 /* 476 */ SyscallDesc("unused#476", unimplementedFunc),
968 /* 477 */ SyscallDesc("unused#477", unimplementedFunc),
969 /* 478 */ SyscallDesc("unused#478", unimplementedFunc),
970 /* 479 */ SyscallDesc("unused#479", unimplementedFunc),
971 /* 480 */ SyscallDesc("unused#480", unimplementedFunc),
972 /* 481 */ SyscallDesc("unused#481", unimplementedFunc),
973 /* 482 */ SyscallDesc("unused#482", unimplementedFunc),
974 /* 483 */ SyscallDesc("unused#483", unimplementedFunc),
975 /* 484 */ SyscallDesc("unused#484", unimplementedFunc),
976 /* 485 */ SyscallDesc("unused#485", unimplementedFunc),
977 /* 486 */ SyscallDesc("unused#486", unimplementedFunc),
978 /* 487 */ SyscallDesc("unused#487", unimplementedFunc),
979 /* 488 */ SyscallDesc("unused#488", unimplementedFunc),
980 /* 489 */ SyscallDesc("unused#489", unimplementedFunc),
981 /* 490 */ SyscallDesc("unused#490", unimplementedFunc),
982 /* 491 */ SyscallDesc("unused#491", unimplementedFunc),
983 /* 492 */ SyscallDesc("unused#492", unimplementedFunc),
984 /* 493 */ SyscallDesc("unused#493", unimplementedFunc),
985 /* 494 */ SyscallDesc("unused#494", unimplementedFunc),
986 /* 495 */ SyscallDesc("unused#495", unimplementedFunc),
987 /* 496 */ SyscallDesc("unused#496", unimplementedFunc),
988 /* 497 */ SyscallDesc("unused#497", unimplementedFunc),
989 /* 498 */ SyscallDesc("unused#498", unimplementedFunc),
990 /* 499 */ SyscallDesc("unused#499", unimplementedFunc),
991 /* 500 */ SyscallDesc("unused#500", unimplementedFunc),
992 /* 501 */ SyscallDesc("unused#501", unimplementedFunc),
993 /* 502 */ SyscallDesc("unused#502", unimplementedFunc),
994 /* 503 */ SyscallDesc("unused#503", unimplementedFunc),
995 /* 504 */ SyscallDesc("unused#504", unimplementedFunc),
996 /* 505 */ SyscallDesc("unused#505", unimplementedFunc),
997 /* 506 */ SyscallDesc("unused#506", unimplementedFunc),
998 /* 507 */ SyscallDesc("unused#507", unimplementedFunc),
999 /* 508 */ SyscallDesc("unused#508", unimplementedFunc),
1000 /* 509 */ SyscallDesc("unused#509", unimplementedFunc),
1001 /* 510 */ SyscallDesc("unused#510", unimplementedFunc),
1002 /* 511 */ SyscallDesc("unused#511", unimplementedFunc),
1003 /* 512 */ SyscallDesc("unused#512", unimplementedFunc),
1004 /* 513 */ SyscallDesc("unused#513", unimplementedFunc),
1005 /* 514 */ SyscallDesc("unused#514", unimplementedFunc),
1006 /* 515 */ SyscallDesc("unused#515", unimplementedFunc),
1007 /* 516 */ SyscallDesc("unused#516", unimplementedFunc),
1008 /* 517 */ SyscallDesc("unused#517", unimplementedFunc),
1009 /* 518 */ SyscallDesc("unused#518", unimplementedFunc),
1010 /* 519 */ SyscallDesc("unused#519", unimplementedFunc),
1011 /* 520 */ SyscallDesc("unused#520", unimplementedFunc),
1012 /* 521 */ SyscallDesc("unused#521", unimplementedFunc),
1013 /* 522 */ SyscallDesc("unused#522", unimplementedFunc),
1014 /* 523 */ SyscallDesc("unused#523", unimplementedFunc),
1015 /* 524 */ SyscallDesc("unused#524", unimplementedFunc),
1016 /* 525 */ SyscallDesc("unused#525", unimplementedFunc),
1017 /* 526 */ SyscallDesc("unused#526", unimplementedFunc),
1018 /* 527 */ SyscallDesc("unused#527", unimplementedFunc),
1019 /* 528 */ SyscallDesc("unused#528", unimplementedFunc),
1020 /* 529 */ SyscallDesc("unused#529", unimplementedFunc),
1021 /* 530 */ SyscallDesc("unused#530", unimplementedFunc),
1022 /* 531 */ SyscallDesc("unused#531", unimplementedFunc),
1023 /* 532 */ SyscallDesc("unused#532", unimplementedFunc),
1024 /* 533 */ SyscallDesc("unused#533", unimplementedFunc),
1025 /* 534 */ SyscallDesc("unused#534", unimplementedFunc),
1026 /* 535 */ SyscallDesc("unused#535", unimplementedFunc),
1027 /* 536 */ SyscallDesc("unused#536", unimplementedFunc),
1028 /* 537 */ SyscallDesc("unused#537", unimplementedFunc),
1029 /* 538 */ SyscallDesc("unused#538", unimplementedFunc),
1030 /* 539 */ SyscallDesc("unused#539", unimplementedFunc),
1031 /* 540 */ SyscallDesc("unused#540", unimplementedFunc),
1032 /* 541 */ SyscallDesc("unused#541", unimplementedFunc),
1033 /* 542 */ SyscallDesc("unused#542", unimplementedFunc),
1034 /* 543 */ SyscallDesc("unused#543", unimplementedFunc),
1035 /* 544 */ SyscallDesc("unused#544", unimplementedFunc),
1036 /* 545 */ SyscallDesc("unused#545", unimplementedFunc),
1037 /* 546 */ SyscallDesc("unused#546", unimplementedFunc),
1038 /* 547 */ SyscallDesc("unused#547", unimplementedFunc),
1039 /* 548 */ SyscallDesc("unused#548", unimplementedFunc),
1040 /* 549 */ SyscallDesc("unused#549", unimplementedFunc),
1041 /* 550 */ SyscallDesc("unused#550", unimplementedFunc),
1042 /* 551 */ SyscallDesc("unused#551", unimplementedFunc),
1043 /* 552 */ SyscallDesc("unused#552", unimplementedFunc),
1044 /* 553 */ SyscallDesc("unused#553", unimplementedFunc),
1045 /* 554 */ SyscallDesc("unused#554", unimplementedFunc),
1046 /* 555 */ SyscallDesc("unused#555", unimplementedFunc),
1047 /* 556 */ SyscallDesc("unused#556", unimplementedFunc),
1048 /* 557 */ SyscallDesc("unused#557", unimplementedFunc),
1049 /* 558 */ SyscallDesc("unused#558", unimplementedFunc),
1050 /* 559 */ SyscallDesc("unused#559", unimplementedFunc),
1051 /* 560 */ SyscallDesc("unused#560", unimplementedFunc),
1052 /* 561 */ SyscallDesc("unused#561", unimplementedFunc),
1053 /* 562 */ SyscallDesc("unused#562", unimplementedFunc),
1054 /* 563 */ SyscallDesc("unused#563", unimplementedFunc),
1055 /* 564 */ SyscallDesc("unused#564", unimplementedFunc),
1056 /* 565 */ SyscallDesc("unused#565", unimplementedFunc),
1057 /* 566 */ SyscallDesc("unused#566", unimplementedFunc),
1058 /* 567 */ SyscallDesc("unused#567", unimplementedFunc),
1059 /* 568 */ SyscallDesc("unused#568", unimplementedFunc),
1060 /* 569 */ SyscallDesc("unused#569", unimplementedFunc),
1061 /* 570 */ SyscallDesc("unused#570", unimplementedFunc),
1062 /* 571 */ SyscallDesc("unused#571", unimplementedFunc),
1063 /* 572 */ SyscallDesc("unused#572", unimplementedFunc),
1064 /* 573 */ SyscallDesc("unused#573", unimplementedFunc),
1065 /* 574 */ SyscallDesc("unused#574", unimplementedFunc),
1066 /* 575 */ SyscallDesc("unused#575", unimplementedFunc),
1067 /* 576 */ SyscallDesc("unused#576", unimplementedFunc),
1068 /* 577 */ SyscallDesc("unused#577", unimplementedFunc),
1069 /* 578 */ SyscallDesc("unused#578", unimplementedFunc),
1070 /* 579 */ SyscallDesc("unused#579", unimplementedFunc),
1071 /* 580 */ SyscallDesc("unused#580", unimplementedFunc),
1072 /* 581 */ SyscallDesc("unused#581", unimplementedFunc),
1073 /* 582 */ SyscallDesc("unused#582", unimplementedFunc),
1074 /* 583 */ SyscallDesc("unused#583", unimplementedFunc),
1075 /* 584 */ SyscallDesc("unused#584", unimplementedFunc),
1076 /* 585 */ SyscallDesc("unused#585", unimplementedFunc),
1077 /* 586 */ SyscallDesc("unused#586", unimplementedFunc),
1078 /* 587 */ SyscallDesc("unused#587", unimplementedFunc),
1079 /* 588 */ SyscallDesc("unused#588", unimplementedFunc),
1080 /* 589 */ SyscallDesc("unused#589", unimplementedFunc),
1081 /* 590 */ SyscallDesc("unused#590", unimplementedFunc),
1082 /* 591 */ SyscallDesc("unused#591", unimplementedFunc),
1083 /* 592 */ SyscallDesc("unused#592", unimplementedFunc),
1084 /* 593 */ SyscallDesc("unused#593", unimplementedFunc),
1085 /* 594 */ SyscallDesc("unused#594", unimplementedFunc),
1086 /* 595 */ SyscallDesc("unused#595", unimplementedFunc),
1087 /* 596 */ SyscallDesc("unused#596", unimplementedFunc),
1088 /* 597 */ SyscallDesc("unused#597", unimplementedFunc),
1089 /* 598 */ SyscallDesc("unused#598", unimplementedFunc),
1090 /* 599 */ SyscallDesc("unused#599", unimplementedFunc),
1091 /* 600 */ SyscallDesc("unused#600", unimplementedFunc),
1092 /* 601 */ SyscallDesc("unused#601", unimplementedFunc),
1093 /* 602 */ SyscallDesc("unused#602", unimplementedFunc),
1094 /* 603 */ SyscallDesc("unused#603", unimplementedFunc),
1095 /* 604 */ SyscallDesc("unused#604", unimplementedFunc),
1096 /* 605 */ SyscallDesc("unused#605", unimplementedFunc),
1097 /* 606 */ SyscallDesc("unused#606", unimplementedFunc),
1098 /* 607 */ SyscallDesc("unused#607", unimplementedFunc),
1099 /* 608 */ SyscallDesc("unused#608", unimplementedFunc),
1100 /* 609 */ SyscallDesc("unused#609", unimplementedFunc),
1101 /* 610 */ SyscallDesc("unused#610", unimplementedFunc),
1102 /* 611 */ SyscallDesc("unused#611", unimplementedFunc),
1103 /* 612 */ SyscallDesc("unused#612", unimplementedFunc),
1104 /* 613 */ SyscallDesc("unused#613", unimplementedFunc),
1105 /* 614 */ SyscallDesc("unused#614", unimplementedFunc),
1106 /* 615 */ SyscallDesc("unused#615", unimplementedFunc),
1107 /* 616 */ SyscallDesc("unused#616", unimplementedFunc),
1108 /* 617 */ SyscallDesc("unused#617", unimplementedFunc),
1109 /* 618 */ SyscallDesc("unused#618", unimplementedFunc),
1110 /* 619 */ SyscallDesc("unused#619", unimplementedFunc),
1111 /* 620 */ SyscallDesc("unused#620", unimplementedFunc),
1112 /* 621 */ SyscallDesc("unused#621", unimplementedFunc),
1113 /* 622 */ SyscallDesc("unused#622", unimplementedFunc),
1114 /* 623 */ SyscallDesc("unused#623", unimplementedFunc),
1115 /* 624 */ SyscallDesc("unused#624", unimplementedFunc),
1116 /* 625 */ SyscallDesc("unused#625", unimplementedFunc),
1117 /* 626 */ SyscallDesc("unused#626", unimplementedFunc),
1118 /* 627 */ SyscallDesc("unused#627", unimplementedFunc),
1119 /* 628 */ SyscallDesc("unused#628", unimplementedFunc),
1120 /* 629 */ SyscallDesc("unused#629", unimplementedFunc),
1121 /* 630 */ SyscallDesc("unused#630", unimplementedFunc),
1122 /* 631 */ SyscallDesc("unused#631", unimplementedFunc),
1123 /* 632 */ SyscallDesc("unused#632", unimplementedFunc),
1124 /* 633 */ SyscallDesc("unused#633", unimplementedFunc),
1125 /* 634 */ SyscallDesc("unused#634", unimplementedFunc),
1126 /* 635 */ SyscallDesc("unused#635", unimplementedFunc),
1127 /* 636 */ SyscallDesc("unused#636", unimplementedFunc),
1128 /* 637 */ SyscallDesc("unused#637", unimplementedFunc),
1129 /* 638 */ SyscallDesc("unused#638", unimplementedFunc),
1130 /* 639 */ SyscallDesc("unused#639", unimplementedFunc),
1131 /* 640 */ SyscallDesc("unused#640", unimplementedFunc),
1132 /* 641 */ SyscallDesc("unused#641", unimplementedFunc),
1133 /* 642 */ SyscallDesc("unused#642", unimplementedFunc),
1134 /* 643 */ SyscallDesc("unused#643", unimplementedFunc),
1135 /* 644 */ SyscallDesc("unused#644", unimplementedFunc),
1136 /* 645 */ SyscallDesc("unused#645", unimplementedFunc),
1137 /* 646 */ SyscallDesc("unused#646", unimplementedFunc),
1138 /* 647 */ SyscallDesc("unused#647", unimplementedFunc),
1139 /* 648 */ SyscallDesc("unused#648", unimplementedFunc),
1140 /* 649 */ SyscallDesc("unused#649", unimplementedFunc),
1141 /* 650 */ SyscallDesc("unused#650", unimplementedFunc),
1142 /* 651 */ SyscallDesc("unused#651", unimplementedFunc),
1143 /* 652 */ SyscallDesc("unused#652", unimplementedFunc),
1144 /* 653 */ SyscallDesc("unused#653", unimplementedFunc),
1145 /* 654 */ SyscallDesc("unused#654", unimplementedFunc),
1146 /* 655 */ SyscallDesc("unused#655", unimplementedFunc),
1147 /* 656 */ SyscallDesc("unused#656", unimplementedFunc),
1148 /* 657 */ SyscallDesc("unused#657", unimplementedFunc),
1149 /* 658 */ SyscallDesc("unused#658", unimplementedFunc),
1150 /* 659 */ SyscallDesc("unused#659", unimplementedFunc),
1151 /* 660 */ SyscallDesc("unused#660", unimplementedFunc),
1152 /* 661 */ SyscallDesc("unused#661", unimplementedFunc),
1153 /* 662 */ SyscallDesc("unused#662", unimplementedFunc),
1154 /* 663 */ SyscallDesc("unused#663", unimplementedFunc),
1155 /* 664 */ SyscallDesc("unused#664", unimplementedFunc),
1156 /* 665 */ SyscallDesc("unused#665", unimplementedFunc),
1157 /* 666 */ SyscallDesc("unused#666", unimplementedFunc),
1158 /* 667 */ SyscallDesc("unused#667", unimplementedFunc),
1159 /* 668 */ SyscallDesc("unused#668", unimplementedFunc),
1160 /* 669 */ SyscallDesc("unused#669", unimplementedFunc),
1161 /* 670 */ SyscallDesc("unused#670", unimplementedFunc),
1162 /* 671 */ SyscallDesc("unused#671", unimplementedFunc),
1163 /* 672 */ SyscallDesc("unused#672", unimplementedFunc),
1164 /* 673 */ SyscallDesc("unused#673", unimplementedFunc),
1165 /* 674 */ SyscallDesc("unused#674", unimplementedFunc),
1166 /* 675 */ SyscallDesc("unused#675", unimplementedFunc),
1167 /* 676 */ SyscallDesc("unused#676", unimplementedFunc),
1168 /* 677 */ SyscallDesc("unused#677", unimplementedFunc),
1169 /* 678 */ SyscallDesc("unused#678", unimplementedFunc),
1170 /* 679 */ SyscallDesc("unused#679", unimplementedFunc),
1171 /* 680 */ SyscallDesc("unused#680", unimplementedFunc),
1172 /* 681 */ SyscallDesc("unused#681", unimplementedFunc),
1173 /* 682 */ SyscallDesc("unused#682", unimplementedFunc),
1174 /* 683 */ SyscallDesc("unused#683", unimplementedFunc),
1175 /* 684 */ SyscallDesc("unused#684", unimplementedFunc),
1176 /* 685 */ SyscallDesc("unused#685", unimplementedFunc),
1177 /* 686 */ SyscallDesc("unused#686", unimplementedFunc),
1178 /* 687 */ SyscallDesc("unused#687", unimplementedFunc),
1179 /* 688 */ SyscallDesc("unused#688", unimplementedFunc),
1180 /* 689 */ SyscallDesc("unused#689", unimplementedFunc),
1181 /* 690 */ SyscallDesc("unused#690", unimplementedFunc),
1182 /* 691 */ SyscallDesc("unused#691", unimplementedFunc),
1183 /* 692 */ SyscallDesc("unused#692", unimplementedFunc),
1184 /* 693 */ SyscallDesc("unused#693", unimplementedFunc),
1185 /* 694 */ SyscallDesc("unused#694", unimplementedFunc),
1186 /* 695 */ SyscallDesc("unused#695", unimplementedFunc),
1187 /* 696 */ SyscallDesc("unused#696", unimplementedFunc),
1188 /* 697 */ SyscallDesc("unused#697", unimplementedFunc),
1189 /* 698 */ SyscallDesc("unused#698", unimplementedFunc),
1190 /* 699 */ SyscallDesc("unused#699", unimplementedFunc),
1191 /* 700 */ SyscallDesc("unused#700", unimplementedFunc),
1192 /* 701 */ SyscallDesc("unused#701", unimplementedFunc),
1193 /* 702 */ SyscallDesc("unused#702", unimplementedFunc),
1194 /* 703 */ SyscallDesc("unused#703", unimplementedFunc),
1195 /* 704 */ SyscallDesc("unused#704", unimplementedFunc),
1196 /* 705 */ SyscallDesc("unused#705", unimplementedFunc),
1197 /* 706 */ SyscallDesc("unused#706", unimplementedFunc),
1198 /* 707 */ SyscallDesc("unused#707", unimplementedFunc),
1199 /* 708 */ SyscallDesc("unused#708", unimplementedFunc),
1200 /* 709 */ SyscallDesc("unused#709", unimplementedFunc),
1201 /* 710 */ SyscallDesc("unused#710", unimplementedFunc),
1202 /* 711 */ SyscallDesc("unused#711", unimplementedFunc),
1203 /* 712 */ SyscallDesc("unused#712", unimplementedFunc),
1204 /* 713 */ SyscallDesc("unused#713", unimplementedFunc),
1205 /* 714 */ SyscallDesc("unused#714", unimplementedFunc),
1206 /* 715 */ SyscallDesc("unused#715", unimplementedFunc),
1207 /* 716 */ SyscallDesc("unused#716", unimplementedFunc),
1208 /* 717 */ SyscallDesc("unused#717", unimplementedFunc),
1209 /* 718 */ SyscallDesc("unused#718", unimplementedFunc),
1210 /* 719 */ SyscallDesc("unused#719", unimplementedFunc),
1211 /* 720 */ SyscallDesc("unused#720", unimplementedFunc),
1212 /* 721 */ SyscallDesc("unused#721", unimplementedFunc),
1213 /* 722 */ SyscallDesc("unused#722", unimplementedFunc),
1214 /* 723 */ SyscallDesc("unused#723", unimplementedFunc),
1215 /* 724 */ SyscallDesc("unused#724", unimplementedFunc),
1216 /* 725 */ SyscallDesc("unused#725", unimplementedFunc),
1217 /* 726 */ SyscallDesc("unused#726", unimplementedFunc),
1218 /* 727 */ SyscallDesc("unused#727", unimplementedFunc),
1219 /* 728 */ SyscallDesc("unused#728", unimplementedFunc),
1220 /* 729 */ SyscallDesc("unused#729", unimplementedFunc),
1221 /* 730 */ SyscallDesc("unused#730", unimplementedFunc),
1222 /* 731 */ SyscallDesc("unused#731", unimplementedFunc),
1223 /* 732 */ SyscallDesc("unused#732", unimplementedFunc),
1224 /* 733 */ SyscallDesc("unused#733", unimplementedFunc),
1225 /* 734 */ SyscallDesc("unused#734", unimplementedFunc),
1226 /* 735 */ SyscallDesc("unused#735", unimplementedFunc),
1227 /* 736 */ SyscallDesc("unused#736", unimplementedFunc),
1228 /* 737 */ SyscallDesc("unused#737", unimplementedFunc),
1229 /* 738 */ SyscallDesc("unused#738", unimplementedFunc),
1230 /* 739 */ SyscallDesc("unused#739", unimplementedFunc),
1231 /* 740 */ SyscallDesc("unused#740", unimplementedFunc),
1232 /* 741 */ SyscallDesc("unused#741", unimplementedFunc),
1233 /* 742 */ SyscallDesc("unused#742", unimplementedFunc),
1234 /* 743 */ SyscallDesc("unused#743", unimplementedFunc),
1235 /* 744 */ SyscallDesc("unused#744", unimplementedFunc),
1236 /* 745 */ SyscallDesc("unused#745", unimplementedFunc),
1237 /* 746 */ SyscallDesc("unused#746", unimplementedFunc),
1238 /* 747 */ SyscallDesc("unused#747", unimplementedFunc),
1239 /* 748 */ SyscallDesc("unused#748", unimplementedFunc),
1240 /* 749 */ SyscallDesc("unused#749", unimplementedFunc),
1241 /* 750 */ SyscallDesc("unused#750", unimplementedFunc),
1242 /* 751 */ SyscallDesc("unused#751", unimplementedFunc),
1243 /* 752 */ SyscallDesc("unused#752", unimplementedFunc),
1244 /* 753 */ SyscallDesc("unused#753", unimplementedFunc),
1245 /* 754 */ SyscallDesc("unused#754", unimplementedFunc),
1246 /* 755 */ SyscallDesc("unused#755", unimplementedFunc),
1247 /* 756 */ SyscallDesc("unused#756", unimplementedFunc),
1248 /* 757 */ SyscallDesc("unused#757", unimplementedFunc),
1249 /* 758 */ SyscallDesc("unused#758", unimplementedFunc),
1250 /* 759 */ SyscallDesc("unused#759", unimplementedFunc),
1251 /* 760 */ SyscallDesc("unused#760", unimplementedFunc),
1252 /* 761 */ SyscallDesc("unused#761", unimplementedFunc),
1253 /* 762 */ SyscallDesc("unused#762", unimplementedFunc),
1254 /* 763 */ SyscallDesc("unused#763", unimplementedFunc),
1255 /* 764 */ SyscallDesc("unused#764", unimplementedFunc),
1256 /* 765 */ SyscallDesc("unused#765", unimplementedFunc),
1257 /* 766 */ SyscallDesc("unused#766", unimplementedFunc),
1258 /* 767 */ SyscallDesc("unused#767", unimplementedFunc),
1259 /* 768 */ SyscallDesc("unused#768", unimplementedFunc),
1260 /* 769 */ SyscallDesc("unused#769", unimplementedFunc),
1261 /* 770 */ SyscallDesc("unused#770", unimplementedFunc),
1262 /* 771 */ SyscallDesc("unused#771", unimplementedFunc),
1263 /* 772 */ SyscallDesc("unused#772", unimplementedFunc),
1264 /* 773 */ SyscallDesc("unused#773", unimplementedFunc),
1265 /* 774 */ SyscallDesc("unused#774", unimplementedFunc),
1266 /* 775 */ SyscallDesc("unused#775", unimplementedFunc),
1267 /* 776 */ SyscallDesc("unused#776", unimplementedFunc),
1268 /* 777 */ SyscallDesc("unused#777", unimplementedFunc),
1269 /* 778 */ SyscallDesc("unused#778", unimplementedFunc),
1270 /* 779 */ SyscallDesc("unused#779", unimplementedFunc),
1271 /* 780 */ SyscallDesc("unused#780", unimplementedFunc),
1272 /* 781 */ SyscallDesc("unused#781", unimplementedFunc),
1273 /* 782 */ SyscallDesc("unused#782", unimplementedFunc),
1274 /* 783 */ SyscallDesc("unused#783", unimplementedFunc),
1275 /* 784 */ SyscallDesc("unused#784", unimplementedFunc),
1276 /* 785 */ SyscallDesc("unused#785", unimplementedFunc),
1277 /* 786 */ SyscallDesc("unused#786", unimplementedFunc),
1278 /* 787 */ SyscallDesc("unused#787", unimplementedFunc),
1279 /* 788 */ SyscallDesc("unused#788", unimplementedFunc),
1280 /* 789 */ SyscallDesc("unused#789", unimplementedFunc),
1281 /* 790 */ SyscallDesc("unused#790", unimplementedFunc),
1282 /* 791 */ SyscallDesc("unused#791", unimplementedFunc),
1283 /* 792 */ SyscallDesc("unused#792", unimplementedFunc),
1284 /* 793 */ SyscallDesc("unused#793", unimplementedFunc),
1285 /* 794 */ SyscallDesc("unused#794", unimplementedFunc),
1286 /* 795 */ SyscallDesc("unused#795", unimplementedFunc),
1287 /* 796 */ SyscallDesc("unused#796", unimplementedFunc),
1288 /* 797 */ SyscallDesc("unused#797", unimplementedFunc),
1289 /* 798 */ SyscallDesc("unused#798", unimplementedFunc),
1290 /* 799 */ SyscallDesc("unused#799", unimplementedFunc),
1291 /* 800 */ SyscallDesc("unused#800", unimplementedFunc),
1292 /* 801 */ SyscallDesc("unused#801", unimplementedFunc),
1293 /* 802 */ SyscallDesc("unused#802", unimplementedFunc),
1294 /* 803 */ SyscallDesc("unused#803", unimplementedFunc),
1295 /* 804 */ SyscallDesc("unused#804", unimplementedFunc),
1296 /* 805 */ SyscallDesc("unused#805", unimplementedFunc),
1297 /* 806 */ SyscallDesc("unused#806", unimplementedFunc),
1298 /* 807 */ SyscallDesc("unused#807", unimplementedFunc),
1299 /* 808 */ SyscallDesc("unused#808", unimplementedFunc),
1300 /* 809 */ SyscallDesc("unused#809", unimplementedFunc),
1301 /* 810 */ SyscallDesc("unused#810", unimplementedFunc),
1302 /* 811 */ SyscallDesc("unused#811", unimplementedFunc),
1303 /* 812 */ SyscallDesc("unused#812", unimplementedFunc),
1304 /* 813 */ SyscallDesc("unused#813", unimplementedFunc),
1305 /* 814 */ SyscallDesc("unused#814", unimplementedFunc),
1306 /* 815 */ SyscallDesc("unused#815", unimplementedFunc),
1307 /* 816 */ SyscallDesc("unused#816", unimplementedFunc),
1308 /* 817 */ SyscallDesc("unused#817", unimplementedFunc),
1309 /* 818 */ SyscallDesc("unused#818", unimplementedFunc),
1310 /* 819 */ SyscallDesc("unused#819", unimplementedFunc),
1311 /* 820 */ SyscallDesc("unused#820", unimplementedFunc),
1312 /* 821 */ SyscallDesc("unused#821", unimplementedFunc),
1313 /* 822 */ SyscallDesc("unused#822", unimplementedFunc),
1314 /* 823 */ SyscallDesc("unused#823", unimplementedFunc),
1315 /* 824 */ SyscallDesc("unused#824", unimplementedFunc),
1316 /* 825 */ SyscallDesc("unused#825", unimplementedFunc),
1317 /* 826 */ SyscallDesc("unused#826", unimplementedFunc),
1318 /* 827 */ SyscallDesc("unused#827", unimplementedFunc),
1319 /* 828 */ SyscallDesc("unused#828", unimplementedFunc),
1320 /* 829 */ SyscallDesc("unused#829", unimplementedFunc),
1321 /* 830 */ SyscallDesc("unused#830", unimplementedFunc),
1322 /* 831 */ SyscallDesc("unused#831", unimplementedFunc),
1323 /* 832 */ SyscallDesc("unused#832", unimplementedFunc),
1324 /* 833 */ SyscallDesc("unused#833", unimplementedFunc),
1325 /* 834 */ SyscallDesc("unused#834", unimplementedFunc),
1326 /* 835 */ SyscallDesc("unused#835", unimplementedFunc),
1327 /* 836 */ SyscallDesc("unused#836", unimplementedFunc),
1328 /* 837 */ SyscallDesc("unused#837", unimplementedFunc),
1329 /* 838 */ SyscallDesc("unused#838", unimplementedFunc),
1330 /* 839 */ SyscallDesc("unused#839", unimplementedFunc),
1331 /* 840 */ SyscallDesc("unused#840", unimplementedFunc),
1332 /* 841 */ SyscallDesc("unused#841", unimplementedFunc),
1333 /* 842 */ SyscallDesc("unused#842", unimplementedFunc),
1334 /* 843 */ SyscallDesc("unused#843", unimplementedFunc),
1335 /* 844 */ SyscallDesc("unused#844", unimplementedFunc),
1336 /* 845 */ SyscallDesc("unused#845", unimplementedFunc),
1337 /* 846 */ SyscallDesc("unused#846", unimplementedFunc),
1338 /* 847 */ SyscallDesc("unused#847", unimplementedFunc),
1339 /* 848 */ SyscallDesc("unused#848", unimplementedFunc),
1340 /* 849 */ SyscallDesc("unused#849", unimplementedFunc),
1341 /* 850 */ SyscallDesc("unused#850", unimplementedFunc),
1342 /* 851 */ SyscallDesc("unused#851", unimplementedFunc),
1343 /* 852 */ SyscallDesc("unused#852", unimplementedFunc),
1344 /* 853 */ SyscallDesc("unused#853", unimplementedFunc),
1345 /* 854 */ SyscallDesc("unused#854", unimplementedFunc),
1346 /* 855 */ SyscallDesc("unused#855", unimplementedFunc),
1347 /* 856 */ SyscallDesc("unused#856", unimplementedFunc),
1348 /* 857 */ SyscallDesc("unused#857", unimplementedFunc),
1349 /* 858 */ SyscallDesc("unused#858", unimplementedFunc),
1350 /* 859 */ SyscallDesc("unused#859", unimplementedFunc),
1351 /* 860 */ SyscallDesc("unused#860", unimplementedFunc),
1352 /* 861 */ SyscallDesc("unused#861", unimplementedFunc),
1353 /* 862 */ SyscallDesc("unused#862", unimplementedFunc),
1354 /* 863 */ SyscallDesc("unused#863", unimplementedFunc),
1355 /* 864 */ SyscallDesc("unused#864", unimplementedFunc),
1356 /* 865 */ SyscallDesc("unused#865", unimplementedFunc),
1357 /* 866 */ SyscallDesc("unused#866", unimplementedFunc),
1358 /* 867 */ SyscallDesc("unused#867", unimplementedFunc),
1359 /* 868 */ SyscallDesc("unused#868", unimplementedFunc),
1360 /* 869 */ SyscallDesc("unused#869", unimplementedFunc),
1361 /* 870 */ SyscallDesc("unused#870", unimplementedFunc),
1362 /* 871 */ SyscallDesc("unused#871", unimplementedFunc),
1363 /* 872 */ SyscallDesc("unused#872", unimplementedFunc),
1364 /* 873 */ SyscallDesc("unused#873", unimplementedFunc),
1365 /* 874 */ SyscallDesc("unused#874", unimplementedFunc),
1366 /* 875 */ SyscallDesc("unused#875", unimplementedFunc),
1367 /* 876 */ SyscallDesc("unused#876", unimplementedFunc),
1368 /* 877 */ SyscallDesc("unused#877", unimplementedFunc),
1369 /* 878 */ SyscallDesc("unused#878", unimplementedFunc),
1370 /* 879 */ SyscallDesc("unused#879", unimplementedFunc),
1371 /* 880 */ SyscallDesc("unused#880", unimplementedFunc),
1372 /* 881 */ SyscallDesc("unused#881", unimplementedFunc),
1373 /* 882 */ SyscallDesc("unused#882", unimplementedFunc),
1374 /* 883 */ SyscallDesc("unused#883", unimplementedFunc),
1375 /* 884 */ SyscallDesc("unused#884", unimplementedFunc),
1376 /* 885 */ SyscallDesc("unused#885", unimplementedFunc),
1377 /* 886 */ SyscallDesc("unused#886", unimplementedFunc),
1378 /* 887 */ SyscallDesc("unused#887", unimplementedFunc),
1379 /* 888 */ SyscallDesc("unused#888", unimplementedFunc),
1380 /* 889 */ SyscallDesc("unused#889", unimplementedFunc),
1381 /* 890 */ SyscallDesc("unused#890", unimplementedFunc),
1382 /* 891 */ SyscallDesc("unused#891", unimplementedFunc),
1383 /* 892 */ SyscallDesc("unused#892", unimplementedFunc),
1384 /* 893 */ SyscallDesc("unused#893", unimplementedFunc),
1385 /* 894 */ SyscallDesc("unused#894", unimplementedFunc),
1386 /* 895 */ SyscallDesc("unused#895", unimplementedFunc),
1387 /* 896 */ SyscallDesc("unused#896", unimplementedFunc),
1388 /* 897 */ SyscallDesc("unused#897", unimplementedFunc),
1389 /* 898 */ SyscallDesc("unused#898", unimplementedFunc),
1390 /* 899 */ SyscallDesc("unused#899", unimplementedFunc),
1391 /* 900 */ SyscallDesc("unused#900", unimplementedFunc),
1392 /* 901 */ SyscallDesc("unused#901", unimplementedFunc),
1393 /* 902 */ SyscallDesc("unused#902", unimplementedFunc),
1394 /* 903 */ SyscallDesc("unused#903", unimplementedFunc),
1395 /* 904 */ SyscallDesc("unused#904", unimplementedFunc),
1396 /* 905 */ SyscallDesc("unused#905", unimplementedFunc),
1397 /* 906 */ SyscallDesc("unused#906", unimplementedFunc),
1398 /* 907 */ SyscallDesc("unused#907", unimplementedFunc),
1399 /* 908 */ SyscallDesc("unused#908", unimplementedFunc),
1400 /* 909 */ SyscallDesc("unused#909", unimplementedFunc),
1401 /* 910 */ SyscallDesc("unused#910", unimplementedFunc),
1402 /* 911 */ SyscallDesc("unused#911", unimplementedFunc),
1403 /* 912 */ SyscallDesc("unused#912", unimplementedFunc),
1404 /* 913 */ SyscallDesc("unused#913", unimplementedFunc),
1405 /* 914 */ SyscallDesc("unused#914", unimplementedFunc),
1406 /* 915 */ SyscallDesc("unused#915", unimplementedFunc),
1407 /* 916 */ SyscallDesc("unused#916", unimplementedFunc),
1408 /* 917 */ SyscallDesc("unused#917", unimplementedFunc),
1409 /* 918 */ SyscallDesc("unused#918", unimplementedFunc),
1410 /* 919 */ SyscallDesc("unused#919", unimplementedFunc),
1411 /* 920 */ SyscallDesc("unused#920", unimplementedFunc),
1412 /* 921 */ SyscallDesc("unused#921", unimplementedFunc),
1413 /* 922 */ SyscallDesc("unused#922", unimplementedFunc),
1414 /* 923 */ SyscallDesc("unused#923", unimplementedFunc),
1415 /* 924 */ SyscallDesc("unused#924", unimplementedFunc),
1416 /* 925 */ SyscallDesc("unused#925", unimplementedFunc),
1417 /* 926 */ SyscallDesc("unused#926", unimplementedFunc),
1418 /* 927 */ SyscallDesc("unused#927", unimplementedFunc),
1419 /* 928 */ SyscallDesc("unused#928", unimplementedFunc),
1420 /* 929 */ SyscallDesc("unused#929", unimplementedFunc),
1421 /* 930 */ SyscallDesc("unused#930", unimplementedFunc),
1422 /* 931 */ SyscallDesc("unused#931", unimplementedFunc),
1423 /* 932 */ SyscallDesc("unused#932", unimplementedFunc),
1424 /* 933 */ SyscallDesc("unused#933", unimplementedFunc),
1425 /* 934 */ SyscallDesc("unused#934", unimplementedFunc),
1426 /* 935 */ SyscallDesc("unused#935", unimplementedFunc),
1427 /* 936 */ SyscallDesc("unused#936", unimplementedFunc),
1428 /* 937 */ SyscallDesc("unused#937", unimplementedFunc),
1429 /* 938 */ SyscallDesc("unused#938", unimplementedFunc),
1430 /* 939 */ SyscallDesc("unused#939", unimplementedFunc),
1431 /* 940 */ SyscallDesc("unused#940", unimplementedFunc),
1432 /* 941 */ SyscallDesc("unused#941", unimplementedFunc),
1433 /* 942 */ SyscallDesc("unused#942", unimplementedFunc),
1434 /* 943 */ SyscallDesc("unused#943", unimplementedFunc),
1435 /* 944 */ SyscallDesc("unused#944", unimplementedFunc),
1436 /* 945 */ SyscallDesc("unused#945", unimplementedFunc),
1437 /* 946 */ SyscallDesc("unused#946", unimplementedFunc),
1438 /* 947 */ SyscallDesc("unused#947", unimplementedFunc),
1439 /* 948 */ SyscallDesc("unused#948", unimplementedFunc),
1440 /* 949 */ SyscallDesc("unused#949", unimplementedFunc),
1441 /* 950 */ SyscallDesc("unused#950", unimplementedFunc),
1442 /* 951 */ SyscallDesc("unused#951", unimplementedFunc),
1443 /* 952 */ SyscallDesc("unused#952", unimplementedFunc),
1444 /* 953 */ SyscallDesc("unused#953", unimplementedFunc),
1445 /* 954 */ SyscallDesc("unused#954", unimplementedFunc),
1446 /* 955 */ SyscallDesc("unused#955", unimplementedFunc),
1447 /* 956 */ SyscallDesc("unused#956", unimplementedFunc),
1448 /* 957 */ SyscallDesc("unused#957", unimplementedFunc),
1449 /* 958 */ SyscallDesc("unused#958", unimplementedFunc),
1450 /* 959 */ SyscallDesc("unused#959", unimplementedFunc),
1451 /* 960 */ SyscallDesc("unused#960", unimplementedFunc),
1452 /* 961 */ SyscallDesc("unused#961", unimplementedFunc),
1453 /* 962 */ SyscallDesc("unused#962", unimplementedFunc),
1454 /* 963 */ SyscallDesc("unused#963", unimplementedFunc),
1455 /* 964 */ SyscallDesc("unused#964", unimplementedFunc),
1456 /* 965 */ SyscallDesc("unused#965", unimplementedFunc),
1457 /* 966 */ SyscallDesc("unused#966", unimplementedFunc),
1458 /* 967 */ SyscallDesc("unused#967", unimplementedFunc),
1459 /* 968 */ SyscallDesc("unused#968", unimplementedFunc),
1460 /* 969 */ SyscallDesc("unused#969", unimplementedFunc),
1461 /* 970 */ SyscallDesc("unused#970", unimplementedFunc),
1462 /* 971 */ SyscallDesc("unused#971", unimplementedFunc),
1463 /* 972 */ SyscallDesc("unused#972", unimplementedFunc),
1464 /* 973 */ SyscallDesc("unused#973", unimplementedFunc),
1465 /* 974 */ SyscallDesc("unused#974", unimplementedFunc),
1466 /* 975 */ SyscallDesc("unused#975", unimplementedFunc),
1467 /* 976 */ SyscallDesc("unused#976", unimplementedFunc),
1468 /* 977 */ SyscallDesc("unused#977", unimplementedFunc),
1469 /* 978 */ SyscallDesc("unused#978", unimplementedFunc),
1470 /* 979 */ SyscallDesc("unused#979", unimplementedFunc),
1471 /* 980 */ SyscallDesc("unused#980", unimplementedFunc),
1472 /* 981 */ SyscallDesc("unused#981", unimplementedFunc),
1473 /* 982 */ SyscallDesc("unused#982", unimplementedFunc),
1474 /* 983 */ SyscallDesc("unused#983", unimplementedFunc),
1475 /* 984 */ SyscallDesc("unused#984", unimplementedFunc),
1476 /* 985 */ SyscallDesc("unused#985", unimplementedFunc),
1477 /* 986 */ SyscallDesc("unused#986", unimplementedFunc),
1478 /* 987 */ SyscallDesc("unused#987", unimplementedFunc),
1479 /* 988 */ SyscallDesc("unused#988", unimplementedFunc),
1480 /* 989 */ SyscallDesc("unused#989", unimplementedFunc),
1481 /* 990 */ SyscallDesc("unused#990", unimplementedFunc),
1482 /* 991 */ SyscallDesc("unused#991", unimplementedFunc),
1483 /* 992 */ SyscallDesc("unused#992", unimplementedFunc),
1484 /* 993 */ SyscallDesc("unused#993", unimplementedFunc),
1485 /* 994 */ SyscallDesc("unused#994", unimplementedFunc),
1486 /* 995 */ SyscallDesc("unused#995", unimplementedFunc),
1487 /* 996 */ SyscallDesc("unused#996", unimplementedFunc),
1488 /* 997 */ SyscallDesc("unused#997", unimplementedFunc),
1489 /* 998 */ SyscallDesc("unused#998", unimplementedFunc),
1490 /* 999 */ SyscallDesc("unused#999", unimplementedFunc),
1491 /* 1000 */ SyscallDesc("unused#1000", unimplementedFunc),
1492 /* 1001 */ SyscallDesc("unused#1001", unimplementedFunc),
1493 /* 1002 */ SyscallDesc("unused#1002", unimplementedFunc),
1494 /* 1003 */ SyscallDesc("unused#1003", unimplementedFunc),
1495 /* 1004 */ SyscallDesc("unused#1004", unimplementedFunc),
1496 /* 1005 */ SyscallDesc("unused#1005", unimplementedFunc),
1497 /* 1006 */ SyscallDesc("unused#1006", unimplementedFunc),
1498 /* 1007 */ SyscallDesc("unused#1007", unimplementedFunc),
1499 /* 1008 */ SyscallDesc("unused#1008", unimplementedFunc),
1500 /* 1009 */ SyscallDesc("unused#1009", unimplementedFunc),
1501 /* 1010 */ SyscallDesc("unused#1010", unimplementedFunc),
1502 /* 1011 */ SyscallDesc("unused#1011", unimplementedFunc),
1503 /* 1012 */ SyscallDesc("unused#1012", unimplementedFunc),
1504 /* 1013 */ SyscallDesc("unused#1013", unimplementedFunc),
1505 /* 1014 */ SyscallDesc("unused#1014", unimplementedFunc),
1506 /* 1015 */ SyscallDesc("unused#1015", unimplementedFunc),
1507 /* 1016 */ SyscallDesc("unused#1016", unimplementedFunc),
1508 /* 1017 */ SyscallDesc("unused#1017", unimplementedFunc),
1509 /* 1018 */ SyscallDesc("unused#1018", unimplementedFunc),
1510 /* 1019 */ SyscallDesc("unused#1019", unimplementedFunc),
1511 /* 1020 */ SyscallDesc("unused#1020", unimplementedFunc),
1512 /* 1021 */ SyscallDesc("unused#1021", unimplementedFunc),
1513 /* 1022 */ SyscallDesc("unused#1022", unimplementedFunc),
1514 /* 1023 */ SyscallDesc("unused#1023", unimplementedFunc),
1515 /* 1024 */ SyscallDesc("open", openFunc<ArmLinux64>),
1516 /* 1025 */ SyscallDesc("link", unimplementedFunc),
1517 /* 1026 */ SyscallDesc("unlink", unlinkFunc),
1518 /* 1027 */ SyscallDesc("mknod", unimplementedFunc),
1519 /* 1028 */ SyscallDesc("chmod", chmodFunc<ArmLinux64>),
1520 /* 1029 */ SyscallDesc("chown", unimplementedFunc),
1521 /* 1030 */ SyscallDesc("mkdir", mkdirFunc),
1522 /* 1031 */ SyscallDesc("rmdir", unimplementedFunc),
1523 /* 1032 */ SyscallDesc("lchown", unimplementedFunc),
1524 /* 1033 */ SyscallDesc("access", unimplementedFunc),
1525 /* 1034 */ SyscallDesc("rename", renameFunc),
1526 /* 1035 */ SyscallDesc("readlink", readlinkFunc),
1527 /* 1036 */ SyscallDesc("symlink", unimplementedFunc),
1528 /* 1037 */ SyscallDesc("utimes", unimplementedFunc),
1529 /* 1038 */ SyscallDesc("stat64", stat64Func<ArmLinux64>),
1530 /* 1039 */ SyscallDesc("lstat64", lstat64Func<ArmLinux64>),
1531 /* 1040 */ SyscallDesc("pipe", pipePseudoFunc),
1532 /* 1041 */ SyscallDesc("dup2", unimplementedFunc),
1533 /* 1042 */ SyscallDesc("epoll_create", unimplementedFunc),
1534 /* 1043 */ SyscallDesc("inotify_init", unimplementedFunc),
1535 /* 1044 */ SyscallDesc("eventfd", unimplementedFunc),
1536 /* 1045 */ SyscallDesc("signalfd", unimplementedFunc),
1537 /* 1046 */ SyscallDesc("sendfile", unimplementedFunc),
1538 /* 1047 */ SyscallDesc("ftruncate", ftruncateFunc),
1539 /* 1048 */ SyscallDesc("truncate", truncateFunc),
1540 /* 1049 */ SyscallDesc("stat", statFunc<ArmLinux64>),
1541 /* 1050 */ SyscallDesc("lstat", unimplementedFunc),
1542 /* 1051 */ SyscallDesc("fstat", fstatFunc<ArmLinux64>),
1543 /* 1052 */ SyscallDesc("fcntl", fcntlFunc),
1544 /* 1053 */ SyscallDesc("fadvise64", unimplementedFunc),
1545 /* 1054 */ SyscallDesc("newfstatat", unimplementedFunc),
1546 /* 1055 */ SyscallDesc("fstatfs", unimplementedFunc),
1547 /* 1056 */ SyscallDesc("statfs", unimplementedFunc),
1548 /* 1057 */ SyscallDesc("lseek", lseekFunc),
1549 /* 1058 */ SyscallDesc("mmap", mmapFunc<ArmLinux64>),
1550 /* 1059 */ SyscallDesc("alarm", unimplementedFunc),
1551 /* 1060 */ SyscallDesc("getpgrp", unimplementedFunc),
1552 /* 1061 */ SyscallDesc("pause", unimplementedFunc),
1553 /* 1062 */ SyscallDesc("time", timeFunc<ArmLinux64>),
1554 /* 1063 */ SyscallDesc("utime", unimplementedFunc),
1555 /* 1064 */ SyscallDesc("creat", unimplementedFunc),
1556 /* 1065 */ SyscallDesc("getdents", unimplementedFunc),
1557 /* 1066 */ SyscallDesc("futimesat", unimplementedFunc),
1558 /* 1067 */ SyscallDesc("select", unimplementedFunc),
1559 /* 1068 */ SyscallDesc("poll", unimplementedFunc),
1560 /* 1069 */ SyscallDesc("epoll_wait", unimplementedFunc),
1561 /* 1070 */ SyscallDesc("ustat", unimplementedFunc),
1562 /* 1071 */ SyscallDesc("vfork", unimplementedFunc),
1563 /* 1072 */ SyscallDesc("oldwait4", unimplementedFunc),
1564 /* 1073 */ SyscallDesc("recv", unimplementedFunc),
1565 /* 1074 */ SyscallDesc("send", unimplementedFunc),
1566 /* 1075 */ SyscallDesc("bdflush", unimplementedFunc),
1567 /* 1076 */ SyscallDesc("umount", unimplementedFunc),
1568 /* 1077 */ SyscallDesc("uselib", unimplementedFunc),
1569 /* 1078 */ SyscallDesc("_sysctl", unimplementedFunc),
1570 /* 1079 */ SyscallDesc("fork", unimplementedFunc)
1571};
1572
1573static SyscallDesc privSyscallDescs32[] = {
1574 /* 1 */ SyscallDesc("breakpoint", unimplementedFunc),
1575 /* 2 */ SyscallDesc("cacheflush", unimplementedFunc),
1576 /* 3 */ SyscallDesc("usr26", unimplementedFunc),
1577 /* 4 */ SyscallDesc("usr32", unimplementedFunc),
1578 /* 5 */ SyscallDesc("set_tls", setTLSFunc32)
1579};
1580
1581// Indices 1, 3 and 4 are unallocated.
1582static SyscallDesc privSyscallDescs64[] = {
1583 /* 1 */ SyscallDesc("unallocated", unimplementedFunc),
1584 /* 2 */ SyscallDesc("cacheflush", unimplementedFunc),
1585 /* 3 */ SyscallDesc("unallocated", unimplementedFunc),
1586 /* 4 */ SyscallDesc("unallocated", unimplementedFunc),
1587 /* 5 */ SyscallDesc("set_tls", setTLSFunc64)
1588};
1589
1590ArmLinuxProcess32::ArmLinuxProcess32(LiveProcessParams * params,
1591 ObjectFile *objFile, ObjectFile::Arch _arch)
1592 : ArmLiveProcess32(params, objFile, _arch)
1593{
1594 SyscallTable table;
1595
1596 table.descs = syscallDescs32;
1597 table.size = sizeof(syscallDescs32) / sizeof(SyscallDesc);
1598 table.base = 0;
1599 syscallTables.push_back(table);
1600 table.base = 0x900000;
1601 syscallTables.push_back(table);
1602
1603 table.descs = privSyscallDescs32;
1604 table.size = sizeof(privSyscallDescs32) / sizeof(SyscallDesc);
1605 table.base = 0xf0001;
1606 syscallTables.push_back(table);
1607}
1608
1609ArmLinuxProcess64::ArmLinuxProcess64(LiveProcessParams * params,
1610 ObjectFile *objFile, ObjectFile::Arch _arch)
1611 : ArmLiveProcess64(params, objFile, _arch)
1612{
1613 SyscallTable table;
1614
1615 table.descs = syscallDescs64;
1616 table.size = sizeof(syscallDescs64) / sizeof(SyscallDesc);
1617 table.base = 0;
1618 syscallTables.push_back(table);
1619 table.base = 0x900000;
1620 syscallTables.push_back(table);
1621
1622 table.descs = privSyscallDescs64;
1623 table.size = sizeof(privSyscallDescs64) / sizeof(SyscallDesc);
1624 table.base = 0x1001;
1625 syscallTables.push_back(table);
1626}
1627
1628const Addr ArmLinuxProcess32::commPage = 0xffff0000;
1629
1630SyscallDesc*
1631ArmLinuxProcessBits::getLinuxDesc(int callnum)
1632{
1633 // Angel SWI syscalls are unsupported in this release
1634 if (callnum == 0x123456)
1635 panic("Attempt to execute an ANGEL_SWI system call (newlib-related)");
1636 for (unsigned i = 0; i < syscallTables.size(); i++) {
1637 SyscallDesc *desc = syscallTables[i].getDesc(callnum);
1638 if (desc)
1639 return desc;
1640 }
1641 return NULL;
1642}
1643
1644SyscallDesc *
1645ArmLinuxProcessBits::SyscallTable::getDesc(int callnum) const
1646{
1647 int offset = callnum - base;
1648 if (offset < 0 || offset >= size)
1649 return NULL;
1650 return &descs[offset];
1651}
1652
1653SyscallDesc*
1654ArmLinuxProcess32::getDesc(int callnum)
1655{
1656 return getLinuxDesc(callnum);
1657}
1658
1659SyscallDesc*
1660ArmLinuxProcess64::getDesc(int callnum)
1661{
1662 return getLinuxDesc(callnum);
1663}
1664
1665void
1666ArmLinuxProcess32::initState()
1667{
1668 ArmLiveProcess32::initState();
1669 allocateMem(commPage, PageBytes);
1670 ThreadContext *tc = system->getThreadContext(contextIds[0]);
1671
1672 uint8_t swiNeg1[] = {
1673 0xff, 0xff, 0xff, 0xef // swi -1
1674 };
1675
1676 // Fill this page with swi -1 so we'll no if we land in it somewhere.
1677 for (Addr addr = 0; addr < PageBytes; addr += sizeof(swiNeg1)) {
1678 tc->getMemProxy().writeBlob(commPage + addr,
1679 swiNeg1, sizeof(swiNeg1));
1680 }
1681
1682 uint8_t memory_barrier[] =
1683 {
1684 0x5f, 0xf0, 0x7f, 0xf5, // dmb
1685 0x0e, 0xf0, 0xa0, 0xe1 // return
1686 };
1687 tc->getMemProxy().writeBlob(commPage + 0x0fa0, memory_barrier,
1688 sizeof(memory_barrier));
1689
1690 uint8_t cmpxchg[] =
1691 {
1692 0x9f, 0x3f, 0x92, 0xe1, // ldrex r3, [r2]
1693 0x00, 0x30, 0x53, 0xe0, // subs r3, r3, r0
1694 0x91, 0x3f, 0x82, 0x01, // strexeq r3, r1, [r2]
1695 0x01, 0x00, 0x33, 0x03, // teqeq r3, #1
1696 0xfa, 0xff, 0xff, 0x0a, // beq 1b
1697 0x00, 0x00, 0x73, 0xe2, // rsbs r0, r3, #0
1698 0x5f, 0xf0, 0x7f, 0xf5, // dmb
1699 0x0e, 0xf0, 0xa0, 0xe1 // return
1700 };
1701 tc->getMemProxy().writeBlob(commPage + 0x0fc0, cmpxchg, sizeof(cmpxchg));
1702
1703 uint8_t get_tls[] =
1704 {
1705 // read user read-only thread id register
1706 0x70, 0x0f, 0x1d, 0xee, // mrc p15, 0, r0, c13, c0, 3
1707 0x0e, 0xf0, 0xa0, 0xe1 // return
1708 };
1709 tc->getMemProxy().writeBlob(commPage + 0x0fe0, get_tls, sizeof(get_tls));
1710}
1711
1712void
1713ArmLinuxProcess64::initState()
1714{
1715 ArmLiveProcess64::initState();
1716 // The 64 bit equivalent of the comm page would be set up here.
1717}