GDB (xrefs)
Macros | Functions | Variables
/tmp/gdb-7.10/gdb/mips-linux-nat.c File Reference
#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
 

Functions

static CORE_ADDR mips_linux_register_addr (struct gdbarch *gdbarch, int regno, int store)
 
static CORE_ADDR mips64_linux_register_addr (struct gdbarch *gdbarch, int regno, int store)
 
ps_err_e ps_get_thread_area (const struct ps_prochandle *ph, lwpid_t lwpid, int idx, void **base)
 
void supply_gregset (struct regcache *regcache, const gdb_gregset_t *gregsetp)
 
void fill_gregset (const struct regcache *regcache, gdb_gregset_t *gregsetp, int regno)
 
void supply_fpregset (struct regcache *regcache, const gdb_fpregset_t *fpregsetp)
 
void fill_fpregset (const struct regcache *regcache, gdb_fpregset_t *fpregsetp, int regno)
 
static void mips64_linux_regsets_fetch_registers (struct target_ops *ops, struct regcache *regcache, int regno)
 
static void mips64_linux_regsets_store_registers (struct target_ops *ops, struct regcache *regcache, int regno)
 
static void mips64_linux_fetch_registers (struct target_ops *ops, struct regcache *regcache, int regnum)
 
static void mips64_linux_store_registers (struct target_ops *ops, struct regcache *regcache, int regnum)
 
static CORE_ADDR mips_linux_register_u_offset (struct gdbarch *gdbarch, int regno, int store_p)
 
static const struct target_descmips_linux_read_description (struct target_ops *ops)
 
static void mips_show_dr (const char *func, CORE_ADDR addr, int len, enum target_hw_bp_type type)
 
static int mips_linux_can_use_hw_breakpoint (struct target_ops *self, int type, int cnt, int ot)
 
static int mips_linux_stopped_by_watchpoint (struct target_ops *ops)
 
static int mips_linux_stopped_data_address (struct target_ops *t, CORE_ADDR *paddr)
 
static int mips_linux_region_ok_for_hw_watchpoint (struct target_ops *self, CORE_ADDR addr, int len)
 
static int write_watchpoint_regs (void)
 
static void mips_linux_new_thread (struct lwp_info *lp)
 
static int mips_linux_insert_watchpoint (struct target_ops *self, CORE_ADDR addr, int len, int type, struct expression *cond)
 
static int mips_linux_remove_watchpoint (struct target_ops *self, CORE_ADDR addr, int len, int type, struct expression *cond)
 
static void mips_linux_close (struct target_ops *self)
 
void _initialize_mips_linux_nat (void)
 

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_watchpointcurrent_watches
 
static struct pt_watch_regs watch_mirror
 

Macro Definition Documentation

#define PTRACE_GET_THREAD_AREA   25

Definition at line 46 of file mips-linux-nat.c.

Referenced by ps_get_thread_area().

Function Documentation

void _initialize_mips_linux_nat ( void  )
void fill_fpregset ( const struct regcache regcache,
gdb_fpregset_t fpregsetp,
int  regno 
)
void fill_gregset ( const struct regcache regcache,
gdb_gregset_t gregsetp,
int  regno 
)
static void mips64_linux_fetch_registers ( struct target_ops ops,
struct regcache regcache,
int  regnum 
)
static
static CORE_ADDR mips64_linux_register_addr ( struct gdbarch gdbarch,
int  regno,
int  store 
)
static
static void mips64_linux_regsets_fetch_registers ( struct target_ops ops,
struct regcache regcache,
int  regno 
)
static
static void mips64_linux_regsets_store_registers ( struct target_ops ops,
struct regcache regcache,
int  regno 
)
static
static void mips64_linux_store_registers ( struct target_ops ops,
struct regcache regcache,
int  regnum 
)
static
static int mips_linux_can_use_hw_breakpoint ( struct target_ops self,
int  type,
int  cnt,
int  ot 
)
static
static void mips_linux_close ( struct target_ops self)
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 int mips_linux_insert_watchpoint ( struct target_ops self,
CORE_ADDR  addr,
int  len,
int  type,
struct expression cond 
)
static
static void mips_linux_new_thread ( struct lwp_info lp)
static
static const struct target_desc* mips_linux_read_description ( struct target_ops ops)
static
static int mips_linux_region_ok_for_hw_watchpoint ( struct target_ops self,
CORE_ADDR  addr,
int  len 
)
static
static CORE_ADDR mips_linux_register_addr ( struct gdbarch gdbarch,
int  regno,
int  store 
)
static
static CORE_ADDR mips_linux_register_u_offset ( struct gdbarch gdbarch,
int  regno,
int  store_p 
)
static
static int mips_linux_remove_watchpoint ( struct target_ops self,
CORE_ADDR  addr,
int  len,
int  type,
struct expression cond 
)
static
static int mips_linux_stopped_by_watchpoint ( struct target_ops ops)
static
static int mips_linux_stopped_data_address ( struct target_ops t,
CORE_ADDR paddr 
)
static

Definition at line 577 of file mips-linux-nat.c.

Referenced by _initialize_mips_linux_nat().

static void mips_show_dr ( const char *  func,
CORE_ADDR  addr,
int  len,
enum target_hw_bp_type  type 
)
static
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 
)
void supply_gregset ( struct regcache regcache,
const gdb_gregset_t gregsetp 
)
static int write_watchpoint_regs ( void  )
static

Variable Documentation

struct mips_watchpoint* current_watches
static
int have_ptrace_regsets = 1
static
void(* super_close) (struct target_ops *)
static

Definition at line 61 of file mips-linux-nat.c.

Referenced by _initialize_mips_linux_nat(), and mips_linux_close().

void(* super_fetch_registers) (struct target_ops *, struct regcache *, int)
static
void(* super_store_registers) (struct target_ops *, struct regcache *, int)
static
struct pt_watch_regs watch_mirror
static
struct pt_watch_regs watch_readback
static
int watch_readback_valid
static