OpenCores
URL https://opencores.org/ocsvn/openrisc/openrisc/trunk

Subversion Repositories openrisc

[/] [openrisc/] [trunk/] [gnu-old/] [gdb-7.1/] [gdb/] [linux-record.h] - Blame information for rev 853

Go to most recent revision | Details | Compare with Previous | View Log

Line No. Rev Author Line
1 227 jeremybenn
/* Process record and replay target code for GNU/Linux.
2
 
3
   Copyright (C) 2008, 2009, 2010 Free Software Foundation, Inc.
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
9
   the Free Software Foundation; either version 3 of the License, or
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
18
   along with this program.  If not, see <http://www.gnu.org/licenses/>.  */
19
 
20
#ifndef _LINUX_RECORD_H_
21
#define _LINUX_RECORD_H_
22
 
23
struct linux_record_tdep
24
{
25
  /* The size of the type that will be used in a system call.  */
26
  int size_pointer;
27
  int size__old_kernel_stat;
28
  int size_tms;
29
  int size_loff_t;
30
  int size_flock;
31
  int size_oldold_utsname;
32
  int size_ustat;
33
  int size_old_sigaction;
34
  int size_old_sigset_t;
35
  int size_rlimit;
36
  int size_rusage;
37
  int size_timeval;
38
  int size_timezone;
39
  int size_old_gid_t;
40
  int size_old_uid_t;
41
  int size_fd_set;
42
  int size_dirent;
43
  int size_dirent64;
44
  int size_statfs;
45
  int size_statfs64;
46
  int size_sockaddr;
47
  int size_int;
48
  int size_long;
49
  int size_ulong;
50
  int size_msghdr;
51
  int size_itimerval;
52
  int size_stat;
53
  int size_old_utsname;
54
  int size_sysinfo;
55
  int size_msqid_ds;
56
  int size_shmid_ds;
57
  int size_new_utsname;
58
  int size_timex;
59
  int size_mem_dqinfo;
60
  int size_if_dqblk;
61
  int size_fs_quota_stat;
62
  int size_timespec;
63
  int size_pollfd;
64
  int size_NFS_FHSIZE;
65
  int size_knfsd_fh;
66
  int size_TASK_COMM_LEN;
67
  int size_sigaction;
68
  int size_sigset_t;
69
  int size_siginfo_t;
70
  int size_cap_user_data_t;
71
  int size_stack_t;
72
  int size_off_t;
73
  int size_stat64;
74
  int size_gid_t;
75
  int size_uid_t;
76
  int size_PAGE_SIZE;
77
  int size_flock64;
78
  int size_user_desc;
79
  int size_io_event;
80
  int size_iocb;
81
  int size_epoll_event;
82
  int size_itimerspec;
83
  int size_mq_attr;
84
  int size_siginfo;
85
  int size_termios;
86
  int size_termios2;
87
  int size_pid_t;
88
  int size_winsize;
89
  int size_serial_struct;
90
  int size_serial_icounter_struct;
91
  int size_hayes_esp_config;
92
  int size_size_t;
93
  int size_iovec;
94
 
95
  /* The values of the second argument of system call "sys_ioctl".  */
96
  int ioctl_TCGETS;
97
  int ioctl_TCSETS;
98
  int ioctl_TCSETSW;
99
  int ioctl_TCSETSF;
100
  int ioctl_TCGETA;
101
  int ioctl_TCSETA;
102
  int ioctl_TCSETAW;
103
  int ioctl_TCSETAF;
104
  int ioctl_TCSBRK;
105
  int ioctl_TCXONC;
106
  int ioctl_TCFLSH;
107
  int ioctl_TIOCEXCL;
108
  int ioctl_TIOCNXCL;
109
  int ioctl_TIOCSCTTY;
110
  int ioctl_TIOCGPGRP;
111
  int ioctl_TIOCSPGRP;
112
  int ioctl_TIOCOUTQ;
113
  int ioctl_TIOCSTI;
114
  int ioctl_TIOCGWINSZ;
115
  int ioctl_TIOCSWINSZ;
116
  int ioctl_TIOCMGET;
117
  int ioctl_TIOCMBIS;
118
  int ioctl_TIOCMBIC;
119
  int ioctl_TIOCMSET;
120
  int ioctl_TIOCGSOFTCAR;
121
  int ioctl_TIOCSSOFTCAR;
122
  int ioctl_FIONREAD;
123
  int ioctl_TIOCINQ;
124
  int ioctl_TIOCLINUX;
125
  int ioctl_TIOCCONS;
126
  int ioctl_TIOCGSERIAL;
127
  int ioctl_TIOCSSERIAL;
128
  int ioctl_TIOCPKT;
129
  int ioctl_FIONBIO;
130
  int ioctl_TIOCNOTTY;
131
  int ioctl_TIOCSETD;
132
  int ioctl_TIOCGETD;
133
  int ioctl_TCSBRKP;
134
  int ioctl_TIOCTTYGSTRUCT;
135
  int ioctl_TIOCSBRK;
136
  int ioctl_TIOCCBRK;
137
  int ioctl_TIOCGSID;
138
  int ioctl_TCGETS2;
139
  int ioctl_TCSETS2;
140
  int ioctl_TCSETSW2;
141
  int ioctl_TCSETSF2;
142
  int ioctl_TIOCGPTN;
143
  int ioctl_TIOCSPTLCK;
144
  int ioctl_FIONCLEX;
145
  int ioctl_FIOCLEX;
146
  int ioctl_FIOASYNC;
147
  int ioctl_TIOCSERCONFIG;
148
  int ioctl_TIOCSERGWILD;
149
  int ioctl_TIOCSERSWILD;
150
  int ioctl_TIOCGLCKTRMIOS;
151
  int ioctl_TIOCSLCKTRMIOS;
152
  int ioctl_TIOCSERGSTRUCT;
153
  int ioctl_TIOCSERGETLSR;
154
  int ioctl_TIOCSERGETMULTI;
155
  int ioctl_TIOCSERSETMULTI;
156
  int ioctl_TIOCMIWAIT;
157
  int ioctl_TIOCGICOUNT;
158
  int ioctl_TIOCGHAYESESP;
159
  int ioctl_TIOCSHAYESESP;
160
  int ioctl_FIOQSIZE;
161
 
162
  /* The values of the second argument of system call "sys_fcntl"
163
     and "sys_fcntl64".  */
164
  int fcntl_F_GETLK;
165
  int fcntl_F_GETLK64;
166
  int fcntl_F_SETLK64;
167
  int fcntl_F_SETLKW64;
168
 
169
  /* The number of the registers that are used as the arguments of
170
     a system call.  */
171
  int arg1;
172
  int arg2;
173
  int arg3;
174
  int arg4;
175
  int arg5;
176
  int arg6;
177
};
178
 
179
/* Enum that defines the gdb-canonical set of Linux syscall identifiers.
180
   Different architectures will have different sets of syscall ids, and
181
   each must provide a mapping from their set to this one.  */
182
 
183
enum gdb_syscall {
184
  gdb_sys_restart_syscall = 0,
185
  gdb_sys_exit = 1,
186
  gdb_sys_fork = 2,
187
  gdb_sys_read = 3,
188
  gdb_sys_write = 4,
189
  gdb_sys_open = 5,
190
  gdb_sys_close = 6,
191
  gdb_sys_waitpid = 7,
192
  gdb_sys_creat = 8,
193
  gdb_sys_link = 9,
194
  gdb_sys_unlink = 10,
195
  gdb_sys_execve = 11,
196
  gdb_sys_chdir = 12,
197
  gdb_sys_time = 13,
198
  gdb_sys_mknod = 14,
199
  gdb_sys_chmod = 15,
200
  gdb_sys_lchown16 = 16,
201
  gdb_sys_ni_syscall17 = 17,
202
  gdb_sys_stat = 18,
203
  gdb_sys_lseek = 19,
204
  gdb_sys_getpid = 20,
205
  gdb_sys_mount = 21,
206
  gdb_sys_oldumount = 22,
207
  gdb_sys_setuid16 = 23,
208
  gdb_sys_getuid16 = 24,
209
  gdb_sys_stime = 25,
210
  gdb_sys_ptrace = 26,
211
  gdb_sys_alarm = 27,
212
  gdb_sys_fstat = 28,
213
  gdb_sys_pause = 29,
214
  gdb_sys_utime = 30,
215
  gdb_sys_ni_syscall31 = 31,
216
  gdb_sys_ni_syscall32 = 32,
217
  gdb_sys_access = 33,
218
  gdb_sys_nice = 34,
219
  gdb_sys_ni_syscall35 = 35,
220
  gdb_sys_sync = 36,
221
  gdb_sys_kill = 37,
222
  gdb_sys_rename = 38,
223
  gdb_sys_mkdir = 39,
224
  gdb_sys_rmdir = 40,
225
  gdb_sys_dup = 41,
226
  gdb_sys_pipe = 42,
227
  gdb_sys_times = 43,
228
  gdb_sys_ni_syscall44 = 44,
229
  gdb_sys_brk = 45,
230
  gdb_sys_setgid16 = 46,
231
  gdb_sys_getgid16 = 47,
232
  gdb_sys_signal = 48,
233
  gdb_sys_geteuid16 = 49,
234
  gdb_sys_getegid16 = 50,
235
  gdb_sys_acct = 51,
236
  gdb_sys_umount = 52,
237
  gdb_sys_ni_syscall53 = 53,
238
  gdb_sys_ioctl = 54,
239
  gdb_sys_fcntl = 55,
240
  gdb_sys_ni_syscall56 = 56,
241
  gdb_sys_setpgid = 57,
242
  gdb_sys_ni_syscall58 = 58,
243
  gdb_sys_olduname = 59,
244
  gdb_sys_umask = 60,
245
  gdb_sys_chroot = 61,
246
  gdb_sys_ustat = 62,
247
  gdb_sys_dup2 = 63,
248
  gdb_sys_getppid = 64,
249
  gdb_sys_getpgrp = 65,
250
  gdb_sys_setsid = 66,
251
  gdb_sys_sigaction = 67,
252
  gdb_sys_sgetmask = 68,
253
  gdb_sys_ssetmask = 69,
254
  gdb_sys_setreuid16 = 70,
255
  gdb_sys_setregid16 = 71,
256
  gdb_sys_sigsuspend = 72,
257
  gdb_sys_sigpending = 73,
258
  gdb_sys_sethostname = 74,
259
  gdb_sys_setrlimit = 75,
260
  gdb_sys_old_getrlimit = 76,
261
  gdb_sys_getrusage = 77,
262
  gdb_sys_gettimeofday = 78,
263
  gdb_sys_settimeofday = 79,
264
  gdb_sys_getgroups16 = 80,
265
  gdb_sys_setgroups16 = 81,
266
  gdb_old_select = 82,
267
  gdb_sys_symlink = 83,
268
  gdb_sys_lstat = 84,
269
  gdb_sys_readlink = 85,
270
  gdb_sys_uselib = 86,
271
  gdb_sys_swapon = 87,
272
  gdb_sys_reboot = 88,
273
  gdb_old_readdir = 89,
274
  gdb_old_mmap = 90,
275
  gdb_sys_munmap = 91,
276
  gdb_sys_truncate = 92,
277
  gdb_sys_ftruncate = 93,
278
  gdb_sys_fchmod = 94,
279
  gdb_sys_fchown16 = 95,
280
  gdb_sys_getpriority = 96,
281
  gdb_sys_setpriority = 97,
282
  gdb_sys_ni_syscall98 = 98,
283
  gdb_sys_statfs = 99,
284
  gdb_sys_fstatfs = 100,
285
  gdb_sys_ioperm = 101,
286
  gdb_sys_socketcall = 102,
287
  gdb_sys_syslog = 103,
288
  gdb_sys_setitimer = 104,
289
  gdb_sys_getitimer = 105,
290
  gdb_sys_newstat = 106,
291
  gdb_sys_newlstat = 107,
292
  gdb_sys_newfstat = 108,
293
  gdb_sys_uname = 109,
294
  gdb_sys_iopl = 110,
295
  gdb_sys_vhangup = 111,
296
  gdb_sys_ni_syscall112 = 112,
297
  gdb_sys_vm86old = 113,
298
  gdb_sys_wait4 = 114,
299
  gdb_sys_swapoff = 115,
300
  gdb_sys_sysinfo = 116,
301
  gdb_sys_ipc = 117,
302
  gdb_sys_fsync = 118,
303
  gdb_sys_sigreturn = 119,
304
  gdb_sys_clone = 120,
305
  gdb_sys_setdomainname = 121,
306
  gdb_sys_newuname = 122,
307
  gdb_sys_modify_ldt = 123,
308
  gdb_sys_adjtimex = 124,
309
  gdb_sys_mprotect = 125,
310
  gdb_sys_sigprocmask = 126,
311
  gdb_sys_ni_syscall127 = 127,
312
  gdb_sys_init_module = 128,
313
  gdb_sys_delete_module = 129,
314
  gdb_sys_ni_syscall130 = 130,
315
  gdb_sys_quotactl = 131,
316
  gdb_sys_getpgid = 132,
317
  gdb_sys_fchdir = 133,
318
  gdb_sys_bdflush = 134,
319
  gdb_sys_sysfs = 135,
320
  gdb_sys_personality = 136,
321
  gdb_sys_ni_syscall137 = 137,
322
  gdb_sys_setfsuid16 = 138,
323
  gdb_sys_setfsgid16 = 139,
324
  gdb_sys_llseek = 140,
325
  gdb_sys_getdents = 141,
326
  gdb_sys_select = 142,
327
  gdb_sys_flock = 143,
328
  gdb_sys_msync = 144,
329
  gdb_sys_readv = 145,
330
  gdb_sys_writev = 146,
331
  gdb_sys_getsid = 147,
332
  gdb_sys_fdatasync = 148,
333
  gdb_sys_sysctl = 149,
334
  gdb_sys_mlock = 150,
335
  gdb_sys_munlock = 151,
336
  gdb_sys_mlockall = 152,
337
  gdb_sys_munlockall = 153,
338
  gdb_sys_sched_setparam = 154,
339
  gdb_sys_sched_getparam = 155,
340
  gdb_sys_sched_setscheduler = 156,
341
  gdb_sys_sched_getscheduler = 157,
342
  gdb_sys_sched_yield = 158,
343
  gdb_sys_sched_get_priority_max = 159,
344
  gdb_sys_sched_get_priority_min = 160,
345
  gdb_sys_sched_rr_get_interval = 161,
346
  gdb_sys_nanosleep = 162,
347
  gdb_sys_mremap = 163,
348
  gdb_sys_setresuid16 = 164,
349
  gdb_sys_getresuid16 = 165,
350
  gdb_sys_vm86 = 166,
351
  gdb_sys_ni_syscall167 = 167,
352
  gdb_sys_poll = 168,
353
  gdb_sys_nfsservctl = 169,
354
  gdb_sys_setresgid16 = 170,
355
  gdb_sys_getresgid16 = 171,
356
  gdb_sys_prctl = 172,
357
  gdb_sys_rt_sigreturn = 173,
358
  gdb_sys_rt_sigaction = 174,
359
  gdb_sys_rt_sigprocmask = 175,
360
  gdb_sys_rt_sigpending = 176,
361
  gdb_sys_rt_sigtimedwait = 177,
362
  gdb_sys_rt_sigqueueinfo = 178,
363
  gdb_sys_rt_sigsuspend = 179,
364
  gdb_sys_pread64 = 180,
365
  gdb_sys_pwrite64 = 181,
366
  gdb_sys_chown16 = 182,
367
  gdb_sys_getcwd = 183,
368
  gdb_sys_capget = 184,
369
  gdb_sys_capset = 185,
370
  gdb_sys_sigaltstack = 186,
371
  gdb_sys_sendfile = 187,
372
  gdb_sys_ni_syscall188 = 188,
373
  gdb_sys_ni_syscall189 = 189,
374
  gdb_sys_vfork = 190,
375
  gdb_sys_getrlimit = 191,
376
  gdb_sys_mmap2 = 192,
377
  gdb_sys_truncate64 = 193,
378
  gdb_sys_ftruncate64 = 194,
379
  gdb_sys_stat64 = 195,
380
  gdb_sys_lstat64 = 196,
381
  gdb_sys_fstat64 = 197,
382
  gdb_sys_lchown = 198,
383
  gdb_sys_getuid = 199,
384
  gdb_sys_getgid = 200,
385
  gdb_sys_geteuid = 201,
386
  gdb_sys_getegid = 202,
387
  gdb_sys_setreuid = 203,
388
  gdb_sys_setregid = 204,
389
  gdb_sys_getgroups = 205,
390
  gdb_sys_setgroups = 206,
391
  gdb_sys_fchown = 207,
392
  gdb_sys_setresuid = 208,
393
  gdb_sys_getresuid = 209,
394
  gdb_sys_setresgid = 210,
395
  gdb_sys_getresgid = 211,
396
  gdb_sys_chown = 212,
397
  gdb_sys_setuid = 213,
398
  gdb_sys_setgid = 214,
399
  gdb_sys_setfsuid = 215,
400
  gdb_sys_setfsgid = 216,
401
  gdb_sys_pivot_root = 217,
402
  gdb_sys_mincore = 218,
403
  gdb_sys_madvise = 219,
404
  gdb_sys_getdents64 = 220,
405
  gdb_sys_fcntl64 = 221,
406
  gdb_sys_ni_syscall222 = 222,
407
  gdb_sys_ni_syscall223 = 223,
408
  gdb_sys_gettid = 224,
409
  gdb_sys_readahead = 225,
410
  gdb_sys_setxattr = 226,
411
  gdb_sys_lsetxattr = 227,
412
  gdb_sys_fsetxattr = 228,
413
  gdb_sys_getxattr = 229,
414
  gdb_sys_lgetxattr = 230,
415
  gdb_sys_fgetxattr = 231,
416
  gdb_sys_listxattr = 232,
417
  gdb_sys_llistxattr = 233,
418
  gdb_sys_flistxattr = 234,
419
  gdb_sys_removexattr = 235,
420
  gdb_sys_lremovexattr = 236,
421
  gdb_sys_fremovexattr = 237,
422
  gdb_sys_tkill = 238,
423
  gdb_sys_sendfile64 = 239,
424
  gdb_sys_futex = 240,
425
  gdb_sys_sched_setaffinity = 241,
426
  gdb_sys_sched_getaffinity = 242,
427
  gdb_sys_set_thread_area = 243,
428
  gdb_sys_get_thread_area = 244,
429
  gdb_sys_io_setup = 245,
430
  gdb_sys_io_destroy = 246,
431
  gdb_sys_io_getevents = 247,
432
  gdb_sys_io_submit = 248,
433
  gdb_sys_io_cancel = 249,
434
  gdb_sys_fadvise64 = 250,
435
  gdb_sys_ni_syscall251 = 251,
436
  gdb_sys_exit_group = 252,
437
  gdb_sys_lookup_dcookie = 253,
438
  gdb_sys_epoll_create = 254,
439
  gdb_sys_epoll_ctl = 255,
440
  gdb_sys_epoll_wait = 256,
441
  gdb_sys_remap_file_pages = 257,
442
  gdb_sys_set_tid_address = 258,
443
  gdb_sys_timer_create = 259,
444
  gdb_sys_timer_settime = 260,
445
  gdb_sys_timer_gettime = 261,
446
  gdb_sys_timer_getoverrun = 262,
447
  gdb_sys_timer_delete = 263,
448
  gdb_sys_clock_settime = 264,
449
  gdb_sys_clock_gettime = 265,
450
  gdb_sys_clock_getres = 266,
451
  gdb_sys_clock_nanosleep = 267,
452
  gdb_sys_statfs64 = 268,
453
  gdb_sys_fstatfs64 = 269,
454
  gdb_sys_tgkill = 270,
455
  gdb_sys_utimes = 271,
456
  gdb_sys_fadvise64_64 = 272,
457
  gdb_sys_ni_syscall273 = 273,
458
  gdb_sys_mbind = 274,
459
  gdb_sys_get_mempolicy = 275,
460
  gdb_sys_set_mempolicy = 276,
461
  gdb_sys_mq_open = 277,
462
  gdb_sys_mq_unlink = 278,
463
  gdb_sys_mq_timedsend = 279,
464
  gdb_sys_mq_timedreceive = 280,
465
  gdb_sys_mq_notify = 281,
466
  gdb_sys_mq_getsetattr = 282,
467
  gdb_sys_kexec_load = 283,
468
  gdb_sys_waitid = 284,
469
  gdb_sys_ni_syscall285 = 285,
470
  gdb_sys_add_key = 286,
471
  gdb_sys_request_key = 287,
472
  gdb_sys_keyctl = 288,
473
  gdb_sys_ioprio_set = 289,
474
  gdb_sys_ioprio_get = 290,
475
  gdb_sys_inotify_init = 291,
476
  gdb_sys_inotify_add_watch = 292,
477
  gdb_sys_inotify_rm_watch = 293,
478
  gdb_sys_migrate_pages = 294,
479
  gdb_sys_openat = 295,
480
  gdb_sys_mkdirat = 296,
481
  gdb_sys_mknodat = 297,
482
  gdb_sys_fchownat = 298,
483
  gdb_sys_futimesat = 299,
484
  gdb_sys_fstatat64 = 300,
485
  gdb_sys_unlinkat = 301,
486
  gdb_sys_renameat = 302,
487
  gdb_sys_linkat = 303,
488
  gdb_sys_symlinkat = 304,
489
  gdb_sys_readlinkat = 305,
490
  gdb_sys_fchmodat = 306,
491
  gdb_sys_faccessat = 307,
492
  gdb_sys_pselect6 = 308,
493
  gdb_sys_ppoll = 309,
494
  gdb_sys_unshare = 310,
495
  gdb_sys_set_robust_list = 311,
496
  gdb_sys_get_robust_list = 312,
497
  gdb_sys_splice = 313,
498
  gdb_sys_sync_file_range = 314,
499
  gdb_sys_tee = 315,
500
  gdb_sys_vmsplice = 316,
501
  gdb_sys_move_pages = 317,
502
  gdb_sys_getcpu = 318,
503
  gdb_sys_epoll_pwait = 319,
504
  gdb_sys_socket = 500,
505
  gdb_sys_connect = 501,
506
  gdb_sys_accept = 502,
507
  gdb_sys_sendto = 503,
508
  gdb_sys_recvfrom = 504,
509
  gdb_sys_sendmsg = 505,
510
  gdb_sys_recvmsg = 506,
511
  gdb_sys_shutdown = 507,
512
  gdb_sys_bind = 508,
513
  gdb_sys_listen = 509,
514
  gdb_sys_getsockname = 510,
515
  gdb_sys_getpeername = 511,
516
  gdb_sys_socketpair = 512,
517
  gdb_sys_setsockopt = 513,
518
  gdb_sys_getsockopt = 514,
519
  gdb_sys_recv = 515,
520
  gdb_sys_shmget = 520,
521
  gdb_sys_shmat = 521,
522
  gdb_sys_shmctl = 522,
523
  gdb_sys_semget = 523,
524
  gdb_sys_semop = 524,
525
  gdb_sys_semctl = 525,
526
  gdb_sys_shmdt = 527,
527
  gdb_sys_msgget = 528,
528
  gdb_sys_msgsnd = 529,
529
  gdb_sys_msgrcv = 530,
530
  gdb_sys_msgctl = 531,
531
  gdb_sys_semtimedop = 532,
532
  gdb_sys_newfstatat = 540,
533
};
534
 
535
/* Record a linux syscall.  */
536
 
537
extern int record_linux_system_call (enum gdb_syscall num,
538
                                     struct regcache *regcache,
539
                                     struct linux_record_tdep *tdep);
540
#endif /* _LINUX_RECORD_H_ */

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.