linux.hh (11381:516213d2f0cf) linux.hh (11382:654272b82e94)
1/*
2 * Copyright (c) 2010, 2011-2012, 2015 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

--- 37 unchanged lines hidden (view full) ---

46#define __ARCH_ARM_LINUX_LINUX_HH__
47
48#include "kern/linux/linux.hh"
49
50class ArmLinux32 : public Linux
51{
52 public:
53
1/*
2 * Copyright (c) 2010, 2011-2012, 2015 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

--- 37 unchanged lines hidden (view full) ---

46#define __ARCH_ARM_LINUX_LINUX_HH__
47
48#include "kern/linux/linux.hh"
49
50class ArmLinux32 : public Linux
51{
52 public:
53
54 static const int TGT_SIGHUP = 0x000001;
55 static const int TGT_SIGINT = 0x000002;
56 static const int TGT_SIGQUIT = 0x000003;
57 static const int TGT_SIGILL = 0x000004;
58 static const int TGT_SIGTRAP = 0x000005;
59 static const int TGT_SIGABRT = 0x000006;
60 static const int TGT_SIGIOT = 0x000006;
61 static const int TGT_SIGBUS = 0x000007;
62 static const int TGT_SIGFPE = 0x000008;
63 static const int TGT_SIGKILL = 0x000009;
64 static const int TGT_SIGUSR1 = 0x00000a;
65 static const int TGT_SIGSEGV = 0x00000b;
66 static const int TGT_SIGUSR2 = 0x00000c;
67 static const int TGT_SIGPIPE = 0x00000d;
68 static const int TGT_SIGALRM = 0x00000e;
69 static const int TGT_SIGTERM = 0x00000f;
70 static const int TGT_SIGSTKFLT = 0x000010;
71 static const int TGT_SIGCHLD = 0x000011;
72 static const int TGT_SIGCONT = 0x000012;
73 static const int TGT_SIGSTOP = 0x000013;
74 static const int TGT_SIGTSTP = 0x000014;
75 static const int TGT_SIGTTIN = 0x000015;
76 static const int TGT_SIGTTOU = 0x000016;
77 static const int TGT_SIGURG = 0x000017;
78 static const int TGT_SIGXCPU = 0x000018;
79 static const int TGT_SIGXFSZ = 0x000019;
80 static const int TGT_SIGVTALRM = 0x00001a;
81 static const int TGT_SIGPROF = 0x00001b;
82 static const int TGT_SIGWINCH = 0x00001c;
83 static const int TGT_SIGIO = 0x00001d;
84 static const int TGT_SIGPOLL = 0x00001d;
85 static const int TGT_SIGPWR = 0x00001e;
86 static const int TGT_SIGSYS = 0x00001f;
87 static const int TGT_SIGUNUSED = 0x00001f;
88
54 /// This table maps the target open() flags to the corresponding
55 /// host open() flags.
56 static SyscallFlagTransTable openFlagTable[];
57
58 /// Number of entries in openFlagTable[].
59 static const int NUM_OPEN_FLAGS;
60
61 //@{
62 /// Basic ARM Linux types
63 typedef uint32_t size_t;
64 typedef uint32_t off_t;
65 typedef int32_t time_t;
66 typedef int32_t clock_t;
67 //@}
68
69 //@{
70 /// open(2) flag values.
89 /// This table maps the target open() flags to the corresponding
90 /// host open() flags.
91 static SyscallFlagTransTable openFlagTable[];
92
93 /// Number of entries in openFlagTable[].
94 static const int NUM_OPEN_FLAGS;
95
96 //@{
97 /// Basic ARM Linux types
98 typedef uint32_t size_t;
99 typedef uint32_t off_t;
100 typedef int32_t time_t;
101 typedef int32_t clock_t;
102 //@}
103
104 //@{
105 /// open(2) flag values.
71 static const int TGT_O_RDONLY = 00000000; //!< O_RDONLY
72 static const int TGT_O_WRONLY = 00000001; //!< O_WRONLY
73 static const int TGT_O_RDWR = 00000002; //!< O_RDWR
74 static const int TGT_O_CREAT = 00000100; //!< O_CREAT
75 static const int TGT_O_EXCL = 00000200; //!< O_EXCL
76 static const int TGT_O_NOCTTY = 00000400; //!< O_NOCTTY
77 static const int TGT_O_TRUNC = 00001000; //!< O_TRUNC
78 static const int TGT_O_APPEND = 00002000; //!< O_APPEND
79 static const int TGT_O_NONBLOCK = 00004000; //!< O_NONBLOCK
80 static const int TGT_O_SYNC = 00010000; //!< O_SYNC
81 static const int TGT_FASYNC = 00020000; //!< FASYNC
82 static const int TGT_O_DIRECT = 00040000; //!< O_DIRECT
83 static const int TGT_O_LARGEFILE = 00100000; //!< O_LARGEFILE
84 static const int TGT_O_DIRECTORY = 00200000; //!< O_DIRECTORY
85 static const int TGT_O_NOFOLLOW = 00400000; //!< O_NOFOLLOW
86 static const int TGT_O_NOATIME = 01000000; //!< O_NOATIME
87 static const int TGT_O_CLOEXEC = 02000000; //!< O_NOATIME
88
89
106 static const int TGT_O_RDONLY = 000000000; //!< O_RDONLY
107 static const int TGT_O_WRONLY = 000000001; //!< O_WRONLY
108 static const int TGT_O_RDWR = 000000002; //!< O_RDWR
109 static const int TGT_O_CREAT = 000000100; //!< O_CREAT
110 static const int TGT_O_EXCL = 000000200; //!< O_EXCL
111 static const int TGT_O_NOCTTY = 000000400; //!< O_NOCTTY
112 static const int TGT_O_TRUNC = 000001000; //!< O_TRUNC
113 static const int TGT_O_APPEND = 000002000; //!< O_APPEND
114 static const int TGT_O_NONBLOCK = 000004000; //!< O_NONBLOCK
115 static const int TGT_O_DSYNC = 000010000; //!< O_DSYNC
116 static const int TGT_FASYNC = 000020000; //!< FASYNC
117 static const int TGT_O_DIRECT = 000200000; //!< O_DIRECT
118 static const int TGT_O_LARGEFILE = 000400000; //!< O_LARGEFILE
119 static const int TGT_O_DIRECTORY = 000040000; //!< O_DIRECTORY
120 static const int TGT_O_NOFOLLOW = 000100000; //!< O_NOFOLLOW
121 static const int TGT_O_NOATIME = 001000000; //!< O_NOATIME
122 static const int TGT_O_CLOEXEC = 002000000; //!< O_NOATIME
123 static const int TGT_O_SYNC = 004010000; //!< O_SYNC
124 static const int TGT_O_PATH = 010000000; //!< O_PATH
90 //@}
91
92 /// For mmap().
93 static const unsigned TGT_MAP_ANONYMOUS = 0x20;
94 static const unsigned TGT_MAP_FIXED = 0x10;
95
96 /// For table().
97 static const int TBL_SYSINFO = 12;

--- 108 unchanged lines hidden (view full) ---

206 int32_t tms_cstime; //!< system time of children
207 };
208};
209
210class ArmLinux64 : public Linux
211{
212 public:
213
125 //@}
126
127 /// For mmap().
128 static const unsigned TGT_MAP_ANONYMOUS = 0x20;
129 static const unsigned TGT_MAP_FIXED = 0x10;
130
131 /// For table().
132 static const int TBL_SYSINFO = 12;

--- 108 unchanged lines hidden (view full) ---

241 int32_t tms_cstime; //!< system time of children
242 };
243};
244
245class ArmLinux64 : public Linux
246{
247 public:
248
249 static const int TGT_SIGHUP = 0x000001;
250 static const int TGT_SIGINT = 0x000002;
251 static const int TGT_SIGQUIT = 0x000003;
252 static const int TGT_SIGILL = 0x000004;
253 static const int TGT_SIGTRAP = 0x000005;
254 static const int TGT_SIGABRT = 0x000006;
255 static const int TGT_SIGIOT = 0x000006;
256 static const int TGT_SIGBUS = 0x000007;
257 static const int TGT_SIGFPE = 0x000008;
258 static const int TGT_SIGKILL = 0x000009;
259 static const int TGT_SIGUSR1 = 0x00000a;
260 static const int TGT_SIGSEGV = 0x00000b;
261 static const int TGT_SIGUSR2 = 0x00000c;
262 static const int TGT_SIGPIPE = 0x00000d;
263 static const int TGT_SIGALRM = 0x00000e;
264 static const int TGT_SIGTERM = 0x00000f;
265 static const int TGT_SIGSTKFLT = 0x000010;
266 static const int TGT_SIGCHLD = 0x000011;
267 static const int TGT_SIGCONT = 0x000012;
268 static const int TGT_SIGSTOP = 0x000013;
269 static const int TGT_SIGTSTP = 0x000014;
270 static const int TGT_SIGTTIN = 0x000015;
271 static const int TGT_SIGTTOU = 0x000016;
272 static const int TGT_SIGURG = 0x000017;
273 static const int TGT_SIGXCPU = 0x000018;
274 static const int TGT_SIGXFSZ = 0x000019;
275 static const int TGT_SIGVTALRM = 0x00001a;
276 static const int TGT_SIGPROF = 0x00001b;
277 static const int TGT_SIGWINCH = 0x00001c;
278 static const int TGT_SIGIO = 0x00001d;
279 static const int TGT_SIGPOLL = 0x00001d;
280 static const int TGT_SIGPWR = 0x00001e;
281 static const int TGT_SIGSYS = 0x00001f;
282 static const int TGT_SIGUNUSED = 0x00001f;
283
214 /// This table maps the target open() flags to the corresponding
215 /// host open() flags.
216 static SyscallFlagTransTable openFlagTable[];
217
218 /// Number of entries in openFlagTable[].
219 static const int NUM_OPEN_FLAGS;
220
221 //@{
222 /// Basic ARM Linux types
223 typedef uint64_t size_t;
224 typedef uint64_t off_t;
225 typedef int64_t time_t;
226 typedef int64_t clock_t;
227 //@}
228
229 //@{
230 /// open(2) flag values.
284 /// This table maps the target open() flags to the corresponding
285 /// host open() flags.
286 static SyscallFlagTransTable openFlagTable[];
287
288 /// Number of entries in openFlagTable[].
289 static const int NUM_OPEN_FLAGS;
290
291 //@{
292 /// Basic ARM Linux types
293 typedef uint64_t size_t;
294 typedef uint64_t off_t;
295 typedef int64_t time_t;
296 typedef int64_t clock_t;
297 //@}
298
299 //@{
300 /// open(2) flag values.
231 static const int TGT_O_RDONLY = 00000000; //!< O_RDONLY
232 static const int TGT_O_WRONLY = 00000001; //!< O_WRONLY
233 static const int TGT_O_RDWR = 00000002; //!< O_RDWR
234 static const int TGT_O_CREAT = 00000100; //!< O_CREAT
235 static const int TGT_O_EXCL = 00000200; //!< O_EXCL
236 static const int TGT_O_NOCTTY = 00000400; //!< O_NOCTTY
237 static const int TGT_O_TRUNC = 00001000; //!< O_TRUNC
238 static const int TGT_O_APPEND = 00002000; //!< O_APPEND
239 static const int TGT_O_NONBLOCK = 00004000; //!< O_NONBLOCK
240 static const int TGT_O_SYNC = 00010000; //!< O_SYNC
241 static const int TGT_FASYNC = 00020000; //!< FASYNC
242 static const int TGT_O_DIRECT = 00040000; //!< O_DIRECT
243 static const int TGT_O_LARGEFILE = 00100000; //!< O_LARGEFILE
244 static const int TGT_O_DIRECTORY = 00200000; //!< O_DIRECTORY
245 static const int TGT_O_NOFOLLOW = 00400000; //!< O_NOFOLLOW
246 static const int TGT_O_NOATIME = 01000000; //!< O_NOATIME
247 static const int TGT_O_CLOEXEC = 02000000; //!< O_NOATIME
301 static const int TGT_O_RDONLY = 000000000; //!< O_RDONLY
302 static const int TGT_O_WRONLY = 000000001; //!< O_WRONLY
303 static const int TGT_O_RDWR = 000000002; //!< O_RDWR
304 static const int TGT_O_CREAT = 000000100; //!< O_CREAT
305 static const int TGT_O_EXCL = 000000200; //!< O_EXCL
306 static const int TGT_O_NOCTTY = 000000400; //!< O_NOCTTY
307 static const int TGT_O_TRUNC = 000001000; //!< O_TRUNC
308 static const int TGT_O_APPEND = 000002000; //!< O_APPEND
309 static const int TGT_O_NONBLOCK = 000004000; //!< O_NONBLOCK
310 static const int TGT_O_DSYNC = 000010000; //!< O_DSYNC
311 static const int TGT_FASYNC = 000020000; //!< FASYNC
312 static const int TGT_O_DIRECT = 000200000; //!< O_DIRECT
313 static const int TGT_O_LARGEFILE = 000400000; //!< O_LARGEFILE
314 static const int TGT_O_DIRECTORY = 000040000; //!< O_DIRECTORY
315 static const int TGT_O_NOFOLLOW = 000100000; //!< O_NOFOLLOW
316 static const int TGT_O_NOATIME = 001000000; //!< O_NOATIME
317 static const int TGT_O_CLOEXEC = 002000000; //!< O_NOATIME
318 static const int TGT_O_SYNC = 004010000; //!< O_SYNC
319 static const int TGT_O_PATH = 010000000; //!< O_PATH
248 //@}
249
250 /// For mmap().
251 static const unsigned TGT_MAP_ANONYMOUS = 0x20;
252 static const unsigned TGT_MAP_FIXED = 0x10;
253
254 //@{
255 /// For getrusage().

--- 146 unchanged lines hidden ---
320 //@}
321
322 /// For mmap().
323 static const unsigned TGT_MAP_ANONYMOUS = 0x20;
324 static const unsigned TGT_MAP_FIXED = 0x10;
325
326 //@{
327 /// For getrusage().

--- 146 unchanged lines hidden ---