GDB (xrefs)

Macros | Functions | Variables
/tmp/gdb-8.1/gdb/amd64-linux-tdep.c File Reference
`#include "defs.h"`
`#include "arch-utils.h"`
`#include "frame.h"`
`#include "gdbcore.h"`
`#include "regcache.h"`
`#include "osabi.h"`
`#include "symtab.h"`
`#include "gdbtypes.h"`
`#include "reggroups.h"`
`#include "regset.h"`
`#include "parser-defs.h"`
`#include "user-regs.h"`
`#include "amd64-linux-tdep.h"`
`#include "i386-linux-tdep.h"`
`#include "linux-tdep.h"`
`#include "x86-xstate.h"`
`#include "amd64-tdep.h"`
`#include "solib-svr4.h"`
`#include "xml-syscall.h"`
`#include "glibc-tdep.h"`
`#include "arch/amd64.h"`
`#include "target-descriptions.h"`
`#include "record-full.h"`
`#include "linux-record.h"`

Go to the source code of this file.

## Macros
#define | XML_SYSCALL_FILENAME_AMD64 "syscalls/amd64-linux.xml"
#define | LINUX_SIGTRAMP_INSN0 0x48 /* mov $NNNNNNNN, %rax */
#define | LINUX_SIGTRAMP_OFFSET0 0
#define | LINUX_SIGTRAMP_INSN1 0x0f /* syscall */
#define | LINUX_SIGTRAMP_OFFSET1 7
#define | LINUX_SIGTRAMP_LEN (sizeof amd64_linux_sigtramp_code)
#define | AMD64_LINUX_UCONTEXT_SIGCONTEXT_OFFSET 40
#define | RECORD_ARCH_GET_FS 0x1003
#define | RECORD_ARCH_GET_GS 0x1004
#define | AMD64_LINUX_redzone 128
#define | AMD64_LINUX_xstate 512
#define | AMD64_LINUX_frame_size 560

## Functions
static CORE_ADDR | amd64_linux_sigtramp_start (struct frame_info *this_frame)
static int | amd64_linux_sigtramp_p (struct frame_info *this_frame)
static CORE_ADDR | amd64_linux_sigcontext_addr (struct frame_info *this_frame)
static LONGEST | amd64_linux_get_syscall_number (struct gdbarch *gdbarch, ptid_t ptid)
static int | amd64_linux_register_reggroup_p (struct gdbarch *gdbarch, int regnum, struct reggroup *group)
static void | amd64_linux_write_pc (struct regcache *regcache, CORE_ADDR pc)
static int | amd64_all_but_ip_registers_record (struct regcache *regcache)
static enum gdb_syscall | amd64_canonicalize_syscall (enum amd64_syscall syscall_number)
static int | amd64_linux_syscall_record_common (struct regcache *regcache, struct linux_record_tdep *linux_record_tdep_p)
static int | amd64_linux_syscall_record (struct regcache *regcache)
static int | amd64_x32_linux_syscall_record (struct regcache *regcache)
static int | amd64_linux_record_signal (struct gdbarch *gdbarch, struct regcache *regcache, enum gdb_signal signal)
const target_desc * | amd64_linux_read_description (uint64_t xcr0_features_bit, bool is_x32)
static const struct target_desc * | amd64_linux_core_read_description (struct gdbarch *gdbarch, struct target_ops *target, bfd *abfd)
static void | amd64_linux_supply_xstateregset (const struct regset *regset, struct regcache *regcache, int regnum, const void *xstateregs, size_t len)
static void | amd64_linux_collect_xstateregset (const struct regset *regset, const struct regcache *regcache, int regnum, void *xstateregs, size_t len)
static void | amd64_linux_iterate_over_regset_sections (struct gdbarch *gdbarch, iterate_over_regset_sections_cb *cb, void *cb_data, const struct regcache *regcache)
static int | amd64_dtrace_probe_is_enabled (struct gdbarch *gdbarch, CORE_ADDR addr)
static void | amd64_dtrace_enable_probe (struct gdbarch *gdbarch, CORE_ADDR addr)
static void | amd64_dtrace_disable_probe (struct gdbarch *gdbarch, CORE_ADDR addr)
static void | amd64_dtrace_parse_probe_argument (struct gdbarch *gdbarch, struct parser_state *pstate, int narg)
static void | amd64_linux_init_abi_common (struct gdbarch_info info, struct gdbarch *gdbarch)
static void | amd64_linux_init_abi (struct gdbarch_info info, struct gdbarch *gdbarch)
static void | amd64_x32_linux_init_abi (struct gdbarch_info info, struct gdbarch *gdbarch)
void | _initialize_amd64_linux_tdep (void)

## Variables
int | amd64_linux_gregset_reg_offset []
static const gdb_byte | amd64_linux_sigtramp_code []
static const gdb_byte | amd64_x32_linux_sigtramp_code []
static int | amd64_linux_sc_reg_offset []
static struct linux_record_tdep | amd64_linux_record_tdep
static struct linux_record_tdep | amd64_x32_linux_record_tdep
static const struct regset | amd64_linux_xstateregset
const gdb_byte | amd64_dtrace_disabled_probe_sequence_1 []
const gdb_byte | amd64_dtrace_disabled_probe_sequence_2 []
const gdb_byte | amd64_dtrace_enable_probe_sequence []
const gdb_byte | amd64_dtrace_disable_probe_sequence []

## Macro Definition Documentation

## ◆ AMD64_LINUX_frame_size

#define AMD64_LINUX_frame_size 560

Definition at line 1537 of file amd64-linux-tdep.c.

Referenced by amd64_linux_record_signal().

## ◆ AMD64_LINUX_redzone

#define AMD64_LINUX_redzone 128

Definition at line 1535 of file amd64-linux-tdep.c.

Referenced by amd64_linux_record_signal().

## ◆ AMD64_LINUX_UCONTEXT_SIGCONTEXT_OFFSET

#define AMD64_LINUX_UCONTEXT_SIGCONTEXT_OFFSET 40

Definition at line 197 of file amd64-linux-tdep.c.

Referenced by amd64_linux_sigcontext_addr().

## ◆ AMD64_LINUX_xstate

#define AMD64_LINUX_xstate 512

Definition at line 1536 of file amd64-linux-tdep.c.

Referenced by amd64_linux_record_signal().

## ◆ LINUX_SIGTRAMP_INSN0

#define LINUX_SIGTRAMP_INSN0 0x48 /* mov $NNNNNNNN, %rax */

Definition at line 108 of file amd64-linux-tdep.c.

Referenced by amd64_linux_sigtramp_start().

## ◆ LINUX_SIGTRAMP_INSN1

#define LINUX_SIGTRAMP_INSN1 0x0f /* syscall */

Definition at line 110 of file amd64-linux-tdep.c.

Referenced by amd64_linux_sigtramp_start().

## ◆ LINUX_SIGTRAMP_LEN

#define LINUX_SIGTRAMP_LEN (sizeof amd64_linux_sigtramp_code)

Definition at line 129 of file amd64-linux-tdep.c.

Referenced by amd64_linux_sigtramp_start().

## ◆ LINUX_SIGTRAMP_OFFSET0

#define LINUX_SIGTRAMP_OFFSET0 0

Definition at line 109 of file amd64-linux-tdep.c.

## ◆ LINUX_SIGTRAMP_OFFSET1

#define LINUX_SIGTRAMP_OFFSET1 7

Definition at line 111 of file amd64-linux-tdep.c.

Referenced by amd64_linux_sigtramp_start().

## ◆ RECORD_ARCH_GET_FS

#define RECORD_ARCH_GET_FS 0x1003

Definition at line 1449 of file amd64-linux-tdep.c.

Referenced by amd64_linux_syscall_record_common().

## ◆ RECORD_ARCH_GET_GS

#define RECORD_ARCH_GET_GS 0x1004

Definition at line 1450 of file amd64-linux-tdep.c.

Referenced by amd64_linux_syscall_record_common().

## ◆ XML_SYSCALL_FILENAME_AMD64

#define XML_SYSCALL_FILENAME_AMD64 "syscalls/amd64-linux.xml"

Definition at line 46 of file amd64-linux-tdep.c.

Referenced by amd64_linux_init_abi_common().

## Function Documentation

## ◆ _initialize_amd64_linux_tdep()

void _initialize_amd64_linux_tdep | ( | void |  | ) |

Definition at line 2275 of file amd64-linux-tdep.c.

References amd64_linux_init_abi(), amd64_linux_read_description(), amd64_x32_linux_init_abi(), GDB_OSABI_LINUX, gdbarch_register_osabi(), startswith(), X86_XSTATE_AVX_AVX512_MASK, X86_XSTATE_AVX_MASK, X86_XSTATE_AVX_MPX_AVX512_PKU_MASK, X86_XSTATE_AVX_MPX_MASK, X86_XSTATE_MPX_MASK, and X86_XSTATE_SSE_MASK.

## ◆ amd64_all_but_ip_registers_record()

static int amd64_all_but_ip_registers_record | ( | struct regcache * | regcache | ) |
| static

Definition at line 319 of file amd64-linux-tdep.c.

References AMD64_EFLAGS_REGNUM, AMD64_R10_REGNUM, AMD64_R11_REGNUM, AMD64_R12_REGNUM, AMD64_R13_REGNUM, AMD64_R14_REGNUM, AMD64_R15_REGNUM, AMD64_R8_REGNUM, AMD64_R9_REGNUM, AMD64_RAX_REGNUM, AMD64_RBP_REGNUM, AMD64_RBX_REGNUM, AMD64_RCX_REGNUM, AMD64_RDI_REGNUM, AMD64_RDX_REGNUM, AMD64_RSI_REGNUM, AMD64_RSP_REGNUM, and record_full_arch_list_add_reg().

Referenced by amd64_linux_record_signal(), and amd64_linux_syscall_record_common().

## ◆ amd64_canonicalize_syscall()

static enum gdb_syscall amd64_canonicalize_syscall | ( | enum amd64_syscall | syscall_number | ) |
| static

Definition at line 364 of file amd64-linux-tdep.c.

References amd64_sys_accept, amd64_sys_access, amd64_sys_acct, amd64_sys_add_key, amd64_sys_adjtimex, amd64_sys_alarm, amd64_sys_arch_prctl, amd64_sys_bind, amd64_sys_brk, amd64_sys_capget, amd64_sys_capset, amd64_sys_chdir, amd64_sys_chmod, amd64_sys_chown, amd64_sys_chroot, amd64_sys_clock_getres, amd64_sys_clock_gettime, amd64_sys_clock_nanosleep, amd64_sys_clock_settime, amd64_sys_clone, amd64_sys_close, amd64_sys_connect, amd64_sys_creat, amd64_sys_delete_module, amd64_sys_dup, amd64_sys_dup2, amd64_sys_epoll_create, amd64_sys_epoll_ctl, amd64_sys_epoll_wait, amd64_sys_execve, amd64_sys_exit, amd64_sys_exit_group, amd64_sys_faccessat, amd64_sys_fadvise64, amd64_sys_fchdir, amd64_sys_fchmod, amd64_sys_fchmodat, amd64_sys_fchown, amd64_sys_fchownat, amd64_sys_fcntl, amd64_sys_fdatasync, amd64_sys_fgetxattr, amd64_sys_flistxattr, amd64_sys_flock, amd64_sys_fork, amd64_sys_fremovexattr, amd64_sys_fsetxattr, amd64_sys_fstatfs, amd64_sys_fsync, amd64_sys_ftruncate, amd64_sys_futex, amd64_sys_futimesat, amd64_sys_get_mempolicy, amd64_sys_get_robust_list, amd64_sys_getcwd, amd64_sys_getdents, amd64_sys_getdents64, amd64_sys_getegid, amd64_sys_geteuid, amd64_sys_getgid, amd64_sys_getgroups, amd64_sys_getitimer, amd64_sys_getpeername, amd64_sys_getpgid, amd64_sys_getpgrp, amd64_sys_getpid, amd64_sys_getppid, amd64_sys_getpriority, amd64_sys_getresgid, amd64_sys_getresuid, amd64_sys_getrlimit, amd64_sys_getrusage, amd64_sys_getsid, amd64_sys_getsockname, amd64_sys_getsockopt, amd64_sys_gettid, amd64_sys_gettimeofday, amd64_sys_getuid, amd64_sys_getxattr, amd64_sys_init_module, amd64_sys_inotify_add_watch, amd64_sys_inotify_init, amd64_sys_inotify_rm_watch, amd64_sys_io_cancel, amd64_sys_io_destroy, amd64_sys_io_getevents, amd64_sys_io_setup, amd64_sys_io_submit, amd64_sys_ioctl, amd64_sys_ioperm, amd64_sys_iopl, amd64_sys_ioprio_get, amd64_sys_ioprio_set, amd64_sys_kexec_load, amd64_sys_keyctl, amd64_sys_kill, amd64_sys_lchown, amd64_sys_lgetxattr, amd64_sys_link, amd64_sys_linkat, amd64_sys_listen, amd64_sys_listxattr, amd64_sys_llistxattr, amd64_sys_lookup_dcookie, amd64_sys_lremovexattr, amd64_sys_lseek, amd64_sys_lsetxattr, amd64_sys_madvise, amd64_sys_mbind, amd64_sys_migrate_pages, amd64_sys_mincore, amd64_sys_mkdir, amd64_sys_mkdirat, amd64_sys_mknod, amd64_sys_mknodat, amd64_sys_mlock, amd64_sys_mlockall, amd64_sys_mmap, amd64_sys_modify_ldt, amd64_sys_mount, amd64_sys_move_pages, amd64_sys_mprotect, amd64_sys_mq_getsetattr, amd64_sys_mq_notify, amd64_sys_mq_open, amd64_sys_mq_timedreceive, amd64_sys_mq_timedsend, amd64_sys_mq_unlink, amd64_sys_mremap, amd64_sys_msgctl, amd64_sys_msgget, amd64_sys_msgrcv, amd64_sys_msgsnd, amd64_sys_msync, amd64_sys_munlock, amd64_sys_munlockall, amd64_sys_munmap, amd64_sys_nanosleep, amd64_sys_newfstat, amd64_sys_newfstatat, amd64_sys_newlstat, amd64_sys_newstat, amd64_sys_nfsservctl, amd64_sys_open, amd64_sys_openat, amd64_sys_pause, amd64_sys_personality, amd64_sys_pipe, amd64_sys_pivot_root, amd64_sys_poll, amd64_sys_ppoll, amd64_sys_prctl, amd64_sys_pread64, amd64_sys_pselect6, amd64_sys_ptrace, amd64_sys_pwrite64, amd64_sys_quotactl, amd64_sys_read, amd64_sys_readahead, amd64_sys_readlink, amd64_sys_readlinkat, amd64_sys_readv, amd64_sys_reboot, amd64_sys_recvfrom, amd64_sys_recvmsg, amd64_sys_remap_file_pages, amd64_sys_removexattr, amd64_sys_rename, amd64_sys_renameat, amd64_sys_request_key, amd64_sys_restart_syscall, amd64_sys_rmdir, amd64_sys_rt_sigaction, amd64_sys_rt_sigpending, amd64_sys_rt_sigprocmask, amd64_sys_rt_sigqueueinfo, amd64_sys_rt_sigreturn, amd64_sys_rt_sigsuspend, amd64_sys_rt_sigtimedwait, amd64_sys_sched_get_priority_max, amd64_sys_sched_get_priority_min, amd64_sys_sched_getaffinity, amd64_sys_sched_getparam, amd64_sys_sched_getscheduler, amd64_sys_sched_rr_get_interval, amd64_sys_sched_setaffinity, amd64_sys_sched_setparam, amd64_sys_sched_setscheduler, amd64_sys_sched_yield, amd64_sys_select, amd64_sys_semctl, amd64_sys_semget, amd64_sys_semop, amd64_sys_semtimedop, amd64_sys_sendfile64, amd64_sys_sendmsg, amd64_sys_sendto, amd64_sys_set_mempolicy, amd64_sys_set_robust_list, amd64_sys_set_tid_address, amd64_sys_setdomainname, amd64_sys_setfsgid, amd64_sys_setfsuid, amd64_sys_setgid, amd64_sys_setgroups, amd64_sys_sethostname, amd64_sys_setitimer, amd64_sys_setpgid, amd64_sys_setpriority, amd64_sys_setregid, amd64_sys_setresgid, amd64_sys_setresuid, amd64_sys_setreuid, amd64_sys_setrlimit, amd64_sys_setsid, amd64_sys_setsockopt, amd64_sys_settimeofday, amd64_sys_setuid, amd64_sys_setxattr, amd64_sys_shmat, amd64_sys_shmctl, amd64_sys_shmdt, amd64_sys_shmget, amd64_sys_shutdown, amd64_sys_sigaltstack, amd64_sys_socket, amd64_sys_socketpair, amd64_sys_splice, amd64_sys_statfs, amd64_sys_swapoff, amd64_sys_swapon, amd64_sys_symlink, amd64_sys_symlinkat, amd64_sys_sync, amd64_sys_sync_file_range, amd64_sys_sysctl, amd64_sys_sysfs, amd64_sys_sysinfo, amd64_sys_syslog, amd64_sys_tee, amd64_sys_tgkill, amd64_sys_time, amd64_sys_timer_create, amd64_sys_timer_delete, amd64_sys_timer_getoverrun, amd64_sys_timer_gettime, amd64_sys_timer_settime, amd64_sys_times, amd64_sys_tkill, amd64_sys_truncate, amd64_sys_umask, amd64_sys_umount, amd64_sys_uname, amd64_sys_unlink, amd64_sys_unlinkat, amd64_sys_unshare, amd64_sys_ustat, amd64_sys_utime, amd64_sys_utimes, amd64_sys_vfork, amd64_sys_vhangup, amd64_sys_vmsplice, amd64_sys_wait4, amd64_sys_waitid, amd64_sys_write, amd64_sys_writev, amd64_x32_sys_accept, amd64_x32_sys_access, amd64_x32_sys_acct, amd64_x32_sys_add_key, amd64_x32_sys_adjtimex, amd64_x32_sys_alarm, amd64_x32_sys_arch_prctl, amd64_x32_sys_bind, amd64_x32_sys_brk, amd64_x32_sys_capget, amd64_x32_sys_capset, amd64_x32_sys_chdir, amd64_x32_sys_chmod, amd64_x32_sys_chown, amd64_x32_sys_chroot, amd64_x32_sys_clock_getres, amd64_x32_sys_clock_gettime, amd64_x32_sys_clock_nanosleep, amd64_x32_sys_clock_settime, amd64_x32_sys_clone, amd64_x32_sys_close, amd64_x32_sys_connect, amd64_x32_sys_creat, amd64_x32_sys_delete_module, amd64_x32_sys_dup, amd64_x32_sys_dup2, amd64_x32_sys_epoll_create, amd64_x32_sys_epoll_ctl, amd64_x32_sys_epoll_wait, amd64_x32_sys_execve, amd64_x32_sys_exit, amd64_x32_sys_exit_group, amd64_x32_sys_faccessat, amd64_x32_sys_fadvise64, amd64_x32_sys_fchdir, amd64_x32_sys_fchmod, amd64_x32_sys_fchmodat, amd64_x32_sys_fchown, amd64_x32_sys_fchownat, amd64_x32_sys_fcntl, amd64_x32_sys_fdatasync, amd64_x32_sys_fgetxattr, amd64_x32_sys_flistxattr, amd64_x32_sys_flock, amd64_x32_sys_fork, amd64_x32_sys_fremovexattr, amd64_x32_sys_fsetxattr, amd64_x32_sys_fstatfs, amd64_x32_sys_fsync, amd64_x32_sys_ftruncate, amd64_x32_sys_futex, amd64_x32_sys_futimesat, amd64_x32_sys_get_mempolicy, amd64_x32_sys_get_robust_list, amd64_x32_sys_getcwd, amd64_x32_sys_getdents, amd64_x32_sys_getdents64, amd64_x32_sys_getegid, amd64_x32_sys_geteuid, amd64_x32_sys_getgid, amd64_x32_sys_getgroups, amd64_x32_sys_getitimer, amd64_x32_sys_getpeername, amd64_x32_sys_getpgid, amd64_x32_sys_getpgrp, amd64_x32_sys_getpid, amd64_x32_sys_getppid, amd64_x32_sys_getpriority, amd64_x32_sys_getresgid, amd64_x32_sys_getresuid, amd64_x32_sys_getrlimit, amd64_x32_sys_getrusage, amd64_x32_sys_getsid, amd64_x32_sys_getsockname, amd64_x32_sys_getsockopt, amd64_x32_sys_gettid, amd64_x32_sys_gettimeofday, amd64_x32_sys_getuid, amd64_x32_sys_getxattr, amd64_x32_sys_init_module, amd64_x32_sys_inotify_add_watch, amd64_x32_sys_inotify_init, amd64_x32_sys_inotify_rm_watch, amd64_x32_sys_io_cancel, amd64_x32_sys_io_destroy, amd64_x32_sys_io_getevents, amd64_x32_sys_io_setup, amd64_x32_sys_io_submit, amd64_x32_sys_ioctl, amd64_x32_sys_ioperm, amd64_x32_sys_iopl, amd64_x32_sys_ioprio_get, amd64_x32_sys_ioprio_set, amd64_x32_sys_kexec_load, amd64_x32_sys_keyctl, amd64_x32_sys_kill, amd64_x32_sys_lchown, amd64_x32_sys_lgetxattr, amd64_x32_sys_link, amd64_x32_sys_linkat, amd64_x32_sys_listen, amd64_x32_sys_listxattr, amd64_x32_sys_llistxattr, amd64_x32_sys_lookup_dcookie, amd64_x32_sys_lremovexattr, amd64_x32_sys_lseek, amd64_x32_sys_lsetxattr, amd64_x32_sys_madvise, amd64_x32_sys_mbind, amd64_x32_sys_migrate_pages, amd64_x32_sys_mincore, amd64_x32_sys_mkdir, amd64_x32_sys_mkdirat, amd64_x32_sys_mknod, amd64_x32_sys_mknodat, amd64_x32_sys_mlock, amd64_x32_sys_mlockall, amd64_x32_sys_mmap, amd64_x32_sys_modify_ldt, amd64_x32_sys_mount, amd64_x32_sys_move_pages, amd64_x32_sys_mprotect, amd64_x32_sys_mq_getsetattr, amd64_x32_sys_mq_notify, amd64_x32_sys_mq_open, amd64_x32_sys_mq_timedreceive, amd64_x32_sys_mq_timedsend, amd64_x32_sys_mq_unlink, amd64_x32_sys_mremap, amd64_x32_sys_msgctl, amd64_x32_sys_msgget, amd64_x32_sys_msgrcv, amd64_x32_sys_msgsnd, amd64_x32_sys_msync, amd64_x32_sys_munlock, amd64_x32_sys_munlockall, amd64_x32_sys_munmap, amd64_x32_sys_nanosleep, amd64_x32_sys_newfstat, amd64_x32_sys_newfstatat, amd64_x32_sys_newlstat, amd64_x32_sys_newstat, amd64_x32_sys_open, amd64_x32_sys_openat, amd64_x32_sys_pause, amd64_x32_sys_personality, amd64_x32_sys_pipe, amd64_x32_sys_pivot_root, amd64_x32_sys_poll, amd64_x32_sys_ppoll, amd64_x32_sys_prctl, amd64_x32_sys_pread64, amd64_x32_sys_pselect6, amd64_x32_sys_ptrace, amd64_x32_sys_pwrite64, amd64_x32_sys_quotactl, amd64_x32_sys_read, amd64_x32_sys_readahead, amd64_x32_sys_readlink, amd64_x32_sys_readlinkat, amd64_x32_sys_readv, amd64_x32_sys_reboot, amd64_x32_sys_recvfrom, amd64_x32_sys_recvmsg, amd64_x32_sys_remap_file_pages, amd64_x32_sys_removexattr, amd64_x32_sys_rename, amd64_x32_sys_renameat, amd64_x32_sys_request_key, amd64_x32_sys_restart_syscall, amd64_x32_sys_rmdir, amd64_x32_sys_rt_sigaction, amd64_x32_sys_rt_sigpending, amd64_x32_sys_rt_sigprocmask, amd64_x32_sys_rt_sigqueueinfo, amd64_x32_sys_rt_sigreturn, amd64_x32_sys_rt_sigsuspend, amd64_x32_sys_rt_sigtimedwait, amd64_x32_sys_sched_get_priority_max, amd64_x32_sys_sched_get_priority_min, amd64_x32_sys_sched_getaffinity, amd64_x32_sys_sched_getparam, amd64_x32_sys_sched_getscheduler, amd64_x32_sys_sched_rr_get_interval, amd64_x32_sys_sched_setaffinity, amd64_x32_sys_sched_setparam, amd64_x32_sys_sched_setscheduler, amd64_x32_sys_sched_yield, amd64_x32_sys_select, amd64_x32_sys_semctl, amd64_x32_sys_semget, amd64_x32_sys_semop, amd64_x32_sys_semtimedop, amd64_x32_sys_sendfile64, amd64_x32_sys_sendmsg, amd64_x32_sys_sendto, amd64_x32_sys_set_mempolicy, amd64_x32_sys_set_robust_list, amd64_x32_sys_set_tid_address, amd64_x32_sys_setdomainname, amd64_x32_sys_setfsgid, amd64_x32_sys_setfsuid, amd64_x32_sys_setgid, amd64_x32_sys_setgroups, amd64_x32_sys_sethostname, amd64_x32_sys_setitimer, amd64_x32_sys_setpgid, amd64_x32_sys_setpriority, amd64_x32_sys_setregid, amd64_x32_sys_setresgid, amd64_x32_sys_setresuid, amd64_x32_sys_setreuid, amd64_x32_sys_setrlimit, amd64_x32_sys_setsid, amd64_x32_sys_setsockopt, amd64_x32_sys_settimeofday, amd64_x32_sys_setuid, amd64_x32_sys_setxattr, amd64_x32_sys_shmat, amd64_x32_sys_shmctl, amd64_x32_sys_shmdt, amd64_x32_sys_shmget, amd64_x32_sys_shutdown, amd64_x32_sys_sigaltstack, amd64_x32_sys_socket, amd64_x32_sys_socketpair, amd64_x32_sys_splice, amd64_x32_sys_statfs, amd64_x32_sys_swapoff, amd64_x32_sys_swapon, amd64_x32_sys_symlink, amd64_x32_sys_symlinkat, amd64_x32_sys_sync, amd64_x32_sys_sync_file_range, amd64_x32_sys_sysctl, amd64_x32_sys_sysfs, amd64_x32_sys_sysinfo, amd64_x32_sys_syslog, amd64_x32_sys_tee, amd64_x32_sys_tgkill, amd64_x32_sys_time, amd64_x32_sys_timer_create, amd64_x32_sys_timer_delete, amd64_x32_sys_timer_getoverrun, amd64_x32_sys_timer_gettime, amd64_x32_sys_timer_settime, amd64_x32_sys_times, amd64_x32_sys_tkill, amd64_x32_sys_truncate, amd64_x32_sys_umask, amd64_x32_sys_umount, amd64_x32_sys_uname, amd64_x32_sys_unlink, amd64_x32_sys_unlinkat, amd64_x32_sys_unshare, amd64_x32_sys_ustat, amd64_x32_sys_utime, amd64_x32_sys_utimes, amd64_x32_sys_vfork, amd64_x32_sys_vhangup, amd64_x32_sys_vmsplice, amd64_x32_sys_wait4, amd64_x32_sys_waitid, amd64_x32_sys_write, amd64_x32_sys_writev, DIAGNOSTIC_IGNORE_SWITCH_DIFFERENT_ENUM_TYPES, DIAGNOSTIC_POP, DIAGNOSTIC_PUSH, gdb_sys_accept, gdb_sys_access, gdb_sys_acct, gdb_sys_add_key, gdb_sys_adjtimex, gdb_sys_alarm, gdb_sys_bind, gdb_sys_brk, gdb_sys_capget, gdb_sys_capset, gdb_sys_chdir, gdb_sys_chmod, gdb_sys_chown, gdb_sys_chroot, gdb_sys_clock_getres, gdb_sys_clock_gettime, gdb_sys_clock_nanosleep, gdb_sys_clock_settime, gdb_sys_clone, gdb_sys_close, gdb_sys_connect, gdb_sys_creat, gdb_sys_delete_module, gdb_sys_dup, gdb_sys_dup2, gdb_sys_epoll_create, gdb_sys_epoll_ctl, gdb_sys_epoll_wait, gdb_sys_execve, gdb_sys_exit, gdb_sys_exit_group, gdb_sys_faccessat, gdb_sys_fadvise64, gdb_sys_fchdir, gdb_sys_fchmod, gdb_sys_fchmodat, gdb_sys_fchown, gdb_sys_fchownat, gdb_sys_fcntl, gdb_sys_fdatasync, gdb_sys_fgetxattr, gdb_sys_flistxattr, gdb_sys_flock, gdb_sys_fork, gdb_sys_fremovexattr, gdb_sys_fsetxattr, gdb_sys_fstatfs, gdb_sys_fsync, gdb_sys_ftruncate, gdb_sys_futex, gdb_sys_futimesat, gdb_sys_get_mempolicy, gdb_sys_get_robust_list, gdb_sys_getcwd, gdb_sys_getdents, gdb_sys_getdents64, gdb_sys_getegid, gdb_sys_geteuid, gdb_sys_getgid, gdb_sys_getgroups, gdb_sys_getitimer, gdb_sys_getpeername, gdb_sys_getpgid, gdb_sys_getpgrp, gdb_sys_getpid, gdb_sys_getppid, gdb_sys_getpriority, gdb_sys_getresgid, gdb_sys_getresuid, gdb_sys_getrlimit, gdb_sys_getrusage, gdb_sys_getsid, gdb_sys_getsockname, gdb_sys_getsockopt, gdb_sys_gettid, gdb_sys_gettimeofday, gdb_sys_getuid, gdb_sys_getxattr, gdb_sys_init_module, gdb_sys_inotify_add_watch, gdb_sys_inotify_init, gdb_sys_inotify_rm_watch, gdb_sys_io_cancel, gdb_sys_io_destroy, gdb_sys_io_getevents, gdb_sys_io_setup, gdb_sys_io_submit, gdb_sys_ioctl, gdb_sys_ioperm, gdb_sys_iopl, gdb_sys_ioprio_get, gdb_sys_ioprio_set, gdb_sys_kexec_load, gdb_sys_keyctl, gdb_sys_kill, gdb_sys_lchown, gdb_sys_lgetxattr, gdb_sys_link, gdb_sys_linkat, gdb_sys_listen, gdb_sys_listxattr, gdb_sys_llistxattr, gdb_sys_lookup_dcookie, gdb_sys_lremovexattr, gdb_sys_lseek, gdb_sys_lsetxattr, gdb_sys_madvise, gdb_sys_mbind, gdb_sys_migrate_pages, gdb_sys_mincore, gdb_sys_mkdir, gdb_sys_mkdirat, gdb_sys_mknod, gdb_sys_mknodat, gdb_sys_mlock, gdb_sys_mlockall, gdb_sys_mmap2, gdb_sys_modify_ldt, gdb_sys_mount, gdb_sys_move_pages, gdb_sys_mprotect, gdb_sys_mq_getsetattr, gdb_sys_mq_notify, gdb_sys_mq_open, gdb_sys_mq_timedreceive, gdb_sys_mq_timedsend, gdb_sys_mq_unlink, gdb_sys_mremap, gdb_sys_msgctl, gdb_sys_msgget, gdb_sys_msgrcv, gdb_sys_msgsnd, gdb_sys_msync, gdb_sys_munlock, gdb_sys_munlockall, gdb_sys_munmap, gdb_sys_nanosleep, gdb_sys_newfstat, gdb_sys_newfstatat, gdb_sys_newlstat, gdb_sys_newstat, gdb_sys_nfsservctl, gdb_sys_no_syscall, gdb_sys_open, gdb_sys_openat, gdb_sys_pause, gdb_sys_personality, gdb_sys_pipe, gdb_sys_pivot_root, gdb_sys_poll, gdb_sys_ppoll, gdb_sys_prctl, gdb_sys_pread64, gdb_sys_pselect6, gdb_sys_ptrace, gdb_sys_pwrite64, gdb_sys_quotactl, gdb_sys_read, gdb_sys_readahead, gdb_sys_readlink, gdb_sys_readlinkat, gdb_sys_readv, gdb_sys_reboot, gdb_sys_recvfrom, gdb_sys_recvmsg, gdb_sys_remap_file_pages, gdb_sys_removexattr, gdb_sys_rename, gdb_sys_renameat, gdb_sys_request_key, gdb_sys_restart_syscall, gdb_sys_rmdir, gdb_sys_rt_sigaction, gdb_sys_rt_sigpending, gdb_sys_rt_sigprocmask, gdb_sys_rt_sigqueueinfo, gdb_sys_rt_sigreturn, gdb_sys_rt_sigsuspend, gdb_sys_rt_sigtimedwait, gdb_sys_sched_get_priority_max, gdb_sys_sched_get_priority_min, gdb_sys_sched_getaffinity, gdb_sys_sched_getparam, gdb_sys_sched_getscheduler, gdb_sys_sched_rr_get_interval, gdb_sys_sched_setaffinity, gdb_sys_sched_setparam, gdb_sys_sched_setscheduler, gdb_sys_sched_yield, gdb_sys_select, gdb_sys_semctl, gdb_sys_semget, gdb_sys_semop, gdb_sys_semtimedop, gdb_sys_sendfile64, gdb_sys_sendmsg, gdb_sys_sendto, gdb_sys_set_mempolicy, gdb_sys_set_robust_list, gdb_sys_set_tid_address, gdb_sys_setdomainname, gdb_sys_setfsgid, gdb_sys_setfsuid, gdb_sys_setgid, gdb_sys_setgroups, gdb_sys_sethostname, gdb_sys_setitimer, gdb_sys_setpgid, gdb_sys_setpriority, gdb_sys_setregid, gdb_sys_setresgid, gdb_sys_setresuid, gdb_sys_setreuid, gdb_sys_setrlimit, gdb_sys_setsid, gdb_sys_setsockopt, gdb_sys_settimeofday, gdb_sys_setuid, gdb_sys_setxattr, gdb_sys_shmat, gdb_sys_shmctl, gdb_sys_shmdt, gdb_sys_shmget, gdb_sys_shutdown, gdb_sys_sigaltstack, gdb_sys_socket, gdb_sys_socketpair, gdb_sys_splice, gdb_sys_statfs, gdb_sys_swapoff, gdb_sys_swapon, gdb_sys_symlink, gdb_sys_symlinkat, gdb_sys_sync, gdb_sys_sync_file_range, gdb_sys_sysctl, gdb_sys_sysfs, gdb_sys_sysinfo, gdb_sys_syslog, gdb_sys_tee, gdb_sys_tgkill, gdb_sys_time, gdb_sys_timer_create, gdb_sys_timer_delete, gdb_sys_timer_getoverrun, gdb_sys_timer_gettime, gdb_sys_timer_settime, gdb_sys_times, gdb_sys_tkill, gdb_sys_truncate, gdb_sys_umask, gdb_sys_umount, gdb_sys_uname, gdb_sys_unlink, gdb_sys_unlinkat, gdb_sys_unshare, gdb_sys_ustat, gdb_sys_utime, gdb_sys_utimes, gdb_sys_vfork, gdb_sys_vhangup, gdb_sys_vmsplice, gdb_sys_wait4, gdb_sys_waitid, gdb_sys_write, and gdb_sys_writev.

Referenced by amd64_linux_syscall_record_common().

## ◆ amd64_dtrace_disable_probe()

static void amd64_dtrace_disable_probe | ( | struct gdbarch * | gdbarch,
|  | CORE_ADDR | addr
| ) |  |
| static

Definition at line 1724 of file amd64-linux-tdep.c.

References amd64_dtrace_disable_probe_sequence, and write_memory().

Referenced by amd64_linux_init_abi().

## ◆ amd64_dtrace_enable_probe()

static void amd64_dtrace_enable_probe | ( | struct gdbarch * | gdbarch,
|  | CORE_ADDR | addr
| ) |  |
| static

Definition at line 1712 of file amd64-linux-tdep.c.

References amd64_dtrace_enable_probe_sequence, and write_memory().

Referenced by amd64_linux_init_abi().

## ◆ amd64_dtrace_parse_probe_argument()

static void amd64_dtrace_parse_probe_argument | ( | struct gdbarch * | gdbarch,
|  | struct parser_state * | pstate,
|  | int | narg
| ) |  |
| static

Definition at line 1736 of file amd64-linux-tdep.c.

References AMD64_R8_REGNUM, AMD64_R9_REGNUM, AMD64_RCX_REGNUM, AMD64_RDI_REGNUM, AMD64_RDX_REGNUM, AMD64_RSI_REGNUM, AMD64_RSP_REGNUM, stoken::length, lookup_pointer_type(), pstate, stoken::ptr, user_reg_map_regnum_to_name(), write_exp_elt_longcst(), write_exp_elt_opcode(), write_exp_elt_type(), and write_exp_string().

Referenced by amd64_linux_init_abi().

## ◆ amd64_dtrace_probe_is_enabled()

static int amd64_dtrace_probe_is_enabled | ( | struct gdbarch * | gdbarch,
|  | CORE_ADDR | addr
| ) |  |
| static

Definition at line 1692 of file amd64-linux-tdep.c.

References amd64_dtrace_disabled_probe_sequence_1, amd64_dtrace_disabled_probe_sequence_2, and read_code().

Referenced by amd64_linux_init_abi().

## ◆ amd64_linux_collect_xstateregset()

static void amd64_linux_collect_xstateregset | ( | const struct regset * | regset,
|  | const struct regcache * | regcache,
|  | int | regnum,
|  | void * | xstateregs,
|  | size_t | len
| ) |  |
| static

Definition at line 1629 of file amd64-linux-tdep.c.

References amd64_collect_xsave(), and regnum.

## ◆ amd64_linux_core_read_description()

static const struct target_desc* amd64_linux_core_read_description | ( | struct gdbarch * | gdbarch,
|  | struct target_ops * | target,
|  | bfd * | abfd
| ) |  |
| static

Definition at line 1605 of file amd64-linux-tdep.c.

References amd64_linux_read_description(), gdbarch_ptr_bit(), i386_linux_core_read_xcr0(), and X86_XSTATE_ALL_MASK.

Referenced by amd64_linux_init_abi_common().

## ◆ amd64_linux_get_syscall_number()

static LONGEST amd64_linux_get_syscall_number | ( | struct gdbarch * | gdbarch,
|  | ptid_t | ptid
| ) |  |
| static

Definition at line 224 of file amd64-linux-tdep.c.

References AMD64_LINUX_ORIG_RAX_REGNUM, extract_signed_integer(), gdbarch_byte_order(), get_thread_regcache(), regcache::ptid(), and regcache_cooked_read().

Referenced by amd64_linux_init_abi_common().

## ◆ amd64_linux_init_abi()

static void amd64_linux_init_abi | ( | struct gdbarch_info | info,
|  | struct gdbarch * | gdbarch
| ) |  |
| static

Definition at line 1853 of file amd64-linux-tdep.c.

References amd64_dtrace_disable_probe(), amd64_dtrace_enable_probe(), amd64_dtrace_parse_probe_argument(), amd64_dtrace_probe_is_enabled(), amd64_init_abi(), amd64_linux_gregset_reg_offset, amd64_linux_init_abi_common(), AMD64_LINUX_NUM_REGS, AMD64_LINUX_ORIG_RAX_REGNUM, amd64_linux_read_description(), amd64_linux_record_tdep, amd64_linux_syscall_record(), AMD64_R10_REGNUM, AMD64_R8_REGNUM, AMD64_R9_REGNUM, AMD64_RDI_REGNUM, AMD64_RDX_REGNUM, AMD64_RSI_REGNUM, linux_record_tdep::arg1, linux_record_tdep::arg2, linux_record_tdep::arg3, linux_record_tdep::arg4, linux_record_tdep::arg5, linux_record_tdep::arg6, linux_record_tdep::fcntl_F_GETLK, linux_record_tdep::fcntl_F_GETLK64, linux_record_tdep::fcntl_F_SETLK64, linux_record_tdep::fcntl_F_SETLKW64, gdb_assert, gdbarch_int_bit(), gdbarch_long_bit(), gdbarch_ptr_bit(), gdbarch_tdep(), gdbarch_tdep::gregset_num_regs, gdbarch_tdep::gregset_reg_offset, gdbarch_tdep::i386_syscall_record, linux_record_tdep::ioctl_FIOASYNC, linux_record_tdep::ioctl_FIOCLEX, linux_record_tdep::ioctl_FIONBIO, linux_record_tdep::ioctl_FIONCLEX, linux_record_tdep::ioctl_FIONREAD, linux_record_tdep::ioctl_FIOQSIZE, linux_record_tdep::ioctl_TCFLSH, linux_record_tdep::ioctl_TCGETA, linux_record_tdep::ioctl_TCGETS, linux_record_tdep::ioctl_TCGETS2, linux_record_tdep::ioctl_TCSBRK, linux_record_tdep::ioctl_TCSBRKP, linux_record_tdep::ioctl_TCSETA, linux_record_tdep::ioctl_TCSETAF, linux_record_tdep::ioctl_TCSETAW, linux_record_tdep::ioctl_TCSETS, linux_record_tdep::ioctl_TCSETS2, linux_record_tdep::ioctl_TCSETSF, linux_record_tdep::ioctl_TCSETSF2, linux_record_tdep::ioctl_TCSETSW, linux_record_tdep::ioctl_TCSETSW2, linux_record_tdep::ioctl_TCXONC, linux_record_tdep::ioctl_TIOCCBRK, linux_record_tdep::ioctl_TIOCCONS, linux_record_tdep::ioctl_TIOCEXCL, linux_record_tdep::ioctl_TIOCGETD, linux_record_tdep::ioctl_TIOCGHAYESESP, linux_record_tdep::ioctl_TIOCGICOUNT, linux_record_tdep::ioctl_TIOCGLCKTRMIOS, linux_record_tdep::ioctl_TIOCGPGRP, linux_record_tdep::ioctl_TIOCGPTN, linux_record_tdep::ioctl_TIOCGSERIAL, linux_record_tdep::ioctl_TIOCGSID, linux_record_tdep::ioctl_TIOCGSOFTCAR, linux_record_tdep::ioctl_TIOCGWINSZ, linux_record_tdep::ioctl_TIOCINQ, linux_record_tdep::ioctl_TIOCLINUX, linux_record_tdep::ioctl_TIOCMBIC, linux_record_tdep::ioctl_TIOCMBIS, linux_record_tdep::ioctl_TIOCMGET, linux_record_tdep::ioctl_TIOCMIWAIT, linux_record_tdep::ioctl_TIOCMSET, linux_record_tdep::ioctl_TIOCNOTTY, linux_record_tdep::ioctl_TIOCNXCL, linux_record_tdep::ioctl_TIOCOUTQ, linux_record_tdep::ioctl_TIOCPKT, linux_record_tdep::ioctl_TIOCSBRK, linux_record_tdep::ioctl_TIOCSCTTY, linux_record_tdep::ioctl_TIOCSERCONFIG, linux_record_tdep::ioctl_TIOCSERGETLSR, linux_record_tdep::ioctl_TIOCSERGETMULTI, linux_record_tdep::ioctl_TIOCSERGSTRUCT, linux_record_tdep::ioctl_TIOCSERGWILD, linux_record_tdep::ioctl_TIOCSERSETMULTI, linux_record_tdep::ioctl_TIOCSERSWILD, linux_record_tdep::ioctl_TIOCSETD, linux_record_tdep::ioctl_TIOCSHAYESESP, linux_record_tdep::ioctl_TIOCSLCKTRMIOS, linux_record_tdep::ioctl_TIOCSPGRP, linux_record_tdep::ioctl_TIOCSPTLCK, linux_record_tdep::ioctl_TIOCSSERIAL, linux_record_tdep::ioctl_TIOCSSOFTCAR, linux_record_tdep::ioctl_TIOCSTI, linux_record_tdep::ioctl_TIOCSWINSZ, linux_record_tdep::ioctl_TIOCTTYGSTRUCT, set_gdbarch_dtrace_disable_probe(), set_gdbarch_dtrace_enable_probe(), set_gdbarch_dtrace_parse_probe_argument(), set_gdbarch_dtrace_probe_is_enabled(), set_gdbarch_num_regs(), set_solib_svr4_fetch_link_map_offsets(), linux_record_tdep::size__old_kernel_stat, linux_record_tdep::size_cap_user_data_t, linux_record_tdep::size_epoll_event, linux_record_tdep::size_fd_set, linux_record_tdep::size_flock, linux_record_tdep::size_flock64, linux_record_tdep::size_fs_quota_stat, linux_record_tdep::size_gid_t, linux_record_tdep::size_hayes_esp_config, linux_record_tdep::size_if_dqblk, linux_record_tdep::size_int, linux_record_tdep::size_io_event, linux_record_tdep::size_iocb, linux_record_tdep::size_iovec, linux_record_tdep::size_itimerspec, linux_record_tdep::size_itimerval, linux_record_tdep::size_knfsd_fh, linux_record_tdep::size_loff_t, linux_record_tdep::size_long, linux_record_tdep::size_mem_dqinfo, linux_record_tdep::size_mq_attr, linux_record_tdep::size_msghdr, linux_record_tdep::size_msqid_ds, linux_record_tdep::size_new_utsname, linux_record_tdep::size_NFS_FHSIZE, linux_record_tdep::size_off_t, linux_record_tdep::size_old_dirent, linux_record_tdep::size_old_gid_t, linux_record_tdep::size_old_sigaction, linux_record_tdep::size_old_sigset_t, linux_record_tdep::size_old_uid_t, linux_record_tdep::size_old_utsname, linux_record_tdep::size_oldold_utsname, linux_record_tdep::size_PAGE_SIZE, linux_record_tdep::size_pid_t, linux_record_tdep::size_pointer, linux_record_tdep::size_pollfd, linux_record_tdep::size_rlimit, linux_record_tdep::size_rusage, linux_record_tdep::size_serial_icounter_struct, linux_record_tdep::size_serial_struct, linux_record_tdep::size_shmid_ds, linux_record_tdep::size_sigaction, linux_record_tdep::size_siginfo_t, linux_record_tdep::size_sigset_t, linux_record_tdep::size_size_t, linux_record_tdep::size_sockaddr, linux_record_tdep::size_stack_t, linux_record_tdep::size_stat, linux_record_tdep::size_stat64, linux_record_tdep::size_statfs, linux_record_tdep::size_statfs64, linux_record_tdep::size_sysinfo, linux_record_tdep::size_TASK_COMM_LEN, linux_record_tdep::size_termios, linux_record_tdep::size_termios2, linux_record_tdep::size_time_t, linux_record_tdep::size_timespec, linux_record_tdep::size_timeval, linux_record_tdep::size_timex, linux_record_tdep::size_timezone, linux_record_tdep::size_tms, linux_record_tdep::size_uid_t, linux_record_tdep::size_ulong, linux_record_tdep::size_user_desc, linux_record_tdep::size_ustat, linux_record_tdep::size_winsize, gdbarch_tdep::sizeof_gregset, svr4_lp64_fetch_link_map_offsets(), TARGET_CHAR_BIT, gdbarch_tdep::tdesc, tdesc_data, gdbarch_info::tdesc_data, tdesc_find_feature(), tdesc_numbered_register(), and X86_XSTATE_SSE_MASK.

Referenced by _initialize_amd64_linux_tdep().

## ◆ amd64_linux_init_abi_common()

static void amd64_linux_init_abi_common | ( | struct gdbarch_info | info,
|  | struct gdbarch * | gdbarch
| ) |  |
| static

Definition at line 1797 of file amd64-linux-tdep.c.

References amd64_displaced_step_copy_insn(), amd64_displaced_step_fixup(), amd64_linux_core_read_description(), amd64_linux_get_syscall_number(), amd64_linux_iterate_over_regset_sections(), amd64_linux_record_signal(), amd64_linux_register_reggroup_p(), amd64_linux_sc_reg_offset, amd64_linux_sigcontext_addr(), amd64_linux_sigtramp_p(), amd64_linux_write_pc(), find_solib_trampoline_target(), gdbarch_tdep(), glibc_skip_solib_resolver(), i386_linux_handle_segmentation_fault(), I386_LINUX_XSAVE_XCR0_OFFSET, i386_process_record(), linux_displaced_step_location(), linux_init_abi(), gdbarch_tdep::register_reggroup_p, gdbarch_tdep::sc_num_regs, gdbarch_tdep::sc_reg_offset, set_gdbarch_core_read_description(), set_gdbarch_displaced_step_copy_insn(), set_gdbarch_displaced_step_fixup(), set_gdbarch_displaced_step_location(), set_gdbarch_fetch_tls_load_module_address(), set_gdbarch_get_siginfo_type(), set_gdbarch_get_syscall_number(), set_gdbarch_handle_segmentation_fault(), set_gdbarch_iterate_over_regset_sections(), set_gdbarch_process_record(), set_gdbarch_process_record_signal(), set_gdbarch_skip_solib_resolver(), set_gdbarch_skip_trampoline_code(), set_gdbarch_write_pc(), set_xml_syscall_file_name(), gdbarch_tdep::sigcontext_addr, gdbarch_tdep::sigtramp_p, svr4_fetch_objfile_link_map(), x86_linux_get_siginfo_type(), XML_SYSCALL_FILENAME_AMD64, and gdbarch_tdep::xsave_xcr0_offset.

Referenced by amd64_linux_init_abi(), and amd64_x32_linux_init_abi().

## ◆ amd64_linux_iterate_over_regset_sections()

static void amd64_linux_iterate_over_regset_sections | ( | struct gdbarch * | gdbarch,
|  | iterate_over_regset_sections_cb * | cb,
|  | void * | cb_data,
|  | const struct regcache * | regcache
| ) |  |
| static

Definition at line 1646 of file amd64-linux-tdep.c.

References amd64_fpregset, amd64_linux_xstateregset, gdbarch_tdep(), i386_gregset, X86_XSTATE_SIZE, and gdbarch_tdep::xcr0.

Referenced by amd64_linux_init_abi_common().

## ◆ amd64_linux_read_description()

const target_desc* amd64_linux_read_description | ( | uint64_t | xcr0_features_bit,
|  | bool | is_x32
| ) |  |

Definition at line 1575 of file amd64-linux-tdep.c.

References amd64_create_target_description(), X86_XSTATE_AVX, X86_XSTATE_AVX512, X86_XSTATE_MPX, and X86_XSTATE_PKRU.

Referenced by _initialize_amd64_linux_tdep(), amd64_linux_core_read_description(), amd64_linux_init_abi(), amd64_x32_linux_init_abi(), and x86_linux_read_description().

## ◆ amd64_linux_record_signal()

static int amd64_linux_record_signal | ( | struct gdbarch * | gdbarch,
|  | struct regcache * | regcache,
|  | enum gdb_signal | signal
| ) |  |
| static

Definition at line 1540 of file amd64-linux-tdep.c.

References amd64_all_but_ip_registers_record(), AMD64_LINUX_frame_size, AMD64_LINUX_redzone, AMD64_LINUX_xstate, AMD64_RIP_REGNUM, AMD64_RSP_REGNUM, record_full_arch_list_add_end(), record_full_arch_list_add_mem(), record_full_arch_list_add_reg(), and regcache_raw_read_unsigned().

Referenced by amd64_linux_init_abi_common().

## ◆ amd64_linux_register_reggroup_p()

static int amd64_linux_register_reggroup_p | ( | struct gdbarch * | gdbarch,
|  | int | regnum,
|  | struct reggroup * | group
| ) |  |
| static

Definition at line 280 of file amd64-linux-tdep.c.

References AMD64_FSBASE_REGNUM, AMD64_GSBASE_REGNUM, AMD64_LINUX_ORIG_RAX_REGNUM, i386_register_reggroup_p(), regnum, restore_reggroup, save_reggroup, and system_reggroup.

Referenced by amd64_linux_init_abi_common().

## ◆ amd64_linux_sigcontext_addr()

static CORE_ADDR amd64_linux_sigcontext_addr | ( | struct frame_info * | this_frame | ) |
| static

Definition at line 203 of file amd64-linux-tdep.c.

References AMD64_LINUX_UCONTEXT_SIGCONTEXT_OFFSET, AMD64_RSP_REGNUM, gdbarch::byte_order, extract_unsigned_integer(), gdbarch_byte_order(), get_frame_arch(), and get_frame_register().

Referenced by amd64_linux_init_abi_common().

## ◆ amd64_linux_sigtramp_p()

static int amd64_linux_sigtramp_p | ( | struct frame_info * | this_frame | ) |
| static

Definition at line 177 of file amd64-linux-tdep.c.

References amd64_linux_sigtramp_start(), find_pc_partial_function(), get_frame_pc(), and name.

Referenced by amd64_linux_init_abi_common().

## ◆ amd64_linux_sigtramp_start()

static CORE_ADDR amd64_linux_sigtramp_start | ( | struct frame_info * | this_frame | ) |
| static

Definition at line 135 of file amd64-linux-tdep.c.

References amd64_linux_sigtramp_code, amd64_x32_linux_sigtramp_code, gdbarch_ptr_bit(), get_frame_arch(), get_frame_pc(), LINUX_SIGTRAMP_INSN0, LINUX_SIGTRAMP_INSN1, LINUX_SIGTRAMP_LEN, LINUX_SIGTRAMP_OFFSET1, safe_frame_unwind_memory(), and sigtramp_code.

Referenced by amd64_linux_sigtramp_p().

## ◆ amd64_linux_supply_xstateregset()

static void amd64_linux_supply_xstateregset | ( | const struct regset * | regset,
|  | struct regcache * | regcache,
|  | int | regnum,
|  | const void * | xstateregs,
|  | size_t | len
| ) |  |
| static

Definition at line 1619 of file amd64-linux-tdep.c.

References amd64_supply_xsave(), and regnum.

## ◆ amd64_linux_syscall_record()

static int amd64_linux_syscall_record | ( | struct regcache * | regcache | ) |
| static

Definition at line 1522 of file amd64-linux-tdep.c.

References amd64_linux_record_tdep, and amd64_linux_syscall_record_common().

Referenced by amd64_linux_init_abi().

## ◆ amd64_linux_syscall_record_common()

static int amd64_linux_syscall_record_common | ( | struct regcache * | regcache,
|  | struct linux_record_tdep * | linux_record_tdep_p
| ) |  |
| static

Definition at line 1453 of file amd64-linux-tdep.c.

References _, amd64_all_but_ip_registers_record(), amd64_canonicalize_syscall(), AMD64_R11_REGNUM, AMD64_RAX_REGNUM, AMD64_RCX_REGNUM, amd64_sys_arch_prctl, amd64_sys_rt_sigreturn, amd64_x32_sys_arch_prctl, amd64_x32_sys_rt_sigreturn, linux_record_tdep::arg2, linux_record_tdep::arg3, gdb_sys_no_syscall, printf_unfiltered(), pulongest(), RECORD_ARCH_GET_FS, RECORD_ARCH_GET_GS, record_full_arch_list_add_mem(), record_full_arch_list_add_reg(), record_linux_system_call(), regcache_raw_read_unsigned(), and linux_record_tdep::size_ulong.

Referenced by amd64_linux_syscall_record(), and amd64_x32_linux_syscall_record().

## ◆ amd64_linux_write_pc()

static void amd64_linux_write_pc | ( | struct regcache * | regcache,
|  | CORE_ADDR | pc
| ) |  |
| static

Definition at line 295 of file amd64-linux-tdep.c.

References AMD64_LINUX_ORIG_RAX_REGNUM, AMD64_RIP_REGNUM, and regcache_cooked_write_unsigned().

Referenced by amd64_linux_init_abi_common().

## ◆ amd64_x32_linux_init_abi()

static void amd64_x32_linux_init_abi | ( | struct gdbarch_info | info,
|  | struct gdbarch * | gdbarch
| ) |  |
| static

Definition at line 2067 of file amd64-linux-tdep.c.

References amd64_linux_gregset_reg_offset, amd64_linux_init_abi_common(), AMD64_LINUX_NUM_REGS, AMD64_LINUX_ORIG_RAX_REGNUM, amd64_linux_read_description(), AMD64_R10_REGNUM, AMD64_R8_REGNUM, AMD64_R9_REGNUM, AMD64_RDI_REGNUM, AMD64_RDX_REGNUM, AMD64_RSI_REGNUM, amd64_x32_init_abi(), amd64_x32_linux_record_tdep, amd64_x32_linux_syscall_record(), linux_record_tdep::arg1, linux_record_tdep::arg2, linux_record_tdep::arg3, linux_record_tdep::arg4, linux_record_tdep::arg5, linux_record_tdep::arg6, linux_record_tdep::fcntl_F_GETLK, linux_record_tdep::fcntl_F_GETLK64, linux_record_tdep::fcntl_F_SETLK64, linux_record_tdep::fcntl_F_SETLKW64, gdb_assert, gdbarch_int_bit(), gdbarch_long_bit(), gdbarch_ptr_bit(), gdbarch_tdep(), gdbarch_tdep::gregset_num_regs, gdbarch_tdep::gregset_reg_offset, gdbarch_tdep::i386_syscall_record, linux_record_tdep::ioctl_FIOASYNC, linux_record_tdep::ioctl_FIOCLEX, linux_record_tdep::ioctl_FIONBIO, linux_record_tdep::ioctl_FIONCLEX, linux_record_tdep::ioctl_FIONREAD, linux_record_tdep::ioctl_FIOQSIZE, linux_record_tdep::ioctl_TCFLSH, linux_record_tdep::ioctl_TCGETA, linux_record_tdep::ioctl_TCGETS, linux_record_tdep::ioctl_TCGETS2, linux_record_tdep::ioctl_TCSBRK, linux_record_tdep::ioctl_TCSBRKP, linux_record_tdep::ioctl_TCSETA, linux_record_tdep::ioctl_TCSETAF, linux_record_tdep::ioctl_TCSETAW, linux_record_tdep::ioctl_TCSETS, linux_record_tdep::ioctl_TCSETS2, linux_record_tdep::ioctl_TCSETSF, linux_record_tdep::ioctl_TCSETSF2, linux_record_tdep::ioctl_TCSETSW, linux_record_tdep::ioctl_TCSETSW2, linux_record_tdep::ioctl_TCXONC, linux_record_tdep::ioctl_TIOCCBRK, linux_record_tdep::ioctl_TIOCCONS, linux_record_tdep::ioctl_TIOCEXCL, linux_record_tdep::ioctl_TIOCGETD, linux_record_tdep::ioctl_TIOCGHAYESESP, linux_record_tdep::ioctl_TIOCGICOUNT, linux_record_tdep::ioctl_TIOCGLCKTRMIOS, linux_record_tdep::ioctl_TIOCGPGRP, linux_record_tdep::ioctl_TIOCGPTN, linux_record_tdep::ioctl_TIOCGSERIAL, linux_record_tdep::ioctl_TIOCGSID, linux_record_tdep::ioctl_TIOCGSOFTCAR, linux_record_tdep::ioctl_TIOCGWINSZ, linux_record_tdep::ioctl_TIOCINQ, linux_record_tdep::ioctl_TIOCLINUX, linux_record_tdep::ioctl_TIOCMBIC, linux_record_tdep::ioctl_TIOCMBIS, linux_record_tdep::ioctl_TIOCMGET, linux_record_tdep::ioctl_TIOCMIWAIT, linux_record_tdep::ioctl_TIOCMSET, linux_record_tdep::ioctl_TIOCNOTTY, linux_record_tdep::ioctl_TIOCNXCL, linux_record_tdep::ioctl_TIOCOUTQ, linux_record_tdep::ioctl_TIOCPKT, linux_record_tdep::ioctl_TIOCSBRK, linux_record_tdep::ioctl_TIOCSCTTY, linux_record_tdep::ioctl_TIOCSERCONFIG, linux_record_tdep::ioctl_TIOCSERGETLSR, linux_record_tdep::ioctl_TIOCSERGETMULTI, linux_record_tdep::ioctl_TIOCSERGSTRUCT, linux_record_tdep::ioctl_TIOCSERGWILD, linux_record_tdep::ioctl_TIOCSERSETMULTI, linux_record_tdep::ioctl_TIOCSERSWILD, linux_record_tdep::ioctl_TIOCSETD, linux_record_tdep::ioctl_TIOCSHAYESESP, linux_record_tdep::ioctl_TIOCSLCKTRMIOS, linux_record_tdep::ioctl_TIOCSPGRP, linux_record_tdep::ioctl_TIOCSPTLCK, linux_record_tdep::ioctl_TIOCSSERIAL, linux_record_tdep::ioctl_TIOCSSOFTCAR, linux_record_tdep::ioctl_TIOCSTI, linux_record_tdep::ioctl_TIOCSWINSZ, linux_record_tdep::ioctl_TIOCTTYGSTRUCT, set_gdbarch_num_regs(), set_solib_svr4_fetch_link_map_offsets(), linux_record_tdep::size__old_kernel_stat, linux_record_tdep::size_cap_user_data_t, linux_record_tdep::size_epoll_event, linux_record_tdep::size_fd_set, linux_record_tdep::size_flock, linux_record_tdep::size_flock64, linux_record_tdep::size_fs_quota_stat, linux_record_tdep::size_gid_t, linux_record_tdep::size_hayes_esp_config, linux_record_tdep::size_if_dqblk, linux_record_tdep::size_int, linux_record_tdep::size_io_event, linux_record_tdep::size_iocb, linux_record_tdep::size_iovec, linux_record_tdep::size_itimerspec, linux_record_tdep::size_itimerval, linux_record_tdep::size_knfsd_fh, linux_record_tdep::size_loff_t, linux_record_tdep::size_long, linux_record_tdep::size_mem_dqinfo, linux_record_tdep::size_mq_attr, linux_record_tdep::size_msghdr, linux_record_tdep::size_msqid_ds, linux_record_tdep::size_new_utsname, linux_record_tdep::size_NFS_FHSIZE, linux_record_tdep::size_off_t, linux_record_tdep::size_old_dirent, linux_record_tdep::size_old_gid_t, linux_record_tdep::size_old_sigaction, linux_record_tdep::size_old_sigset_t, linux_record_tdep::size_old_uid_t, linux_record_tdep::size_old_utsname, linux_record_tdep::size_oldold_utsname, linux_record_tdep::size_PAGE_SIZE, linux_record_tdep::size_pid_t, linux_record_tdep::size_pointer, linux_record_tdep::size_pollfd, linux_record_tdep::size_rlimit, linux_record_tdep::size_rusage, linux_record_tdep::size_serial_icounter_struct, linux_record_tdep::size_serial_struct, linux_record_tdep::size_shmid_ds, linux_record_tdep::size_sigaction, linux_record_tdep::size_siginfo_t, linux_record_tdep::size_sigset_t, linux_record_tdep::size_size_t, linux_record_tdep::size_sockaddr, linux_record_tdep::size_stack_t, linux_record_tdep::size_stat, linux_record_tdep::size_stat64, linux_record_tdep::size_statfs, linux_record_tdep::size_statfs64, linux_record_tdep::size_sysinfo, linux_record_tdep::size_TASK_COMM_LEN, linux_record_tdep::size_termios, linux_record_tdep::size_termios2, linux_record_tdep::size_time_t, linux_record_tdep::size_timespec, linux_record_tdep::size_timeval, linux_record_tdep::size_timex, linux_record_tdep::size_timezone, linux_record_tdep::size_tms, linux_record_tdep::size_uid_t, linux_record_tdep::size_ulong, linux_record_tdep::size_user_desc, linux_record_tdep::size_ustat, linux_record_tdep::size_winsize, gdbarch_tdep::sizeof_gregset, svr4_ilp32_fetch_link_map_offsets(), TARGET_CHAR_BIT, gdbarch_tdep::tdesc, tdesc_data, gdbarch_info::tdesc_data, tdesc_find_feature(), tdesc_numbered_register(), and X86_XSTATE_SSE_MASK.

Referenced by _initialize_amd64_linux_tdep().

## ◆ amd64_x32_linux_syscall_record()

static int amd64_x32_linux_syscall_record | ( | struct regcache * | regcache | ) |
| static

Definition at line 1529 of file amd64-linux-tdep.c.

References amd64_linux_syscall_record_common(), and amd64_x32_linux_record_tdep.

Referenced by amd64_x32_linux_init_abi().

## Variable Documentation

## ◆ amd64_dtrace_disable_probe_sequence

const gdb_byte amd64_dtrace_disable_probe_sequence[]

Initial value:
= {
0x48, 0x33, 0xC0, 0x90, 0x90
}

Definition at line 1684 of file amd64-linux-tdep.c.

Referenced by amd64_dtrace_disable_probe().

## ◆ amd64_dtrace_disabled_probe_sequence_1

const gdb_byte amd64_dtrace_disabled_probe_sequence_1[]

Initial value:
= {
0x48, 0x33, 0xc0,
0x90,
0x90
}

Definition at line 1662 of file amd64-linux-tdep.c.

Referenced by amd64_dtrace_probe_is_enabled().

## ◆ amd64_dtrace_disabled_probe_sequence_2

const gdb_byte amd64_dtrace_disabled_probe_sequence_2[]

Initial value:
= {
0x48, 0x33, 0xc0,
0xc3,
0x90
}

Definition at line 1668 of file amd64-linux-tdep.c.

Referenced by amd64_dtrace_probe_is_enabled().

## ◆ amd64_dtrace_enable_probe_sequence

const gdb_byte amd64_dtrace_enable_probe_sequence[]

Initial value:
= {
0xb8, 0x01, 0x00, 0x00, 0x00
}

Definition at line 1677 of file amd64-linux-tdep.c.

Referenced by amd64_dtrace_enable_probe().

## ◆ amd64_linux_gregset_reg_offset

int amd64_linux_gregset_reg_offset[]

Definition at line 55 of file amd64-linux-tdep.c.

Referenced by _initialize_amd64_linux_nat(), amd64_linux_init_abi(), and amd64_x32_linux_init_abi().

## ◆ amd64_linux_record_tdep

struct linux_record_tdep amd64_linux_record_tdep
| static

Definition at line 1446 of file amd64-linux-tdep.c.

Referenced by amd64_linux_init_abi(), and amd64_linux_syscall_record().

## ◆ amd64_linux_sc_reg_offset

int amd64_linux_sc_reg_offset[]
| static

Initial value:
=
{
13 * 8,
11 * 8,
14 * 8,
12 * 8,
9 * 8,
8 * 8,
10 * 8,
15 * 8,
0 * 8,
1 * 8,
2 * 8,
3 * 8,
4 * 8,
5 * 8,
6 * 8,
7 * 8,
16 * 8,
17 * 8,
-1,
-1,
-1,
-1,
-1,
-1
}

Definition at line 246 of file amd64-linux-tdep.c.

Referenced by amd64_linux_init_abi_common().

## ◆ amd64_linux_sigtramp_code

const gdb_byte amd64_linux_sigtramp_code[]
| static

Initial value:
=
{
LINUX_SIGTRAMP_INSN0, 0xc7, 0xc0, 0x0f, 0x00, 0x00, 0x00,
LINUX_SIGTRAMP_INSN1, 0x05
}
LINUX_SIGTRAMP_INSN1
#define LINUX_SIGTRAMP_INSN1
Definition: amd64-linux-tdep.c:110
LINUX_SIGTRAMP_INSN0
#define LINUX_SIGTRAMP_INSN0
Definition: amd64-linux-tdep.c:108

Definition at line 113 of file amd64-linux-tdep.c.

Referenced by amd64_linux_sigtramp_start().

## ◆ amd64_linux_xstateregset

const struct regset amd64_linux_xstateregset
| static

Initial value:
=
{
NULL,
amd64_linux_supply_xstateregset,
amd64_linux_collect_xstateregset
}
amd64_linux_supply_xstateregset
static void amd64_linux_supply_xstateregset(const struct regset *regset, struct regcache *regcache, int regnum, const void *xstateregs, size_t len)
Definition: amd64-linux-tdep.c:1619
amd64_linux_collect_xstateregset
static void amd64_linux_collect_xstateregset(const struct regset *regset, const struct regcache *regcache, int regnum, void *xstateregs, size_t len)
Definition: amd64-linux-tdep.c:1629

Definition at line 1636 of file amd64-linux-tdep.c.

Referenced by amd64_linux_iterate_over_regset_sections().

## ◆ amd64_x32_linux_record_tdep

struct linux_record_tdep amd64_x32_linux_record_tdep
| static

Definition at line 1447 of file amd64-linux-tdep.c.

Referenced by amd64_x32_linux_init_abi(), and amd64_x32_linux_syscall_record().

## ◆ amd64_x32_linux_sigtramp_code

const gdb_byte amd64_x32_linux_sigtramp_code[]
| static

Initial value:
=
{
LINUX_SIGTRAMP_INSN0, 0xc7, 0xc0, 0x01, 0x02, 0x00, 0x40,
LINUX_SIGTRAMP_INSN1, 0x05
}
LINUX_SIGTRAMP_INSN1
#define LINUX_SIGTRAMP_INSN1
Definition: amd64-linux-tdep.c:110
LINUX_SIGTRAMP_INSN0
#define LINUX_SIGTRAMP_INSN0
Definition: amd64-linux-tdep.c:108

Definition at line 121 of file amd64-linux-tdep.c.

Referenced by amd64_linux_sigtramp_start().