GDB (xrefs)
|
#include "defs.h"
#include "command.h"
#include "inferior.h"
#include "inflow.h"
#include "terminal.h"
#include "gdbcore.h"
#include "regcache.h"
#include "gdb_assert.h"
#include "gdb_string.h"
#include "gdb_ptrace.h"
#include "gdb_wait.h"
#include <signal.h>
#include "inf-ptrace.h"
#include "inf-child.h"
#include "gdbthread.h"
Go to the source code of this file.
static void inf_ptrace_attach | ( | struct target_ops * | ops, |
char * | args, | ||
int | from_tty | ||
) | [static] |
Definition at line 190 of file inf-ptrace.c.
References _, add_thread_silent(), inferior::attach_flag, current_inferior(), discard_cleanups(), error(), gdb_flush(), gdb_stdout, get_exec_file(), arm-linux::inf, inferior_appeared(), inferior_ptid, make_cleanup(), make_cleanup_unpush_target(), null_cleanup(), parse_pid_to_attach(), perror_with_name(), pid_to_ptid(), printf_unfiltered(), ptrace(), PTRACE_TYPE_ARG3, push_target(), target_is_pushed(), and target_pid_to_str().
Referenced by inf_ptrace_target().
static void inf_ptrace_create_inferior | ( | struct target_ops * | ops, |
char * | exec_file, | ||
char * | allargs, | ||
char ** | env, | ||
int | from_tty | ||
) | [static] |
Definition at line 117 of file inf-ptrace.c.
References discard_cleanups(), fork_inferior(), inf_ptrace_me(), make_cleanup(), make_cleanup_unpush_target(), null_cleanup(), pid_to_ptid(), push_target(), START_INFERIOR_TRAPS_EXPECTED, startup_inferior(), target_is_pushed(), and target_post_startup_inferior.
Referenced by inf_ptrace_target().
static void inf_ptrace_detach | ( | struct target_ops * | ops, |
char * | args, | ||
int | from_tty | ||
) | [static] |
Definition at line 270 of file inf-ptrace.c.
References _, detach_inferior(), error(), gdb_flush(), gdb_stdout, get_exec_file(), have_inferiors(), inferior_ptid, null_ptid, perror_with_name(), pid_to_ptid(), printf_unfiltered(), ptid_get_pid(), ptrace(), PTRACE_TYPE_ARG3, target_pid_to_str(), and unpush_target().
Referenced by inf_ptrace_target().
static void inf_ptrace_fetch_register | ( | struct regcache * | regcache, |
int | regnum | ||
) | [static] |
Definition at line 714 of file inf-ptrace.c.
References _, error(), gdb_assert, gdbarch_cannot_fetch_register(), gdbarch_register_name(), get_regcache_arch(), inf_ptrace_register_u_offset, inferior_ptid, PT_READ_U, ptid_get_lwp(), ptid_get_pid(), ptrace(), PTRACE_TYPE_ARG3, PTRACE_TYPE_RET, regcache_raw_supply(), register_size(), safe_strerror(), and size.
Referenced by inf_ptrace_fetch_registers().
static void inf_ptrace_fetch_registers | ( | struct target_ops * | ops, |
struct regcache * | regcache, | ||
int | regnum | ||
) | [static] |
Definition at line 760 of file inf-ptrace.c.
References gdbarch_num_regs(), get_regcache_arch(), and inf_ptrace_fetch_register().
Referenced by inf_ptrace_trad_target().
static void inf_ptrace_files_info | ( | struct target_ops * | ignore | ) | [static] |
Definition at line 624 of file inf-ptrace.c.
References _, inferior::attach_flag, current_inferior(), inferior_ptid, printf_filtered(), and target_pid_to_str().
Referenced by inf_ptrace_target().
static void inf_ptrace_kill | ( | struct target_ops * | ops | ) | [static] |
Definition at line 310 of file inf-ptrace.c.
References inferior_ptid, PT_KILL, ptid_get_pid(), ptrace(), PTRACE_TYPE_ARG3, exsummary::status, and target_mourn_inferior().
Referenced by inf_ptrace_target().
static void inf_ptrace_me | ( | void | ) | [static] |
Definition at line 105 of file inf-ptrace.c.
References PT_TRACE_ME, ptrace(), and PTRACE_TYPE_ARG3.
Referenced by inf_ptrace_create_inferior().
static void inf_ptrace_mourn_inferior | ( | struct target_ops * | ops | ) | [static] |
Definition at line 170 of file inf-ptrace.c.
References generic_mourn_inferior(), have_inferiors(), inferior_ptid, ptid_get_pid(), exsummary::status, and unpush_target().
Referenced by inf_ptrace_target().
static char* inf_ptrace_pid_to_str | ( | struct target_ops * | ops, |
ptid_t | ptid | ||
) | [static] |
Definition at line 634 of file inf-ptrace.c.
References normal_pid_to_str().
Referenced by inf_ptrace_target().
static void inf_ptrace_resume | ( | struct target_ops * | ops, |
ptid_t | ptid, | ||
int | step, | ||
enum gdb_signal | signal | ||
) | [static] |
Definition at line 342 of file inf-ptrace.c.
References catch_syscall_enabled(), gdb_signal_to_host(), inferior_ptid, perror_with_name(), PT_CONTINUE, PT_STEP, PT_SYSCALL, ptid_get_pid(), ptrace(), and PTRACE_TYPE_ARG3.
Referenced by inf_ptrace_target().
static void inf_ptrace_stop | ( | ptid_t | ptid | ) | [static] |
Definition at line 327 of file inf-ptrace.c.
Referenced by inf_ptrace_target().
static void inf_ptrace_store_register | ( | const struct regcache * | regcache, |
int | regnum | ||
) | [static] |
Definition at line 775 of file inf-ptrace.c.
References _, error(), gdb_assert, gdbarch_cannot_store_register(), gdbarch_register_name(), get_regcache_arch(), inf_ptrace_register_u_offset, inferior_ptid, PT_WRITE_U, ptid_get_lwp(), ptid_get_pid(), ptrace(), PTRACE_TYPE_ARG3, PTRACE_TYPE_RET, regcache_raw_collect(), register_size(), safe_strerror(), and size.
Referenced by inf_ptrace_store_registers().
static void inf_ptrace_store_registers | ( | struct target_ops * | ops, |
struct regcache * | regcache, | ||
int | regnum | ||
) | [static] |
Definition at line 818 of file inf-ptrace.c.
References gdbarch_num_regs(), get_regcache_arch(), and inf_ptrace_store_register().
Referenced by inf_ptrace_trad_target().
struct target_ops* inf_ptrace_target | ( | void | ) | [read] |
Definition at line 678 of file inf-ptrace.c.
References inf_child_target(), inf_ptrace_attach(), inf_ptrace_create_inferior(), inf_ptrace_detach(), inf_ptrace_files_info(), inf_ptrace_kill(), inf_ptrace_mourn_inferior(), inf_ptrace_pid_to_str(), inf_ptrace_resume(), inf_ptrace_stop(), inf_ptrace_thread_alive(), inf_ptrace_wait(), inf_ptrace_xfer_partial, target_ops::to_attach, target_ops::to_auxv_parse, target_ops::to_create_inferior, target_ops::to_detach, target_ops::to_files_info, target_ops::to_follow_fork, target_ops::to_kill, target_ops::to_mourn_inferior, target_ops::to_pid_to_str, target_ops::to_post_attach, target_ops::to_post_startup_inferior, target_ops::to_resume, target_ops::to_stop, target_ops::to_thread_alive, target_ops::to_wait, and target_ops::to_xfer_partial.
Referenced by _initialize_alphabsd_nat(), _initialize_arm_netbsd_nat(), _initialize_hppa_hpux_nat(), _initialize_hppabsd_nat(), _initialize_hppanbsd_nat(), _initialize_m68kbsd_nat(), _initialize_m88kbsd_nat(), _initialize_mips64obsd_nat(), _initialize_mipsnbsd_nat(), _initialize_ppcfbsd_nat(), _initialize_ppcnbsd_nat(), _initialize_ppcobsd_nat(), _initialize_rs6000_nat(), _initialize_shnbsd_nat(), _initialize_spu_nat(), _initialize_vaxbsd_nat(), amd64bsd_target(), i386bsd_target(), inf_ptrace_trad_target(), linux_target(), and sparc_target().
static int inf_ptrace_thread_alive | ( | struct target_ops * | ops, |
ptid_t | ptid | ||
) | [static] |
Definition at line 615 of file inf-ptrace.c.
References ptid_get_pid().
Referenced by inf_ptrace_target().
struct target_ops* inf_ptrace_trad_target | ( | CORE_ADDR(*)(struct gdbarch *, int, int) | register_u_offset | ) | [read] |
Definition at line 835 of file inf-ptrace.c.
References gdb_assert, inf_ptrace_fetch_registers(), inf_ptrace_register_u_offset, inf_ptrace_store_registers(), inf_ptrace_target(), target_ops::to_fetch_registers, and target_ops::to_store_registers.
Referenced by _initialize_vax_nat(), and linux_trad_target().
static ptid_t inf_ptrace_wait | ( | struct target_ops * | ops, |
ptid_t | ptid, | ||
struct target_waitstatus * | ourstatus, | ||
int | options | ||
) | [static] |
Definition at line 382 of file inf-ptrace.c.
References _, clear_sigint_trap(), fprintf_unfiltered(), gdb_assert, gdb_stderr, inferior_ptid, target_waitstatus::kind, perror_with_name(), pid_to_ptid(), ptid_get_pid(), ptrace(), PTRACE_TYPE_ARG3, target_waitstatus::related_pid, safe_strerror(), set_sigint_trap(), target_waitstatus::sig, exsummary::status, store_waitstatus(), TARGET_WAITKIND_FORKED, TARGET_WAITKIND_SIGNALLED, and target_waitstatus::value.
Referenced by inf_ptrace_target().
static LONGEST inf_ptrace_xfer_partial | ( | struct target_ops * | ops, |
enum target_object | object, | ||
const char * | annex, | ||
gdb_byte * | readbuf, | ||
const gdb_byte * | writebuf, | ||
ULONGEST | offset, | ||
LONGEST | len | ||
) | [static] |
Definition at line 466 of file inf-ptrace.c.
References inferior_ptid, len, LONGEST, memcpy(), offset, PT_READ_I, PT_WRITE_D, PT_WRITE_I, ptid_get_pid(), ptrace(), PTRACE_TYPE_ARG3, PTRACE_TYPE_RET, TARGET_OBJECT_AUXV, TARGET_OBJECT_MEMORY, TARGET_OBJECT_UNWIND_TABLE, TARGET_OBJECT_WCOOKIE, ULONGEST, and word.
CORE_ADDR(* inf_ptrace_register_u_offset)(struct gdbarch *, int, int) [static] |
Definition at line 709 of file inf-ptrace.c.
Referenced by inf_ptrace_fetch_register(), inf_ptrace_store_register(), and inf_ptrace_trad_target().