40 #ifndef __ARCH_X86_LINUX_LINUX_HH__ 41 #define __ARCH_X86_LINUX_LINUX_HH__ 55 uint64_t
stack, uint64_t tls)
112 static const int TGT_SIGHUP = 0x000001;
113 static const int TGT_SIGINT = 0x000002;
114 static const int TGT_SIGQUIT = 0x000003;
115 static const int TGT_SIGILL = 0x000004;
116 static const int TGT_SIGTRAP = 0x000005;
117 static const int TGT_SIGABRT = 0x000006;
118 static const int TGT_SIGIOT = 0x000006;
119 static const int TGT_SIGBUS = 0x000007;
120 static const int TGT_SIGFPE = 0x000008;
121 static const int TGT_SIGKILL = 0x000009;
122 static const int TGT_SIGUSR1 = 0x00000a;
123 static const int TGT_SIGSEGV = 0x00000b;
124 static const int TGT_SIGUSR2 = 0x00000c;
125 static const int TGT_SIGPIPE = 0x00000d;
126 static const int TGT_SIGALRM = 0x00000e;
127 static const int TGT_SIGTERM = 0x00000f;
128 static const int TGT_SIGSTKFLT = 0x000010;
129 static const int TGT_SIGCHLD = 0x000011;
130 static const int TGT_SIGCONT = 0x000012;
131 static const int TGT_SIGSTOP = 0x000013;
132 static const int TGT_SIGTSTP = 0x000014;
133 static const int TGT_SIGTTIN = 0x000015;
134 static const int TGT_SIGTTOU = 0x000016;
135 static const int TGT_SIGURG = 0x000017;
136 static const int TGT_SIGXCPU = 0x000018;
137 static const int TGT_SIGXFSZ = 0x000019;
138 static const int TGT_SIGVTALRM = 0x00001a;
139 static const int TGT_SIGPROF = 0x00001b;
140 static const int TGT_SIGWINCH = 0x00001c;
141 static const int TGT_SIGIO = 0x00001d;
142 static const int TGT_SIGPOLL = 0x00001d;
143 static const int TGT_SIGPWR = 0x00001e;
144 static const int TGT_SIGSYS = 0x00001f;
145 static const int TGT_SIGUNUSED = 0x00001f;
149 static const int TGT_O_RDONLY = 000000000;
150 static const int TGT_O_WRONLY = 000000001;
151 static const int TGT_O_RDWR = 000000002;
152 static const int TGT_O_CREAT = 000000100;
153 static const int TGT_O_EXCL = 000000200;
154 static const int TGT_O_NOCTTY = 000000400;
155 static const int TGT_O_TRUNC = 000001000;
156 static const int TGT_O_APPEND = 000002000;
157 static const int TGT_O_NONBLOCK = 000004000;
158 static const int TGT_O_DSYNC = 000010000;
159 static const int TGT_FASYNC = 000020000;
160 static const int TGT_O_DIRECT = 000040000;
161 static const int TGT_O_LARGEFILE = 000100000;
162 static const int TGT_O_DIRECTORY = 000200000;
163 static const int TGT_O_NOFOLLOW = 000400000;
164 static const int TGT_O_NOATIME = 001000000;
165 static const int TGT_O_CLOEXEC = 002000000;
166 static const int TGT_O_SYNC = 004010000;
167 static const int TGT_O_PATH = 010000000;
171 static const unsigned TGT_MAP_SHARED = 0x00001;
172 static const unsigned TGT_MAP_PRIVATE = 0x00002;
173 static const unsigned TGT_MAP_32BIT = 0x00040;
174 static const unsigned TGT_MAP_ANON = 0x00020;
175 static const unsigned TGT_MAP_DENYWRITE = 0x00800;
176 static const unsigned TGT_MAP_EXECUTABLE = 0x01000;
177 static const unsigned TGT_MAP_FILE = 0x00000;
178 static const unsigned TGT_MAP_GROWSDOWN = 0x00100;
179 static const unsigned TGT_MAP_HUGETLB = 0x40000;
180 static const unsigned TGT_MAP_LOCKED = 0x02000;
181 static const unsigned TGT_MAP_NONBLOCK = 0x10000;
182 static const unsigned TGT_MAP_NORESERVE = 0x04000;
183 static const unsigned TGT_MAP_POPULATE = 0x08000;
184 static const unsigned TGT_MAP_STACK = 0x20000;
185 static const unsigned TGT_MAP_ANONYMOUS = 0x00020;
186 static const unsigned TGT_MAP_FIXED = 0x00010;
238 static const int TGT_SIGHUP = 0x000001;
239 static const int TGT_SIGINT = 0x000002;
240 static const int TGT_SIGQUIT = 0x000003;
241 static const int TGT_SIGILL = 0x000004;
242 static const int TGT_SIGTRAP = 0x000005;
243 static const int TGT_SIGABRT = 0x000006;
244 static const int TGT_SIGIOT = 0x000006;
245 static const int TGT_SIGBUS = 0x000007;
246 static const int TGT_SIGFPE = 0x000008;
247 static const int TGT_SIGKILL = 0x000009;
248 static const int TGT_SIGUSR1 = 0x00000a;
249 static const int TGT_SIGSEGV = 0x00000b;
250 static const int TGT_SIGUSR2 = 0x00000c;
251 static const int TGT_SIGPIPE = 0x00000d;
252 static const int TGT_SIGALRM = 0x00000e;
253 static const int TGT_SIGTERM = 0x00000f;
254 static const int TGT_SIGSTKFLT = 0x000010;
255 static const int TGT_SIGCHLD = 0x000011;
256 static const int TGT_SIGCONT = 0x000012;
257 static const int TGT_SIGSTOP = 0x000013;
258 static const int TGT_SIGTSTP = 0x000014;
259 static const int TGT_SIGTTIN = 0x000015;
260 static const int TGT_SIGTTOU = 0x000016;
261 static const int TGT_SIGURG = 0x000017;
262 static const int TGT_SIGXCPU = 0x000018;
263 static const int TGT_SIGXFSZ = 0x000019;
264 static const int TGT_SIGVTALRM = 0x00001a;
265 static const int TGT_SIGPROF = 0x00001b;
266 static const int TGT_SIGWINCH = 0x00001c;
267 static const int TGT_SIGIO = 0x00001d;
268 static const int TGT_SIGPOLL = 0x00001d;
269 static const int TGT_SIGPWR = 0x00001e;
270 static const int TGT_SIGSYS = 0x00001f;
271 static const int TGT_SIGUNUSED = 0x00001f;
275 static const int TGT_O_RDONLY = 000000000;
276 static const int TGT_O_WRONLY = 000000001;
277 static const int TGT_O_RDWR = 000000002;
278 static const int TGT_O_CREAT = 000000100;
279 static const int TGT_O_EXCL = 000000200;
280 static const int TGT_O_NOCTTY = 000000400;
281 static const int TGT_O_TRUNC = 000001000;
282 static const int TGT_O_APPEND = 000002000;
283 static const int TGT_O_NONBLOCK = 000004000;
284 static const int TGT_O_DSYNC = 000010000;
285 static const int TGT_FASYNC = 000020000;
286 static const int TGT_O_DIRECT = 000040000;
287 static const int TGT_O_LARGEFILE = 000100000;
288 static const int TGT_O_DIRECTORY = 000200000;
289 static const int TGT_O_NOFOLLOW = 000400000;
290 static const int TGT_O_NOATIME = 001000000;
291 static const int TGT_O_CLOEXEC = 002000000;
292 static const int TGT_O_SYNC = 004010000;
293 static const int TGT_O_PATH = 010000000;
299 static const unsigned TGT_MAP_SHARED = 0x00001;
300 static const unsigned TGT_MAP_PRIVATE = 0x00002;
301 static const unsigned TGT_MAP_32BIT = 0x00040;
302 static const unsigned TGT_MAP_ANON = 0x00020;
303 static const unsigned TGT_MAP_DENYWRITE = 0x00800;
304 static const unsigned TGT_MAP_EXECUTABLE = 0x01000;
305 static const unsigned TGT_MAP_FILE = 0x00000;
306 static const unsigned TGT_MAP_GROWSDOWN = 0x00100;
307 static const unsigned TGT_MAP_HUGETLB = 0x40000;
308 static const unsigned TGT_MAP_LOCKED = 0x02000;
309 static const unsigned TGT_MAP_NONBLOCK = 0x10000;
310 static const unsigned TGT_MAP_NORESERVE = 0x04000;
311 static const unsigned TGT_MAP_POPULATE = 0x08000;
312 static const unsigned TGT_MAP_STACK = 0x20000;
313 static const unsigned TGT_MAP_ANONYMOUS = 0x00020;
314 static const unsigned TGT_MAP_FIXED = 0x00010;
const char * __attribute__((weak)) m5MainCommands[]
virtual void setMiscRegNoEffect(RegIndex misc_reg, RegVal val)=0
static const unsigned NUM_MMAP_FLAGS
ThreadContext is the external interface to all thread state for anything outside of the CPU...
const int StackPointerReg
static const ByteOrder byteOrder
void copyRegs(ThreadContext *src, ThreadContext *dest)
static const unsigned TGT_CLONE_SETTLS
virtual void setIntReg(RegIndex reg_idx, RegVal val)=0
static void archClone(uint64_t flags, Process *pp, Process *cp, ThreadContext *ptc, ThreadContext *ctc, uint64_t stack, uint64_t tls)
This struct is used to build target-OS-dependent tables that map the target's flags to the host's fla...
static const unsigned NUM_MMAP_FLAGS
static const int NUM_OPEN_FLAGS
static const int NUM_OPEN_FLAGS