GDB (xrefs)
Classes | Enumerations | Functions | Variables
/home/stan/gdb/src/gdb/moxie-tdep.c File Reference
#include "defs.h"
#include "frame.h"
#include "frame-unwind.h"
#include "frame-base.h"
#include "symtab.h"
#include "gdbtypes.h"
#include "gdbcmd.h"
#include "gdbcore.h"
#include "gdb_string.h"
#include "value.h"
#include "inferior.h"
#include "symfile.h"
#include "objfiles.h"
#include "osabi.h"
#include "language.h"
#include "arch-utils.h"
#include "regcache.h"
#include "trad-frame.h"
#include "dis-asm.h"
#include "record.h"
#include "record-full.h"
#include "gdb_assert.h"
#include "moxie-tdep.h"

Go to the source code of this file.

Classes

struct  moxie_frame_cache
struct  moxie_unwind_cache

Enumerations

enum  { REG_UNAVAIL = (CORE_ADDR) -1 }

Functions

void _initialize_moxie_tdep (void)
static CORE_ADDR moxie_frame_align (struct gdbarch *gdbarch, CORE_ADDR sp)
static const unsigned char * moxie_breakpoint_from_pc (struct gdbarch *gdbarch, CORE_ADDR *pcptr, int *lenptr)
static const char * moxie_register_name (struct gdbarch *gdbarch, int reg_nr)
static struct typemoxie_register_type (struct gdbarch *gdbarch, int reg_nr)
static void moxie_store_return_value (struct type *type, struct regcache *regcache, const void *valbuf)
static CORE_ADDR moxie_analyze_prologue (CORE_ADDR start_addr, CORE_ADDR end_addr, struct moxie_frame_cache *cache, struct gdbarch *gdbarch)
static CORE_ADDR moxie_skip_prologue (struct gdbarch *gdbarch, CORE_ADDR pc)
static CORE_ADDR moxie_read_pc (struct regcache *regcache)
static void moxie_write_pc (struct regcache *regcache, CORE_ADDR val)
static CORE_ADDR moxie_unwind_sp (struct gdbarch *gdbarch, struct frame_info *next_frame)
static void moxie_extract_return_value (struct type *type, struct regcache *regcache, void *dst)
static enum return_value_convention moxie_return_value (struct gdbarch *gdbarch, struct value *function, struct type *valtype, struct regcache *regcache, gdb_byte *readbuf, const gdb_byte *writebuf)
static struct moxie_frame_cachemoxie_alloc_frame_cache (void)
static struct moxie_frame_cachemoxie_frame_cache (struct frame_info *this_frame, void **this_cache)
static CORE_ADDR moxie_unwind_pc (struct gdbarch *gdbarch, struct frame_info *next_frame)
static void moxie_frame_this_id (struct frame_info *this_frame, void **this_prologue_cache, struct frame_id *this_id)
static struct valuemoxie_frame_prev_register (struct frame_info *this_frame, void **this_prologue_cache, int regnum)
static CORE_ADDR moxie_frame_base_address (struct frame_info *this_frame, void **this_cache)
static struct frame_id moxie_dummy_id (struct gdbarch *gdbarch, struct frame_info *this_frame)
static ULONGEST moxie_process_readu (CORE_ADDR addr, gdb_byte *buf, int length, enum bfd_endian byte_order)
static int moxie_process_record (struct gdbarch *gdbarch, struct regcache *regcache, CORE_ADDR addr)
static struct gdbarchmoxie_gdbarch_init (struct gdbarch_info info, struct gdbarch_list *arches)

Variables

char * moxie_register_names []
static struct frame_unwind moxie_frame_unwind
static struct frame_base moxie_frame_base

Enumeration Type Documentation

anonymous enum
Enumerator:
REG_UNAVAIL 

Definition at line 51 of file moxie-tdep.c.


Function Documentation

void _initialize_moxie_tdep ( void  )
static struct moxie_frame_cache* moxie_alloc_frame_cache ( void  ) [static, read]
static CORE_ADDR moxie_analyze_prologue ( CORE_ADDR  start_addr,
CORE_ADDR  end_addr,
struct moxie_frame_cache cache,
struct gdbarch gdbarch 
) [static]
static const unsigned char* moxie_breakpoint_from_pc ( struct gdbarch gdbarch,
CORE_ADDR pcptr,
int lenptr 
) [static]

Definition at line 76 of file moxie-tdep.c.

Referenced by moxie_gdbarch_init().

static struct frame_id moxie_dummy_id ( struct gdbarch gdbarch,
struct frame_info this_frame 
) [static, read]
static void moxie_extract_return_value ( struct type type,
struct regcache regcache,
void *  dst 
) [static]
static CORE_ADDR moxie_frame_align ( struct gdbarch gdbarch,
CORE_ADDR  sp 
) [static]

Definition at line 66 of file moxie-tdep.c.

Referenced by moxie_gdbarch_init().

static CORE_ADDR moxie_frame_base_address ( struct frame_info this_frame,
void **  this_cache 
) [static]

Definition at line 475 of file moxie-tdep.c.

References moxie_frame_cache::base, and moxie_frame_cache().

static struct moxie_frame_cache* moxie_frame_cache ( struct frame_info this_frame,
void **  this_cache 
) [static, read]
static struct value* moxie_frame_prev_register ( struct frame_info this_frame,
void **  this_prologue_cache,
int  regnum 
) [static, read]
static void moxie_frame_this_id ( struct frame_info this_frame,
void **  this_prologue_cache,
struct frame_id this_id 
) [static]
static struct gdbarch* moxie_gdbarch_init ( struct gdbarch_info  info,
struct gdbarch_list arches 
) [static, read]
static ULONGEST moxie_process_readu ( CORE_ADDR  addr,
gdb_byte buf,
int  length,
enum bfd_endian  byte_order 
) [static]
static int moxie_process_record ( struct gdbarch gdbarch,
struct regcache regcache,
CORE_ADDR  addr 
) [static]
static CORE_ADDR moxie_read_pc ( struct regcache regcache) [static]

Definition at line 291 of file moxie-tdep.c.

References MOXIE_PC_REGNUM, regcache_cooked_read_unsigned(), and ULONGEST.

Referenced by moxie_gdbarch_init().

static const char* moxie_register_name ( struct gdbarch gdbarch,
int  reg_nr 
) [static]

Definition at line 96 of file moxie-tdep.c.

References MOXIE_NUM_REGS.

Referenced by moxie_gdbarch_init().

static struct type* moxie_register_type ( struct gdbarch gdbarch,
int  reg_nr 
) [static, read]
static enum return_value_convention moxie_return_value ( struct gdbarch gdbarch,
struct value function,
struct type valtype,
struct regcache regcache,
gdb_byte readbuf,
const gdb_byte writebuf 
) [static]
static CORE_ADDR moxie_skip_prologue ( struct gdbarch gdbarch,
CORE_ADDR  pc 
) [static]
static void moxie_store_return_value ( struct type type,
struct regcache regcache,
const void *  valbuf 
) [static]
static CORE_ADDR moxie_unwind_pc ( struct gdbarch gdbarch,
struct frame_info next_frame 
) [static]

Definition at line 420 of file moxie-tdep.c.

References frame_unwind_register_unsigned(), and MOXIE_PC_REGNUM.

Referenced by moxie_gdbarch_init().

static CORE_ADDR moxie_unwind_sp ( struct gdbarch gdbarch,
struct frame_info next_frame 
) [static]

Definition at line 310 of file moxie-tdep.c.

References frame_unwind_register_unsigned(), and MOXIE_SP_REGNUM.

Referenced by moxie_gdbarch_init().

static void moxie_write_pc ( struct regcache regcache,
CORE_ADDR  val 
) [static]

Definition at line 302 of file moxie-tdep.c.

References MOXIE_PC_REGNUM, and regcache_cooked_write_unsigned().

Referenced by moxie_gdbarch_init().


Variable Documentation

struct frame_base moxie_frame_base [static]
Initial value:

Definition at line 483 of file moxie-tdep.c.

Initial value:
 {
  "$fp",  "$sp",  "$r0",  "$r1",  "$r2",
  "$r3",  "$r4",  "$r5", "$r6", "$r7",
  "$r8", "$r9", "$r10", "$r11", "$r12",
  "$r13", "$pc", "$cc" }

Definition at line 87 of file moxie-tdep.c.

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Defines