GDB (xrefs)
Classes | Functions | Variables
/tmp/gdb-7.10/gdb/s390-linux-nat.c File Reference
#include "defs.h"
#include "regcache.h"
#include "inferior.h"
#include "target.h"
#include "linux-nat.h"
#include "auxv.h"
#include "gregset.h"
#include "regset.h"
#include "nat/linux-ptrace.h"
#include "s390-linux-tdep.h"
#include "elf/common.h"
#include <asm/ptrace.h>
#include <sys/ptrace.h>
#include <asm/types.h>
#include <sys/procfs.h>
#include <sys/ucontext.h>
#include <elf.h>

Go to the source code of this file.

Classes

struct  arch_lwp_info
 
struct  watch_area
 

Functions

void supply_gregset (struct regcache *regcache, const gregset_t *regp)
 
void fill_gregset (const struct regcache *regcache, gregset_t *regp, int regno)
 
void supply_fpregset (struct regcache *regcache, const fpregset_t *regp)
 
void fill_fpregset (const struct regcache *regcache, fpregset_t *regp, int regno)
 
static int s390_inferior_tid (void)
 
static void fetch_regs (struct regcache *regcache, int tid)
 
static void store_regs (const struct regcache *regcache, int tid, int regnum)
 
static void fetch_fpregs (struct regcache *regcache, int tid)
 
static void store_fpregs (const struct regcache *regcache, int tid, int regnum)
 
static void fetch_regset (struct regcache *regcache, int tid, int regset_id, int regsize, const struct regset *regset)
 
static void store_regset (struct regcache *regcache, int tid, int regset_id, int regsize, const struct regset *regset)
 
static int check_regset (int tid, int regset, int regsize)
 
static void s390_linux_fetch_inferior_registers (struct target_ops *ops, struct regcache *regcache, int regnum)
 
static void s390_linux_store_inferior_registers (struct target_ops *ops, struct regcache *regcache, int regnum)
 
static int s390_stopped_by_watchpoint (struct target_ops *ops)
 
static void s390_prepare_to_resume (struct lwp_info *lp)
 
static void s390_refresh_per_info (struct lwp_info *lp)
 
static void s390_new_thread (struct lwp_info *lp)
 
static int s390_insert_watchpoint (struct target_ops *self, CORE_ADDR addr, int len, int type, struct expression *cond)
 
static int s390_remove_watchpoint (struct target_ops *self, CORE_ADDR addr, int len, int type, struct expression *cond)
 
static int s390_can_use_hw_breakpoint (struct target_ops *self, int type, int cnt, int othertype)
 
static int s390_region_ok_for_hw_watchpoint (struct target_ops *self, CORE_ADDR addr, int cnt)
 
static int s390_target_wordsize (void)
 
static int s390_auxv_parse (struct target_ops *ops, gdb_byte **readptr, gdb_byte *endptr, CORE_ADDR *typep, CORE_ADDR *valp)
 
static const struct target_descs390_read_description (struct target_ops *ops)
 
void _initialize_s390_nat (void)
 

Variables

static int have_regset_last_break = 0
 
static int have_regset_system_call = 0
 
static int have_regset_tdb = 0
 
static int have_regset_vxrs = 0
 
static struct watch_areawatch_base = NULL
 

Function Documentation

void _initialize_s390_nat ( void  )
static int check_regset ( int  tid,
int  regset,
int  regsize 
)
static

Definition at line 339 of file s390-linux-nat.c.

References ptrace(), and PTRACE_GETREGSET.

Referenced by s390_read_description().

static void fetch_fpregs ( struct regcache regcache,
int  tid 
)
static

Definition at line 255 of file s390-linux-nat.c.

References _, perror_with_name(), ptrace(), and supply_fpregset().

Referenced by s390_linux_fetch_inferior_registers().

static void fetch_regs ( struct regcache regcache,
int  tid 
)
static

Definition at line 218 of file s390-linux-nat.c.

References _, perror_with_name(), ptrace(), and supply_gregset().

Referenced by s390_linux_fetch_inferior_registers().

static void fetch_regset ( struct regcache regcache,
int  tid,
int  regset_id,
int  regsize,
const struct regset regset 
)
static
void fill_fpregset ( const struct regcache regcache,
fpregset_t regp,
int  regno 
)

Definition at line 197 of file s390-linux-nat.c.

References regcache_collect_regset(), and s390_fpregset.

Referenced by store_fpregs().

void fill_gregset ( const struct regcache regcache,
gregset_t regp,
int  regno 
)
static int s390_auxv_parse ( struct target_ops ops,
gdb_byte **  readptr,
gdb_byte endptr,
CORE_ADDR typep,
CORE_ADDR valp 
)
static
static int s390_can_use_hw_breakpoint ( struct target_ops self,
int  type,
int  cnt,
int  othertype 
)
static

Definition at line 607 of file s390-linux-nat.c.

References bp_hardware_watchpoint.

Referenced by _initialize_s390_nat().

static int s390_inferior_tid ( void  )
static
static int s390_insert_watchpoint ( struct target_ops self,
CORE_ADDR  addr,
int  len,
int  type,
struct expression cond 
)
static
static void s390_linux_fetch_inferior_registers ( struct target_ops ops,
struct regcache regcache,
int  regnum 
)
static
static void s390_linux_store_inferior_registers ( struct target_ops ops,
struct regcache regcache,
int  regnum 
)
static
static void s390_new_thread ( struct lwp_info lp)
static

Definition at line 549 of file s390-linux-nat.c.

References lwp_info::arch_private, and arch_lwp_info::per_info_changed.

Referenced by _initialize_s390_nat().

static void s390_prepare_to_resume ( struct lwp_info lp)
static
static const struct target_desc* s390_read_description ( struct target_ops ops)
static
static void s390_refresh_per_info ( struct lwp_info lp)
static
static int s390_region_ok_for_hw_watchpoint ( struct target_ops self,
CORE_ADDR  addr,
int  cnt 
)
static

Definition at line 614 of file s390-linux-nat.c.

Referenced by _initialize_s390_nat().

static int s390_remove_watchpoint ( struct target_ops self,
CORE_ADDR  addr,
int  len,
int  type,
struct expression cond 
)
static
static int s390_stopped_by_watchpoint ( struct target_ops ops)
static

Definition at line 449 of file s390-linux-nat.c.

References _, perror_with_name(), ptrace(), and s390_inferior_tid().

Referenced by _initialize_s390_nat().

static int s390_target_wordsize ( void  )
static

Definition at line 621 of file s390-linux-nat.c.

References gdb.printing::long, ptrace(), s390_inferior_tid(), and wordsize.

Referenced by s390_auxv_parse(), and s390_read_description().

static void store_fpregs ( const struct regcache regcache,
int  tid,
int  regnum 
)
static

Definition at line 272 of file s390-linux-nat.c.

References _, fill_fpregset(), perror_with_name(), and ptrace().

Referenced by s390_linux_store_inferior_registers().

static void store_regs ( const struct regcache regcache,
int  tid,
int  regnum 
)
static

Definition at line 235 of file s390-linux-nat.c.

References _, fill_gregset(), perror_with_name(), and ptrace().

Referenced by s390_linux_store_inferior_registers().

static void store_regset ( struct regcache regcache,
int  tid,
int  regset_id,
int  regsize,
const struct regset regset 
)
static
void supply_fpregset ( struct regcache regcache,
const fpregset_t regp 
)

Definition at line 187 of file s390-linux-nat.c.

References regcache_supply_regset(), and s390_fpregset.

Referenced by fetch_fpregs().

void supply_gregset ( struct regcache regcache,
const gregset_t regp 
)

Variable Documentation

int have_regset_last_break = 0
static

Definition at line 50 of file s390-linux-nat.c.

Referenced by s390_linux_fetch_inferior_registers(), and s390_read_description().

int have_regset_system_call = 0
static
int have_regset_tdb = 0
static

Definition at line 52 of file s390-linux-nat.c.

Referenced by s390_linux_fetch_inferior_registers(), and s390_read_description().

int have_regset_vxrs = 0
static
struct watch_area* watch_base = NULL
static

Definition at line 446 of file s390-linux-nat.c.

Referenced by s390_insert_watchpoint().