Enable XML target descriptions for x86.
[deliverable/binutils-gdb.git] / gdb / amd64-linux-tdep.h
CommitLineData
8695c747
DJ
1/* Target-dependent code for GNU/Linux AMD64.
2
4c38e0a4 3 Copyright (C) 2006, 2007, 2008, 2009, 2010 Free Software Foundation, Inc.
8695c747
DJ
4
5 This file is part of GDB.
6
7 This program is free software; you can redistribute it and/or modify
8 it under the terms of the GNU General Public License as published by
a9762ec7 9 the Free Software Foundation; either version 3 of the License, or
8695c747
DJ
10 (at your option) any later version.
11
12 This program is distributed in the hope that it will be useful,
13 but WITHOUT ANY WARRANTY; without even the implied warranty of
14 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15 GNU General Public License for more details.
16
17 You should have received a copy of the GNU General Public License
a9762ec7 18 along with this program. If not, see <http://www.gnu.org/licenses/>. */
8695c747
DJ
19
20#ifndef AMD64_LINUX_TDEP_H
21#define AMD64_LINUX_TDEP_H
22
23/* Like for i386 GNU/Linux, there is an extra "register"
24 used to control syscall restarting. */
25
26/* Register number for the "orig_rax" register. If this register
27 contains a value >= 0 it is interpreted as the system call number
28 that the kernel is supposed to restart. */
29#define AMD64_LINUX_ORIG_RAX_REGNUM (AMD64_MXCSR_REGNUM + 1)
30
31/* Total number of registers for GNU/Linux. */
32#define AMD64_LINUX_NUM_REGS (AMD64_LINUX_ORIG_RAX_REGNUM + 1)
33
90884b2b
L
34/* Linux target description. */
35extern struct target_desc *tdesc_amd64_linux;
36
13b6d1d4
MS
37/* Enum that defines the syscall identifiers for amd64 linux.
38 Used for process record/replay, these will be translated into
39 a gdb-canonical set of syscall ids in linux-record.c. */
40
41enum amd64_syscall {
42 amd64_sys_read = 0,
43 amd64_sys_write = 1,
44 amd64_sys_open = 2,
45 amd64_sys_close = 3,
46 amd64_sys_newstat = 4,
47 amd64_sys_newfstat = 5,
48 amd64_sys_newlstat = 6,
49 amd64_sys_poll = 7,
50 amd64_sys_lseek = 8,
51 amd64_sys_mmap = 9,
52 amd64_sys_mprotect = 10,
53 amd64_sys_munmap = 11,
54 amd64_sys_brk = 12,
55 amd64_sys_rt_sigaction = 13,
56 amd64_sys_rt_sigprocmask = 14,
57 amd64_sys_rt_sigreturn = 15,
58 amd64_sys_ioctl = 16,
59 amd64_sys_pread64 = 17,
60 amd64_sys_pwrite64 = 18,
61 amd64_sys_readv = 19,
62 amd64_sys_writev = 20,
63 amd64_sys_access = 21,
64 amd64_sys_pipe = 22,
65 amd64_sys_select = 23,
66 amd64_sys_sched_yield = 24,
67 amd64_sys_mremap = 25,
68 amd64_sys_msync = 26,
69 amd64_sys_mincore = 27,
70 amd64_sys_madvise = 28,
71 amd64_sys_shmget = 29,
72 amd64_sys_shmat = 30,
73 amd64_sys_shmctl = 31,
74 amd64_sys_dup = 32,
75 amd64_sys_dup2 = 33,
76 amd64_sys_pause = 34,
77 amd64_sys_nanosleep = 35,
78 amd64_sys_getitimer = 36,
79 amd64_sys_alarm = 37,
80 amd64_sys_setitimer = 38,
81 amd64_sys_getpid = 39,
82 amd64_sys_sendfile64 = 40,
83 amd64_sys_socket = 41,
84 amd64_sys_connect = 42,
85 amd64_sys_accept = 43,
86 amd64_sys_sendto = 44,
87 amd64_sys_recvfrom = 45,
88 amd64_sys_sendmsg = 46,
89 amd64_sys_recvmsg = 47,
90 amd64_sys_shutdown = 48,
91 amd64_sys_bind = 49,
92 amd64_sys_listen = 50,
93 amd64_sys_getsockname = 51,
94 amd64_sys_getpeername = 52,
95 amd64_sys_socketpair = 53,
96 amd64_sys_setsockopt = 54,
97 amd64_sys_getsockopt = 55,
98 amd64_sys_clone = 56,
99 amd64_sys_fork = 57,
100 amd64_sys_vfork = 58,
101 amd64_sys_execve = 59,
102 amd64_sys_exit = 60,
103 amd64_sys_wait4 = 61,
104 amd64_sys_kill = 62,
105 amd64_sys_uname = 63,
106 amd64_sys_semget = 64,
107 amd64_sys_semop = 65,
108 amd64_sys_semctl = 66,
109 amd64_sys_shmdt = 67,
110 amd64_sys_msgget = 68,
111 amd64_sys_msgsnd = 69,
112 amd64_sys_msgrcv = 70,
113 amd64_sys_msgctl = 71,
114 amd64_sys_fcntl = 72,
115 amd64_sys_flock = 73,
116 amd64_sys_fsync = 74,
117 amd64_sys_fdatasync = 75,
118 amd64_sys_truncate = 76,
119 amd64_sys_ftruncate = 77,
120 amd64_sys_getdents = 78,
121 amd64_sys_getcwd = 79,
122 amd64_sys_chdir = 80,
123 amd64_sys_fchdir = 81,
124 amd64_sys_rename = 82,
125 amd64_sys_mkdir = 83,
126 amd64_sys_rmdir = 84,
127 amd64_sys_creat = 85,
128 amd64_sys_link = 86,
129 amd64_sys_unlink = 87,
130 amd64_sys_symlink = 88,
131 amd64_sys_readlink = 89,
132 amd64_sys_chmod = 90,
133 amd64_sys_fchmod = 91,
134 amd64_sys_chown = 92,
135 amd64_sys_fchown = 93,
136 amd64_sys_lchown = 94,
137 amd64_sys_umask = 95,
138 amd64_sys_gettimeofday = 96,
139 amd64_sys_getrlimit = 97,
140 amd64_sys_getrusage = 98,
141 amd64_sys_sysinfo = 99,
142 amd64_sys_times = 100,
143 amd64_sys_ptrace = 101,
144 amd64_sys_getuid = 102,
145 amd64_sys_syslog = 103,
146 amd64_sys_getgid = 104,
147 amd64_sys_setuid = 105,
148 amd64_sys_setgid = 106,
149 amd64_sys_geteuid = 107,
150 amd64_sys_getegid = 108,
151 amd64_sys_setpgid = 109,
152 amd64_sys_getppid = 110,
153 amd64_sys_getpgrp = 111,
154 amd64_sys_setsid = 112,
155 amd64_sys_setreuid = 113,
156 amd64_sys_setregid = 114,
157 amd64_sys_getgroups = 115,
158 amd64_sys_setgroups = 116,
159 amd64_sys_setresuid = 117,
160 amd64_sys_getresuid = 118,
161 amd64_sys_setresgid = 119,
162 amd64_sys_getresgid = 120,
163 amd64_sys_getpgid = 121,
164 amd64_sys_setfsuid = 122,
165 amd64_sys_setfsgid = 123,
166 amd64_sys_getsid = 124,
167 amd64_sys_capget = 125,
168 amd64_sys_capset = 126,
169 amd64_sys_rt_sigpending = 127,
170 amd64_sys_rt_sigtimedwait = 128,
171 amd64_sys_rt_sigqueueinfo = 129,
172 amd64_sys_rt_sigsuspend = 130,
173 amd64_sys_sigaltstack = 131,
174 amd64_sys_utime = 132,
175 amd64_sys_mknod = 133,
176 amd64_sys_personality = 135,
177 amd64_sys_ustat = 136,
178 amd64_sys_statfs = 137,
179 amd64_sys_fstatfs = 138,
180 amd64_sys_sysfs = 139,
181 amd64_sys_getpriority = 140,
182 amd64_sys_setpriority = 141,
183 amd64_sys_sched_setparam = 142,
184 amd64_sys_sched_getparam = 143,
185 amd64_sys_sched_setscheduler = 144,
186 amd64_sys_sched_getscheduler = 145,
187 amd64_sys_sched_get_priority_max = 146,
188 amd64_sys_sched_get_priority_min = 147,
189 amd64_sys_sched_rr_get_interval = 148,
190 amd64_sys_mlock = 149,
191 amd64_sys_munlock = 150,
192 amd64_sys_mlockall = 151,
193 amd64_sys_munlockall = 152,
194 amd64_sys_vhangup = 153,
195 amd64_sys_modify_ldt = 154,
196 amd64_sys_pivot_root = 155,
197 amd64_sys_sysctl = 156,
198 amd64_sys_prctl = 157,
199 amd64_sys_arch_prctl = 158,
200 amd64_sys_adjtimex = 159,
201 amd64_sys_setrlimit = 160,
202 amd64_sys_chroot = 161,
203 amd64_sys_sync = 162,
204 amd64_sys_acct = 163,
205 amd64_sys_settimeofday = 164,
206 amd64_sys_mount = 165,
207 amd64_sys_umount = 166,
208 amd64_sys_swapon = 167,
209 amd64_sys_swapoff = 168,
210 amd64_sys_reboot = 169,
211 amd64_sys_sethostname = 170,
212 amd64_sys_setdomainname = 171,
213 amd64_sys_iopl = 172,
214 amd64_sys_ioperm = 173,
215 amd64_sys_init_module = 175,
216 amd64_sys_delete_module = 176,
217 amd64_sys_quotactl = 179,
218 amd64_sys_nfsservctl = 180,
219 amd64_sys_gettid = 186,
220 amd64_sys_readahead = 187,
221 amd64_sys_setxattr = 188,
222 amd64_sys_lsetxattr = 189,
223 amd64_sys_fsetxattr = 190,
224 amd64_sys_getxattr = 191,
225 amd64_sys_lgetxattr = 192,
226 amd64_sys_fgetxattr = 193,
227 amd64_sys_listxattr = 194,
228 amd64_sys_llistxattr = 195,
229 amd64_sys_flistxattr = 196,
230 amd64_sys_removexattr = 197,
231 amd64_sys_lremovexattr = 198,
232 amd64_sys_fremovexattr = 199,
233 amd64_sys_tkill = 200,
234 amd64_sys_time = 201,
235 amd64_sys_futex = 202,
236 amd64_sys_sched_setaffinity = 203,
237 amd64_sys_sched_getaffinity = 204,
238 amd64_sys_io_setup = 206,
239 amd64_sys_io_destroy = 207,
240 amd64_sys_io_getevents = 208,
241 amd64_sys_io_submit = 209,
242 amd64_sys_io_cancel = 210,
243 amd64_sys_lookup_dcookie = 212,
244 amd64_sys_epoll_create = 213,
245 amd64_sys_remap_file_pages = 216,
246 amd64_sys_getdents64 = 217,
247 amd64_sys_set_tid_address = 218,
248 amd64_sys_restart_syscall = 219,
249 amd64_sys_semtimedop = 220,
250 amd64_sys_fadvise64 = 221,
251 amd64_sys_timer_create = 222,
252 amd64_sys_timer_settime = 223,
253 amd64_sys_timer_gettime = 224,
254 amd64_sys_timer_getoverrun = 225,
255 amd64_sys_timer_delete = 226,
256 amd64_sys_clock_settime = 227,
257 amd64_sys_clock_gettime = 228,
258 amd64_sys_clock_getres = 229,
259 amd64_sys_clock_nanosleep = 230,
260 amd64_sys_exit_group = 231,
261 amd64_sys_epoll_wait = 232,
262 amd64_sys_epoll_ctl = 233,
263 amd64_sys_tgkill = 234,
264 amd64_sys_utimes = 235,
265 amd64_sys_mbind = 237,
266 amd64_sys_set_mempolicy = 238,
267 amd64_sys_get_mempolicy = 239,
268 amd64_sys_mq_open = 240,
269 amd64_sys_mq_unlink = 241,
270 amd64_sys_mq_timedsend = 242,
271 amd64_sys_mq_timedreceive = 243,
272 amd64_sys_mq_notify = 244,
273 amd64_sys_mq_getsetattr = 245,
274 amd64_sys_kexec_load = 246,
275 amd64_sys_waitid = 247,
276 amd64_sys_add_key = 248,
277 amd64_sys_request_key = 249,
278 amd64_sys_keyctl = 250,
279 amd64_sys_ioprio_set = 251,
280 amd64_sys_ioprio_get = 252,
281 amd64_sys_inotify_init = 253,
282 amd64_sys_inotify_add_watch = 254,
283 amd64_sys_inotify_rm_watch = 255,
284 amd64_sys_migrate_pages = 256,
285 amd64_sys_openat = 257,
286 amd64_sys_mkdirat = 258,
287 amd64_sys_mknodat = 259,
288 amd64_sys_fchownat = 260,
289 amd64_sys_futimesat = 261,
290 amd64_sys_newfstatat = 262,
291 amd64_sys_unlinkat = 263,
292 amd64_sys_renameat = 264,
293 amd64_sys_linkat = 265,
294 amd64_sys_symlinkat = 266,
295 amd64_sys_readlinkat = 267,
296 amd64_sys_fchmodat = 268,
297 amd64_sys_faccessat = 269,
298 amd64_sys_pselect6 = 270,
299 amd64_sys_ppoll = 271,
300 amd64_sys_unshare = 272,
301 amd64_sys_set_robust_list = 273,
302 amd64_sys_get_robust_list = 274,
303 amd64_sys_splice = 275,
304 amd64_sys_tee = 276,
305 amd64_sys_sync_file_range = 277,
306 amd64_sys_vmsplice = 278,
307 amd64_sys_move_pages = 279,
308};
309
8695c747 310#endif /* amd64-linux-tdep.h */
This page took 0.228862 seconds and 4 git commands to generate.