GDB (API)
Classes | Defines | Enumerations | Functions
/home/stan/gdb/src/gdb/ppc-tdep.h File Reference

Go to the source code of this file.

Classes

struct  ppc_reg_offsets
struct  gdbarch_tdep
struct  ppc_insn_pattern

Defines

#define PPC_INSN_SIZE   4
#define PPC_MAX_EPILOGUE_INSTRUCTIONS   52

Enumerations

enum  powerpc_vector_abi {
  POWERPC_VEC_AUTO, POWERPC_VEC_GENERIC, POWERPC_VEC_ALTIVEC, POWERPC_VEC_SPE,
  POWERPC_VEC_LAST
}
enum  {
  ppc_num_gprs = 32, ppc_num_fprs = 32, ppc_num_srs = 16, ppc_num_vrs = 32,
  ppc_num_vshrs = 32, ppc_num_vsrs = 64, ppc_num_efprs = 32
}
enum  {
  PPC_R0_REGNUM = 0, PPC_F0_REGNUM = 32, PPC_PC_REGNUM = 64, PPC_MSR_REGNUM = 65,
  PPC_CR_REGNUM = 66, PPC_LR_REGNUM = 67, PPC_CTR_REGNUM = 68, PPC_XER_REGNUM = 69,
  PPC_FPSCR_REGNUM = 70, PPC_MQ_REGNUM = 71, PPC_SPE_UPPER_GP0_REGNUM = 72, PPC_SPE_ACC_REGNUM = 104,
  PPC_SPE_FSCR_REGNUM = 105, PPC_VR0_REGNUM = 106, PPC_VSCR_REGNUM = 138, PPC_VRSAVE_REGNUM = 139,
  PPC_VSR0_UPPER_REGNUM = 140, PPC_VSR31_UPPER_REGNUM = 171, PPC_NUM_REGS
}

Functions

enum return_value_convention ppc_sysv_abi_return_value (struct gdbarch *gdbarch, struct value *function, struct type *valtype, struct regcache *regcache, gdb_byte *readbuf, const gdb_byte *writebuf)
enum return_value_convention ppc_sysv_abi_broken_return_value (struct gdbarch *gdbarch, struct value *function, struct type *valtype, struct regcache *regcache, gdb_byte *readbuf, const gdb_byte *writebuf)
CORE_ADDR ppc_sysv_abi_push_dummy_call (struct gdbarch *gdbarch, struct value *function, struct regcache *regcache, CORE_ADDR bp_addr, int nargs, struct value **args, CORE_ADDR sp, int struct_return, CORE_ADDR struct_addr)
CORE_ADDR ppc64_sysv_abi_push_dummy_call (struct gdbarch *gdbarch, struct value *function, struct regcache *regcache, CORE_ADDR bp_addr, int nargs, struct value **args, CORE_ADDR sp, int struct_return, CORE_ADDR struct_addr)
enum return_value_convention ppc64_sysv_abi_return_value (struct gdbarch *gdbarch, struct value *function, struct type *valtype, struct regcache *regcache, gdb_byte *readbuf, const gdb_byte *writebuf)
int altivec_register_p (struct gdbarch *gdbarch, int regno)
int vsx_register_p (struct gdbarch *gdbarch, int regno)
int spe_register_p (struct gdbarch *gdbarch, int regno)
int ppc_floating_point_unit_p (struct gdbarch *gdbarch)
int ppc_altivec_support_p (struct gdbarch *gdbarch)
int vsx_support_p (struct gdbarch *gdbarch)
int ppc_deal_with_atomic_sequence (struct frame_info *frame)
void ppc_supply_reg (struct regcache *regcache, int regnum, const gdb_byte *regs, size_t offset, int regsize)
void ppc_collect_reg (const struct regcache *regcache, int regnum, gdb_byte *regs, size_t offset, int regsize)
void ppc_supply_gregset (const struct regset *regset, struct regcache *regcache, int regnum, const void *gregs, size_t len)
void ppc_supply_fpregset (const struct regset *regset, struct regcache *regcache, int regnum, const void *fpregs, size_t len)
void ppc_supply_vrregset (const struct regset *regset, struct regcache *regcache, int regnum, const void *vrregs, size_t len)
void ppc_supply_vsxregset (const struct regset *regset, struct regcache *regcache, int regnum, const void *vsxregs, size_t len)
void ppc_collect_gregset (const struct regset *regset, const struct regcache *regcache, int regnum, void *gregs, size_t len)
void ppc_collect_fpregset (const struct regset *regset, const struct regcache *regcache, int regnum, void *fpregs, size_t len)
void ppc_collect_vrregset (const struct regset *regset, const struct regcache *regcache, int regnum, void *vrregs, size_t len)
void ppc_collect_vsxregset (const struct regset *regset, const struct regcache *regcache, int regnum, void *vsxregs, size_t len)
int ppc_insns_match_pattern (struct frame_info *frame, CORE_ADDR pc, struct ppc_insn_pattern *pattern, unsigned int *insns)
CORE_ADDR ppc_insn_d_field (unsigned int insn)
CORE_ADDR ppc_insn_ds_field (unsigned int insn)

Define Documentation

#define PPC_INSN_SIZE   4

Definition at line 311 of file ppc-tdep.h.

Definition at line 314 of file ppc-tdep.h.


Enumeration Type Documentation

anonymous enum
Enumerator:
ppc_num_gprs 
ppc_num_fprs 
ppc_num_srs 
ppc_num_vrs 
ppc_num_vshrs 
ppc_num_vsrs 
ppc_num_efprs 

Definition at line 255 of file ppc-tdep.h.

anonymous enum
Enumerator:
PPC_R0_REGNUM 
PPC_F0_REGNUM 
PPC_PC_REGNUM 
PPC_MSR_REGNUM 
PPC_CR_REGNUM 
PPC_LR_REGNUM 
PPC_CTR_REGNUM 
PPC_XER_REGNUM 
PPC_FPSCR_REGNUM 
PPC_MQ_REGNUM 
PPC_SPE_UPPER_GP0_REGNUM 
PPC_SPE_ACC_REGNUM 
PPC_SPE_FSCR_REGNUM 
PPC_VR0_REGNUM 
PPC_VSCR_REGNUM 
PPC_VRSAVE_REGNUM 
PPC_VSR0_UPPER_REGNUM 
PPC_VSR31_UPPER_REGNUM 
PPC_NUM_REGS 

Definition at line 272 of file ppc-tdep.h.

Enumerator:
POWERPC_VEC_AUTO 
POWERPC_VEC_GENERIC 
POWERPC_VEC_ALTIVEC 
POWERPC_VEC_SPE 
POWERPC_VEC_LAST 

Definition at line 186 of file ppc-tdep.h.


Function Documentation

int altivec_register_p ( struct gdbarch *  gdbarch,
int  regno 
)

Definition at line 165 of file rs6000-tdep.c.

CORE_ADDR ppc64_sysv_abi_push_dummy_call ( struct gdbarch *  gdbarch,
struct value *  function,
struct regcache *  regcache,
CORE_ADDR  bp_addr,
int  nargs,
struct value **  args,
CORE_ADDR  sp,
int  struct_return,
CORE_ADDR  struct_addr 
)

Definition at line 1190 of file ppc-sysv-tdep.c.

enum return_value_convention ppc64_sysv_abi_return_value ( struct gdbarch *  gdbarch,
struct value *  function,
struct type valtype,
struct regcache *  regcache,
gdb_byte readbuf,
const gdb_byte writebuf 
)

Definition at line 1770 of file ppc-sysv-tdep.c.

int ppc_altivec_support_p ( struct gdbarch *  gdbarch)

Definition at line 230 of file rs6000-tdep.c.

void ppc_collect_fpregset ( const struct regset regset,
const struct regcache *  regcache,
int  regnum,
void *  fpregs,
size_t  len 
)

Definition at line 707 of file rs6000-tdep.c.

void ppc_collect_gregset ( const struct regset regset,
const struct regcache *  regcache,
int  regnum,
void *  gregs,
size_t  len 
)

Definition at line 660 of file rs6000-tdep.c.

void ppc_collect_reg ( const struct regcache *  regcache,
int  regnum,
gdb_byte regs,
size_t  offset,
int  regsize 
)

Definition at line 401 of file rs6000-tdep.c.

void ppc_collect_vrregset ( const struct regset regset,
const struct regcache *  regcache,
int  regnum,
void *  vrregs,
size_t  len 
)

Definition at line 780 of file rs6000-tdep.c.

void ppc_collect_vsxregset ( const struct regset regset,
const struct regcache *  regcache,
int  regnum,
void *  vsxregs,
size_t  len 
)

Definition at line 746 of file rs6000-tdep.c.

int ppc_deal_with_atomic_sequence ( struct frame_info *  frame)

Definition at line 1084 of file rs6000-tdep.c.

int ppc_floating_point_unit_p ( struct gdbarch *  gdbarch)

Definition at line 209 of file rs6000-tdep.c.

CORE_ADDR ppc_insn_d_field ( unsigned int  insn)

Definition at line 4295 of file rs6000-tdep.c.

CORE_ADDR ppc_insn_ds_field ( unsigned int  insn)

Definition at line 4305 of file rs6000-tdep.c.

int ppc_insns_match_pattern ( struct frame_info *  frame,
CORE_ADDR  pc,
struct ppc_insn_pattern pattern,
unsigned int insns 
)

Definition at line 4266 of file rs6000-tdep.c.

void ppc_supply_fpregset ( const struct regset regset,
struct regcache *  regcache,
int  regnum,
const void *  fpregs,
size_t  len 
)

Definition at line 547 of file rs6000-tdep.c.

void ppc_supply_gregset ( const struct regset regset,
struct regcache *  regcache,
int  regnum,
const void *  gregs,
size_t  len 
)

Definition at line 502 of file rs6000-tdep.c.

void ppc_supply_reg ( struct regcache *  regcache,
int  regnum,
const gdb_byte regs,
size_t  offset,
int  regsize 
)

Definition at line 380 of file rs6000-tdep.c.

void ppc_supply_vrregset ( const struct regset regset,
struct regcache *  regcache,
int  regnum,
const void *  vrregs,
size_t  len 
)

Definition at line 615 of file rs6000-tdep.c.

void ppc_supply_vsxregset ( const struct regset regset,
struct regcache *  regcache,
int  regnum,
const void *  vsxregs,
size_t  len 
)

Definition at line 584 of file rs6000-tdep.c.

enum return_value_convention ppc_sysv_abi_broken_return_value ( struct gdbarch *  gdbarch,
struct value *  function,
struct type valtype,
struct regcache *  regcache,
gdb_byte readbuf,
const gdb_byte writebuf 
)

Definition at line 1053 of file ppc-sysv-tdep.c.

CORE_ADDR ppc_sysv_abi_push_dummy_call ( struct gdbarch *  gdbarch,
struct value *  function,
struct regcache *  regcache,
CORE_ADDR  bp_addr,
int  nargs,
struct value **  args,
CORE_ADDR  sp,
int  struct_return,
CORE_ADDR  struct_addr 
)

Definition at line 62 of file ppc-sysv-tdep.c.

enum return_value_convention ppc_sysv_abi_return_value ( struct gdbarch *  gdbarch,
struct value *  function,
struct type valtype,
struct regcache *  regcache,
gdb_byte readbuf,
const gdb_byte writebuf 
)

Definition at line 1043 of file ppc-sysv-tdep.c.

int spe_register_p ( struct gdbarch *  gdbarch,
int  regno 
)

Definition at line 177 of file rs6000-tdep.c.

int vsx_register_p ( struct gdbarch *  gdbarch,
int  regno 
)

Definition at line 153 of file rs6000-tdep.c.

int vsx_support_p ( struct gdbarch *  gdbarch)
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Defines