GDB (xrefs)
|
#include "defs.h"
#include "command.h"
#include "gdbcmd.h"
#include "inferior.h"
#include "mips-tdep.h"
#include "target.h"
#include "regcache.h"
#include "linux-nat.h"
#include "mips-linux-tdep.h"
#include "target-descriptions.h"
#include "gdb_proc_service.h"
#include "gregset.h"
#include <sgidefs.h>
#include <sys/ptrace.h>
#include <asm/ptrace.h>
#include "nat/mips-linux-watch.h"
#include "features/mips-linux.c"
#include "features/mips-dsp-linux.c"
#include "features/mips64-linux.c"
#include "features/mips64-dsp-linux.c"
Go to the source code of this file.
Macros | |
#define | PTRACE_GET_THREAD_AREA 25 |
Variables | |
static int | have_ptrace_regsets = 1 |
static void(* | super_fetch_registers )(struct target_ops *, struct regcache *, int) |
static void(* | super_store_registers )(struct target_ops *, struct regcache *, int) |
static void(* | super_close )(struct target_ops *) |
static int | watch_readback_valid |
static struct pt_watch_regs | watch_readback |
static struct mips_watchpoint * | current_watches |
static struct pt_watch_regs | watch_mirror |
#define PTRACE_GET_THREAD_AREA 25 |
Definition at line 46 of file mips-linux-nat.c.
Referenced by ps_get_thread_area().
void _initialize_mips_linux_nat | ( | void | ) |
Definition at line 769 of file mips-linux-nat.c.
References _, add_setshow_boolean_cmd(), class_maintenance, initialize_tdesc_mips64_dsp_linux(), initialize_tdesc_mips64_linux(), initialize_tdesc_mips_dsp_linux(), initialize_tdesc_mips_linux(), linux_nat_add_target(), linux_nat_set_new_thread(), linux_trad_target(), maintenance_set_cmdlist, maintenance_show_cmdlist, mips64_linux_fetch_registers(), mips64_linux_store_registers(), mips_linux_can_use_hw_breakpoint(), mips_linux_close(), mips_linux_insert_watchpoint(), mips_linux_new_thread(), mips_linux_read_description(), mips_linux_region_ok_for_hw_watchpoint(), mips_linux_register_u_offset(), mips_linux_remove_watchpoint(), mips_linux_stopped_by_watchpoint(), mips_linux_stopped_data_address(), show_debug_regs, super_close, super_fetch_registers, super_store_registers, target_ops::to_can_use_hw_breakpoint, target_ops::to_close, target_ops::to_fetch_registers, target_ops::to_insert_watchpoint, target_ops::to_read_description, target_ops::to_region_ok_for_hw_watchpoint, target_ops::to_remove_watchpoint, target_ops::to_stopped_by_watchpoint, target_ops::to_stopped_data_address, and target_ops::to_store_registers.
void fill_fpregset | ( | const struct regcache * | regcache, |
gdb_fpregset_t * | fpregsetp, | ||
int | regno | ||
) |
Definition at line 201 of file mips-linux-nat.c.
References get_regcache_arch(), mips64_fill_fpregset(), mips_fill_fpregset(), and mips_isa_regsize().
void fill_gregset | ( | const struct regcache * | regcache, |
gdb_gregset_t * | gregsetp, | ||
int | regno | ||
) |
Definition at line 181 of file mips-linux-nat.c.
References get_regcache_arch(), mips64_fill_gregset(), mips_fill_gregset(), and mips_isa_regsize().
|
static |
Definition at line 383 of file mips-linux-nat.c.
References have_ptrace_regsets, mips64_linux_regsets_fetch_registers(), and super_fetch_registers.
Referenced by _initialize_mips_linux_nat().
|
static |
Definition at line 112 of file mips-linux-nat.c.
References _, mips_regnum::badvaddr, mips_regnum::cause, DSP_BASE, DSP_CONTROL, mips_regnum::dspacc, mips_regnum::dspctl, error(), mips_regnum::fp_control_status, mips_regnum::fp_implementation_revision, gdbarch_fp0_regnum(), gdbarch_num_regs(), mips_regnum::hi, mips_regnum::lo, MIPS64_BADVADDR, MIPS64_CAUSE, MIPS64_FPC_CSR, MIPS64_FPC_EIR, MIPS64_FPR_BASE, MIPS64_MMHI, MIPS64_MMLO, MIPS64_PC, mips_linux_restart_reg_p(), mips_regnum(), MIPS_RESTART_REGNUM, MIPS_ZERO_REGNUM, and mips_regnum::pc.
Referenced by mips_linux_register_u_offset().
|
static |
Definition at line 216 of file mips-linux-nat.c.
References _, mips_regnum::dspacc, mips_regnum::dspctl, get_regcache_arch(), have_ptrace_regsets, inferior_ptid, L, mips64_supply_fpregset(), mips64_supply_gregset(), mips_regnum(), perror_with_name(), ptid_get_lwp(), ptid_get_pid(), ptrace(), PTRACE_GETFPREGS, PTRACE_GETREGS, PTRACE_TYPE_ARG3, and super_fetch_registers.
Referenced by mips64_linux_fetch_registers().
|
static |
Definition at line 304 of file mips-linux-nat.c.
References _, mips_regnum::dspacc, mips_regnum::dspctl, get_regcache_arch(), inferior_ptid, L, mips64_fill_fpregset(), mips64_fill_gregset(), mips_regnum(), perror_with_name(), ptid_get_lwp(), ptid_get_pid(), ptrace(), PTRACE_GETFPREGS, PTRACE_GETREGS, PTRACE_SETFPREGS, PTRACE_SETREGS, PTRACE_TYPE_ARG3, and super_store_registers.
Referenced by mips64_linux_store_registers().
|
static |
Definition at line 400 of file mips-linux-nat.c.
References have_ptrace_regsets, mips64_linux_regsets_store_registers(), and super_store_registers.
Referenced by _initialize_mips_linux_nat().
|
static |
Definition at line 511 of file mips-linux-nat.c.
References bp_access_watchpoint, bp_hardware_watchpoint, bp_read_watchpoint, inferior_ptid, mips_linux_read_watch_registers(), mips_linux_watch_get_irw_mask(), mips_linux_watch_get_num_valid(), ptid_get_lwp(), R_MASK, W_MASK, watch_readback, and watch_readback_valid.
Referenced by _initialize_mips_linux_nat().
|
static |
Definition at line 747 of file mips-linux-nat.c.
References current_watches, mips_watchpoint::next, super_close, and xfree().
Referenced by _initialize_mips_linux_nat().
|
static |
Definition at line 645 of file mips-linux-nat.c.
References mips_watchpoint::addr, current_watches, inferior_ptid, mips_watchpoint::len, len, mips_linux_read_watch_registers(), mips_linux_watch_populate_regs(), mips_linux_watch_try_one_watch(), mips_linux_watch_type_to_irw(), mips_show_dr(), mips_watchpoint::next, ptid_get_lwp(), show_debug_regs, mips_watchpoint::type, type, watch_mirror, watch_readback, watch_readback_valid, write_watchpoint_regs(), and xmalloc().
Referenced by _initialize_mips_linux_nat().
|
static |
Definition at line 627 of file mips-linux-nat.c.
References _, inferior_ptid, mips_linux_read_watch_registers(), perror_with_name(), lwp_info::ptid, ptid_get_lwp(), ptrace(), PTRACE_SET_WATCH_REGS, watch_mirror, watch_readback, and watch_readback_valid.
Referenced by _initialize_mips_linux_nat().
|
static |
Definition at line 426 of file mips-linux-nat.c.
References _, DSP_CONTROL, inferior_ptid, perror_with_name(), ptid_get_lwp(), ptid_get_pid(), ptrace(), tdesc_mips64_dsp_linux, tdesc_mips64_linux, tdesc_mips_dsp_linux, and tdesc_mips_linux.
Referenced by _initialize_mips_linux_nat().
|
static |
Definition at line 588 of file mips-linux-nat.c.
References inferior_ptid, mips_linux_read_watch_registers(), mips_linux_watch_get_num_valid(), mips_linux_watch_set_watchlo(), mips_linux_watch_try_one_watch(), ptid_get_lwp(), watch_readback, and watch_readback_valid.
Referenced by _initialize_mips_linux_nat().
Definition at line 71 of file mips-linux-nat.c.
References _, BADVADDR, mips_regnum::badvaddr, CAUSE, mips_regnum::cause, DSP_BASE, DSP_CONTROL, mips_regnum::dspacc, mips_regnum::dspctl, error(), mips_regnum::fp0, mips_regnum::fp_control_status, mips_regnum::fp_implementation_revision, FPC_CSR, FPC_EIR, FPR_BASE, gdbarch_num_regs(), mips_regnum::hi, mips_regnum::lo, mips_linux_restart_reg_p(), mips_regnum(), MIPS_RESTART_REGNUM, MIPS_ZERO_REGNUM, MMHI, MMLO, PC, and mips_regnum::pc.
Referenced by mips_linux_register_u_offset().
|
static |
Definition at line 417 of file mips-linux-nat.c.
References mips64_linux_register_addr(), mips_abi_regsize(), and mips_linux_register_addr().
Referenced by _initialize_mips_linux_nat().
|
static |
Definition at line 699 of file mips-linux-nat.c.
References mips_watchpoint::addr, current_watches, gdb_assert, mips_watchpoint::len, mips_linux_watch_populate_regs(), mips_show_dr(), mips_watchpoint::next, show_debug_regs, mips_watchpoint::type, watch_mirror, watch_readback, watch_readback_valid, write_watchpoint_regs(), and xfree().
Referenced by _initialize_mips_linux_nat().
|
static |
Definition at line 553 of file mips-linux-nat.c.
References inferior_ptid, MAX_DEBUG_REGISTER, mips_linux_read_watch_registers(), mips_linux_watch_get_num_valid(), mips_linux_watch_get_watchhi(), num_valid, ptid_get_lwp(), R_MASK, W_MASK, watch_readback, and watch_readback_valid.
Referenced by _initialize_mips_linux_nat().
|
static |
Definition at line 577 of file mips-linux-nat.c.
Referenced by _initialize_mips_linux_nat().
|
static |
Definition at line 481 of file mips-linux-nat.c.
References hw_access, hw_execute, hw_read, hw_write, MAX_DEBUG_REGISTER, mips_linux_watch_get_watchhi(), mips_linux_watch_get_watchlo(), paddress(), printf_unfiltered(), puts_unfiltered(), target_gdbarch(), and watch_mirror.
Referenced by mips_linux_insert_watchpoint(), and mips_linux_remove_watchpoint().
ps_err_e ps_get_thread_area | ( | const struct ps_prochandle * | ph, |
lwpid_t | lwpid, | ||
int | idx, | ||
void ** | base | ||
) |
Definition at line 155 of file mips-linux-nat.c.
References PS_ERR, PS_OK, ptrace(), PTRACE_GET_THREAD_AREA, and PTRACE_GETREGSET.
void supply_fpregset | ( | struct regcache * | regcache, |
const gdb_fpregset_t * | fpregsetp | ||
) |
Definition at line 191 of file mips-linux-nat.c.
References get_regcache_arch(), mips64_supply_fpregset(), mips_isa_regsize(), and mips_supply_fpregset().
void supply_gregset | ( | struct regcache * | regcache, |
const gdb_gregset_t * | gregsetp | ||
) |
Definition at line 172 of file mips-linux-nat.c.
References get_regcache_arch(), mips64_supply_gregset(), mips_isa_regsize(), and mips_supply_gregset().
|
static |
Definition at line 609 of file mips-linux-nat.c.
References _, ALL_LWPS, perror_with_name(), lwp_info::ptid, ptid_get_lwp(), ptrace(), PTRACE_SET_WATCH_REGS, and watch_mirror.
Referenced by mips_linux_insert_watchpoint(), and mips_linux_remove_watchpoint().
|
static |
Definition at line 473 of file mips-linux-nat.c.
Referenced by mips_linux_close(), mips_linux_insert_watchpoint(), mips_linux_remove_watchpoint(), and mips_linux_watch_populate_regs().
|
static |
Definition at line 51 of file mips-linux-nat.c.
Referenced by mips64_linux_fetch_registers(), mips64_linux_regsets_fetch_registers(), and mips64_linux_store_registers().
|
static |
Definition at line 61 of file mips-linux-nat.c.
Referenced by _initialize_mips_linux_nat(), and mips_linux_close().
|
static |
Definition at line 56 of file mips-linux-nat.c.
Referenced by _initialize_mips_linux_nat(), mips64_linux_fetch_registers(), and mips64_linux_regsets_fetch_registers().
|
static |
Definition at line 58 of file mips-linux-nat.c.
Referenced by _initialize_mips_linux_nat(), mips64_linux_regsets_store_registers(), and mips64_linux_store_registers().
|
static |
Definition at line 478 of file mips-linux-nat.c.
Referenced by mips_linux_insert_watchpoint(), mips_linux_new_thread(), mips_linux_remove_watchpoint(), mips_show_dr(), and write_watchpoint_regs().
|
static |
Definition at line 471 of file mips-linux-nat.c.
Referenced by mips_linux_can_use_hw_breakpoint(), mips_linux_insert_watchpoint(), mips_linux_new_thread(), mips_linux_region_ok_for_hw_watchpoint(), mips_linux_remove_watchpoint(), and mips_linux_stopped_by_watchpoint().
|
static |
Definition at line 467 of file mips-linux-nat.c.
Referenced by mips_linux_can_use_hw_breakpoint(), mips_linux_insert_watchpoint(), mips_linux_new_thread(), mips_linux_region_ok_for_hw_watchpoint(), mips_linux_remove_watchpoint(), and mips_linux_stopped_by_watchpoint().