GDBserver
Defines | Enumerations | Functions | Variables
/home/stan/gdb/src/gdb/gdbserver/linux-xtensa-low.c File Reference
#include "server.h"
#include "linux-low.h"
#include <sys/ptrace.h>
#include <xtensa-config.h>
#include "xtensa-xtregs.c"

Go to the source code of this file.

Defines

#define XTENSA_BREAKPOINT   {0xd2,0x0f}
#define xtensa_breakpoint_len   2

Enumerations

enum  regnum {
  R_PC = 0, R_PS, R_LBEG, R_LEND,
  R_LCOUNT, R_SAR, R_WS, R_WB,
  R_A0 = 64
}

Functions

void init_registers_xtensa (void)
static void xtensa_fill_gregset (struct regcache *regcache, void *buf)
static void xtensa_store_gregset (struct regcache *regcache, const void *buf)
static void xtensa_fill_xtregset (struct regcache *regcache, void *buf)
static void xtensa_store_xtregset (struct regcache *regcache, const void *buf)
static CORE_ADDR xtensa_get_pc (struct regcache *regcache)
static void xtensa_set_pc (struct regcache *regcache, CORE_ADDR pc)
static int xtensa_breakpoint_at (CORE_ADDR where)
static void xtensa_arch_setup (void)
static struct regs_infoxtensa_regs_info (void)
void initialize_low_arch (void)

Variables

struct target_desctdesc_xtensa
static struct regset_info xtensa_regsets []
static const unsigned char xtensa_breakpoint [] = XTENSA_BREAKPOINT
static struct regsets_info xtensa_regsets_info
static struct usrregs_info xtensa_usrregs_info
static struct regs_info regs_info
struct linux_target_ops the_low_target

Define Documentation

#define XTENSA_BREAKPOINT   {0xd2,0x0f}

Definition at line 147 of file linux-xtensa-low.c.

#define xtensa_breakpoint_len   2

Definition at line 153 of file linux-xtensa-low.c.

Referenced by xtensa_breakpoint_at().


Enumeration Type Documentation

enum regnum
Enumerator:
R_PC 
R_PS 
R_LBEG 
R_LEND 
R_LCOUNT 
R_SAR 
R_WS 
R_WB 
R_A0 

Definition at line 32 of file linux-xtensa-low.c.


Function Documentation

void init_registers_xtensa ( void  )

Referenced by initialize_low_arch().

void initialize_low_arch ( void  )

Definition at line 231 of file linux-xtensa-low.c.

References init_registers_aarch64(), and init_registers_xtensa().

static void xtensa_arch_setup ( void  ) [static]

Definition at line 203 of file linux-xtensa-low.c.

References current_process(), and process_info::tdesc.

static int xtensa_breakpoint_at ( CORE_ADDR  where) [static]
static void xtensa_fill_gregset ( struct regcache regcache,
void *  buf 
) [static]
static void xtensa_fill_xtregset ( struct regcache regcache,
void *  buf 
) [static]
static CORE_ADDR xtensa_get_pc ( struct regcache regcache) [static]

Definition at line 156 of file linux-xtensa-low.c.

References collect_register_by_name().

static struct regs_info* xtensa_regs_info ( void  ) [static, read]

Definition at line 209 of file linux-xtensa-low.c.

References regs_info.

static void xtensa_set_pc ( struct regcache regcache,
CORE_ADDR  pc 
) [static]

Definition at line 165 of file linux-xtensa-low.c.

References supply_register_by_name().

static void xtensa_store_gregset ( struct regcache regcache,
const void *  buf 
) [static]
static void xtensa_store_xtregset ( struct regcache regcache,
const void *  buf 
) [static]

Variable Documentation

struct regs_info regs_info [static]
Initial value:

Definition at line 195 of file linux-xtensa-low.c.

Referenced by xtensa_regs_info().

const unsigned char xtensa_breakpoint[] = XTENSA_BREAKPOINT [static]

Definition at line 152 of file linux-xtensa-low.c.

struct regset_info xtensa_regsets[] [static]
Initial value:
 {
  { PTRACE_GETREGS, PTRACE_SETREGS, 0, sizeof (elf_gregset_t),
    GENERAL_REGS,
    xtensa_fill_gregset, xtensa_store_gregset },
  { PTRACE_GETXTREGS, PTRACE_SETXTREGS, 0, XTENSA_ELF_XTREG_SIZE,
    EXTENDED_REGS,
    xtensa_fill_xtregset, xtensa_store_xtregset },
  { 0, 0, 0, -1, -1, NULL, NULL }
}

Definition at line 136 of file linux-xtensa-low.c.

struct regsets_info xtensa_regsets_info [static]
Initial value:
  {
    xtensa_regsets, 
    0, 
    NULL, 
  }

Definition at line 182 of file linux-xtensa-low.c.

Initial value:
  {
    xtensa_num_regs,
    xtensa_regmap,
  }

Definition at line 189 of file linux-xtensa-low.c.

 All Classes Files Functions Variables Typedefs Enumerations Enumerator Defines