GDB (xrefs)
Loading...
Searching...
No Matches
Classes | Functions | Variables
csky-tdep.c File Reference
#include "defs.h"
#include "gdbsupport/gdb_assert.h"
#include "frame.h"
#include "inferior.h"
#include "symtab.h"
#include "value.h"
#include "gdbcmd.h"
#include "language.h"
#include "gdbcore.h"
#include "symfile.h"
#include "objfiles.h"
#include "gdbtypes.h"
#include "target.h"
#include "arch-utils.h"
#include "regcache.h"
#include "osabi.h"
#include "block.h"
#include "reggroups.h"
#include "elf/csky.h"
#include "elf-bfd.h"
#include "symcat.h"
#include "sim-regno.h"
#include "dis-asm.h"
#include "frame-unwind.h"
#include "frame-base.h"
#include "trad-frame.h"
#include "infcall.h"
#include "floatformat.h"
#include "remote.h"
#include "target-descriptions.h"
#include "dwarf2/frame.h"
#include "user-regs.h"
#include "valprint.h"
#include "csky-tdep.h"
#include "regset.h"
#include "opcode/csky.h"
#include <algorithm>
#include <vector>

Go to the source code of this file.

Classes

struct  csky_supported_tdesc_register
 
struct  csky_stack_item
 
struct  csky_unwind_cache
 

Functions

static const char * csky_pseudo_register_name (struct gdbarch *gdbarch, int regno)
 
static int csky_get_supported_tdesc_registers_count ()
 
static const struct csky_supported_tdesc_registercsky_get_supported_register_by_index (int index)
 
static void print_savedreg_msg (int regno, int offsets[], bool print_continuing)
 
static int csky_pc_is_csky16 (struct gdbarch *gdbarch, CORE_ADDR addr)
 
static int csky_get_insn (struct gdbarch *gdbarch, CORE_ADDR addr, unsigned int *insn)
 
static CORE_ADDR csky_read_pc (readable_regcache *regcache)
 
static void csky_write_pc (regcache *regcache, CORE_ADDR val)
 
static const char * csky_register_name (struct gdbarch *gdbarch, int reg_nr)
 
static struct typecsky_vector_type (struct gdbarch *gdbarch)
 
static struct typecsky_register_type (struct gdbarch *gdbarch, int reg_nr)
 
static CORE_ADDR csky_push_dummy_call (struct gdbarch *gdbarch, struct value *function, struct regcache *regcache, CORE_ADDR bp_addr, int nargs, struct value **args, CORE_ADDR sp, function_call_return_method return_method, CORE_ADDR struct_addr)
 
static enum return_value_convention csky_return_value (struct gdbarch *gdbarch, struct value *function, struct type *valtype, struct regcache *regcache, gdb_byte *readbuf, const gdb_byte *writebuf)
 
static CORE_ADDR csky_frame_align (struct gdbarch *gdbarch, CORE_ADDR addr)
 
static CORE_ADDR csky_analyze_prologue (struct gdbarch *gdbarch, CORE_ADDR start_pc, CORE_ADDR limit_pc, CORE_ADDR end_pc, frame_info_ptr this_frame, struct csky_unwind_cache *this_cache, lr_type_t lr_type)
 
static int csky_stack_frame_destroyed_p (struct gdbarch *gdbarch, CORE_ADDR pc)
 
static CORE_ADDR csky_skip_prologue (struct gdbarch *gdbarch, CORE_ADDR pc)
 
static int csky_breakpoint_kind_from_pc (struct gdbarch *gdbarch, CORE_ADDR *pcptr)
 
static const gdb_byte * csky_sw_breakpoint_from_kind (struct gdbarch *gdbarch, int kind, int *size)
 
static lr_type_t csky_analyze_lr_type (struct gdbarch *gdbarch, CORE_ADDR start_pc, CORE_ADDR end_pc)
 
static struct csky_unwind_cachecsky_frame_unwind_cache (frame_info_ptr this_frame)
 
static void csky_frame_this_id (frame_info_ptr this_frame, void **this_prologue_cache, struct frame_id *this_id)
 
static struct valuecsky_frame_prev_register (frame_info_ptr this_frame, void **this_prologue_cache, int regnum)
 
static CORE_ADDR csky_check_long_branch (frame_info_ptr frame, CORE_ADDR pc)
 
static int csky_stub_unwind_sniffer (const struct frame_unwind *self, frame_info_ptr this_frame, void **this_prologue_cache)
 
static struct csky_unwind_cachecsky_make_stub_cache (frame_info_ptr this_frame)
 
static void csky_stub_this_id (frame_info_ptr this_frame, void **this_cache, struct frame_id *this_id)
 
static struct valuecsky_stub_prev_register (frame_info_ptr this_frame, void **this_cache, int prev_regnum)
 
static CORE_ADDR csky_frame_base_address (frame_info_ptr this_frame, void **this_cache)
 
static void csky_dwarf2_frame_init_reg (struct gdbarch *gdbarch, int regnum, struct dwarf2_frame_state_reg *reg, frame_info_ptr this_frame)
 
static void csky_init_reggroup ()
 
static void csky_add_reggroups (struct gdbarch *gdbarch)
 
static int csky_register_reggroup_p (struct gdbarch *gdbarch, int regnum, const struct reggroup *reggroup)
 
static int csky_dwarf_reg_to_regnum (struct gdbarch *gdbarch, int dw_reg)
 
static int csky_essential_reg_check (const struct csky_supported_tdesc_register *reg)
 
static int csky_fr0_fr15_reg_check (const struct csky_supported_tdesc_register *reg)
 
static int csky_fr16_fr31_reg_check (const struct csky_supported_tdesc_register *reg)
 
static int csky_vr0_vr15_reg_check (const struct csky_supported_tdesc_register *reg)
 
static enum register_status csky_pseudo_register_read (struct gdbarch *gdbarch, struct readable_regcache *regcache, int regnum, gdb_byte *buf)
 
static void csky_pseudo_register_write (struct gdbarch *gdbarch, struct regcache *regcache, int regnum, const gdb_byte *buf)
 
static struct gdbarchcsky_gdbarch_init (struct gdbarch_info info, struct gdbarch_list *arches)
 
void _initialize_csky_tdep ()
 

Variables

static bool csky_debug = false
 
static const reggroupcr_reggroup
 
static const reggroupfr_reggroup
 
static const reggroupvr_reggroup
 
static const reggroupmmu_reggroup
 
static const reggroupprof_reggroup
 
static const char * csky_supported_tdesc_feature_names []
 
static const struct csky_supported_tdesc_register csky_supported_gpr_regs []
 
static const struct csky_supported_tdesc_register csky_supported_fpu_regs []
 
static const struct csky_supported_tdesc_register csky_supported_ar_regs []
 
static const struct csky_supported_tdesc_register csky_supported_bank0_regs []
 
static const struct csky_supported_tdesc_register csky_supported_mmu_regs []
 
static const struct csky_supported_tdesc_register csky_supported_bank15_regs []
 
static const struct csky_supported_tdesc_register csky_supported_alias_regs []
 
static const char *const csky_register_names []
 
static const struct frame_unwind csky_unwind_cache
 
static frame_unwind csky_stub_unwind
 
static const struct frame_base csky_frame_base
 

Function Documentation

◆ _initialize_csky_tdep()

void _initialize_csky_tdep ( )

◆ csky_add_reggroups()

static void csky_add_reggroups ( struct gdbarch * gdbarch)
static

Definition at line 2356 of file csky-tdep.c.

References cr_reggroup, fr_reggroup, mmu_reggroup, prof_reggroup, reggroup_add(), and vr_reggroup.

Referenced by csky_gdbarch_init().

◆ csky_analyze_lr_type()

static lr_type_t csky_analyze_lr_type ( struct gdbarch * gdbarch,
CORE_ADDR start_pc,
CORE_ADDR end_pc )
static

◆ csky_analyze_prologue()

static CORE_ADDR csky_analyze_prologue ( struct gdbarch * gdbarch,
CORE_ADDR start_pc,
CORE_ADDR limit_pc,
CORE_ADDR end_pc,
frame_info_ptr this_frame,
struct csky_unwind_cache * this_cache,
lr_type_t lr_type )
static

Definition at line 957 of file csky-tdep.c.

References trad_frame_saved_reg::addr, CSKY_16_IS_ADDI4, CSKY_16_IS_BCLRI4, CSKY_16_IS_BSETI4, CSKY_16_IS_LRW4, CSKY_16_IS_LSLI4, CSKY_16_IS_MOV_FP_SP, CSKY_16_IS_MOVI4, CSKY_16_IS_NOR4, CSKY_16_IS_PUSH, CSKY_16_IS_PUSH_R15, CSKY_16_IS_STWx0, CSKY_16_IS_SUBI0, CSKY_16_IS_SUBI4, CSKY_16_PUSH_LIST1, CSKY_16_ST_OFFSET, CSKY_16_ST_VAL_REGNUM, CSKY_16_STWx0_OFFSET, CSKY_16_SUBI_IMM, CSKY_32_IS_ADDI4, CSKY_32_IS_BCLRI4, CSKY_32_IS_BMASKI4, CSKY_32_IS_BSETI4, CSKY_32_IS_IXH4, CSKY_32_IS_IXW4, CSKY_32_IS_LISI4, CSKY_32_IS_LRW4, CSKY_32_IS_MFCR_EPC, CSKY_32_IS_MFCR_EPSR, CSKY_32_IS_MFCR_FPC, CSKY_32_IS_MFCR_FPSR, CSKY_32_IS_MOV_FP_SP, CSKY_32_IS_MOVI4, CSKY_32_IS_MOVIH4, CSKY_32_IS_NOR4, CSKY_32_IS_PUSH, CSKY_32_IS_PUSH_R15, CSKY_32_IS_PUSH_R29, CSKY_32_IS_ROTLI4, CSKY_32_IS_STMx0, CSKY_32_IS_STWx0, CSKY_32_IS_SUBI0, CSKY_32_IS_SUBI4, CSKY_32_PUSH_LIST1, CSKY_32_PUSH_LIST2, CSKY_32_ST_OFFSET, CSKY_32_ST_VAL_REGNUM, CSKY_32_STM_SIZE, CSKY_32_STM_VAL_REGNUM, CSKY_32_SUBI_IMM, csky_debug, CSKY_EPC_REGNUM, CSKY_FP_REGNUM, CSKY_FPC_REGNUM, csky_get_insn(), CSKY_IS_R4_ADJUSTER, CSKY_IS_SUBU4, CSKY_LR_REGNUM, CSKY_NUM_GREGS, CSKY_NUM_GREGS_SAVED_GREGS, CSKY_PC_REGNUM, csky_register_names, CSKY_SP_REGNUM, csky_unwind_cache::framereg, csky_unwind_cache::framesize, gdb_printf(), gdb_stdlog, gdbarch_byte_order(), get_frame_register_unsigned(), LR_TYPE_EPC, LR_TYPE_FPC, csky_unwind_cache::prev_sp, print_savedreg_msg(), read_memory_unsigned_integer(), csky_unwind_cache::saved_regs, and trad_frame_saved_reg::set_addr().

Referenced by csky_frame_unwind_cache(), and csky_skip_prologue().

◆ csky_breakpoint_kind_from_pc()

static int csky_breakpoint_kind_from_pc ( struct gdbarch * gdbarch,
CORE_ADDR * pcptr )
static

Definition at line 2001 of file csky-tdep.c.

References CSKY_INSN_SIZE16, CSKY_INSN_SIZE32, and csky_pc_is_csky16().

Referenced by csky_gdbarch_init().

◆ csky_check_long_branch()

static CORE_ADDR csky_check_long_branch ( frame_info_ptr frame,
CORE_ADDR pc )
static

◆ csky_dwarf2_frame_init_reg()

static void csky_dwarf2_frame_init_reg ( struct gdbarch * gdbarch,
int regnum,
struct dwarf2_frame_state_reg * reg,
frame_info_ptr this_frame )
static

◆ csky_dwarf_reg_to_regnum()

static int csky_dwarf_reg_to_regnum ( struct gdbarch * gdbarch,
int dw_reg )
static

◆ csky_essential_reg_check()

static int csky_essential_reg_check ( const struct csky_supported_tdesc_register * reg)
static

◆ csky_fr0_fr15_reg_check()

static int csky_fr0_fr15_reg_check ( const struct csky_supported_tdesc_register * reg)
static

◆ csky_fr16_fr31_reg_check()

static int csky_fr16_fr31_reg_check ( const struct csky_supported_tdesc_register * reg)
static

◆ csky_frame_align()

static CORE_ADDR csky_frame_align ( struct gdbarch * gdbarch,
CORE_ADDR addr )
static

Definition at line 927 of file csky-tdep.c.

Referenced by csky_gdbarch_init().

◆ csky_frame_base_address()

static CORE_ADDR csky_frame_base_address ( frame_info_ptr this_frame,
void ** this_cache )
static

◆ csky_frame_prev_register()

static struct value * csky_frame_prev_register ( frame_info_ptr this_frame,
void ** this_prologue_cache,
int regnum )
static

◆ csky_frame_this_id()

static void csky_frame_this_id ( frame_info_ptr this_frame,
void ** this_prologue_cache,
struct frame_id * this_id )
static

◆ csky_frame_unwind_cache()

static struct csky_unwind_cache * csky_frame_unwind_cache ( frame_info_ptr this_frame)
static

◆ csky_gdbarch_init()

static struct gdbarch * csky_gdbarch_init ( struct gdbarch_info info,
struct gdbarch_list * arches )
static

Definition at line 2675 of file csky-tdep.c.

References arches, core_addr_lessthan(), csky_add_reggroups(), csky_breakpoint_kind_from_pc(), csky_dwarf2_frame_init_reg(), csky_dwarf_reg_to_regnum(), csky_essential_reg_check(), csky_fr0_fr15_reg_check(), csky_fr16_fr31_reg_check(), csky_frame_align(), csky_frame_base, CSKY_FULL16_ONEHOT_VALUE, csky_get_supported_register_by_index(), csky_get_supported_tdesc_registers_count(), CSKY_NUM_REGS, CSKY_PC_REGNUM, csky_pseudo_register_name(), csky_pseudo_register_read(), csky_pseudo_register_write(), csky_push_dummy_call(), csky_read_pc(), csky_register_name(), csky_register_reggroup_p(), csky_register_type(), csky_return_value(), csky_skip_prologue(), CSKY_SP_REGNUM, csky_stack_frame_destroyed_p(), csky_stub_unwind, csky_supported_tdesc_feature_names, csky_sw_breakpoint_from_kind(), CSKY_TDESC_REGS_ESSENTIAL_VALUE, csky_vr0_vr15_reg_check(), csky_write_pc(), dwarf2_append_unwinders(), dwarf2_frame_set_init_reg(), floatformats_ieee_double, floatformats_ieee_single, csky_gdbarch_tdep::fpu_abi, csky_gdbarch_tdep::fpu_hardfp, frame_base_set_default(), frame_unwind_append_unwinder(), csky_gdbarch_tdep::fv_pseudo_registers_count, gdbarch_alloc(), gdbarch_init_osabi(), gdbarch_list_lookup_by_info(), registry< T >::get(), csky_gdbarch_tdep::has_vr0, gdbarch::info(), csky_supported_tdesc_register::name, csky_supported_tdesc_register::num, set_gdbarch_addr_bit(), set_gdbarch_breakpoint_kind_from_pc(), set_gdbarch_char_signed(), set_gdbarch_double_bit(), set_gdbarch_double_format(), set_gdbarch_dwarf2_reg_to_regnum(), set_gdbarch_float_bit(), set_gdbarch_float_format(), set_gdbarch_frame_align(), set_gdbarch_inner_than(), set_gdbarch_int_bit(), set_gdbarch_long_bit(), set_gdbarch_long_long_bit(), set_gdbarch_num_pseudo_regs(), set_gdbarch_num_regs(), set_gdbarch_overlay_update(), set_gdbarch_pc_regnum(), set_gdbarch_pseudo_register_read(), set_gdbarch_pseudo_register_write(), set_gdbarch_ptr_bit(), set_gdbarch_push_dummy_call(), set_gdbarch_read_pc(), set_gdbarch_register_name(), set_gdbarch_register_reggroup_p(), set_gdbarch_register_type(), set_gdbarch_return_value(), set_gdbarch_short_bit(), set_gdbarch_skip_prologue(), set_gdbarch_sp_regnum(), set_gdbarch_stab_reg_to_regnum(), set_gdbarch_stack_frame_destroyed_p(), set_gdbarch_sw_breakpoint_from_kind(), set_gdbarch_write_pc(), set_tdesc_pseudo_register_name(), simple_overlay_update(), tdesc_data, tdesc_data_alloc(), tdesc_find_feature(), tdesc_has_registers(), tdesc_numbered_register(), tdesc_use_registers(), and csky_gdbarch_tdep::vdsp_version.

Referenced by _initialize_csky_tdep().

◆ csky_get_insn()

static int csky_get_insn ( struct gdbarch * gdbarch,
CORE_ADDR addr,
unsigned int * insn )
static

◆ csky_get_supported_register_by_index()

static const struct csky_supported_tdesc_register * csky_get_supported_register_by_index ( int index)
static

◆ csky_get_supported_tdesc_registers_count()

static int csky_get_supported_tdesc_registers_count ( )
static

◆ csky_init_reggroup()

static void csky_init_reggroup ( )
static

◆ csky_make_stub_cache()

static struct csky_unwind_cache * csky_make_stub_cache ( frame_info_ptr this_frame)
static

◆ csky_pc_is_csky16()

static int csky_pc_is_csky16 ( struct gdbarch * gdbarch,
CORE_ADDR addr )
static

◆ csky_pseudo_register_name()

static const char * csky_pseudo_register_name ( struct gdbarch * gdbarch,
int regno )
static

◆ csky_pseudo_register_read()

static enum register_status csky_pseudo_register_read ( struct gdbarch * gdbarch,
struct readable_regcache * regcache,
int regnum,
gdb_byte * buf )
static

◆ csky_pseudo_register_write()

static void csky_pseudo_register_write ( struct gdbarch * gdbarch,
struct regcache * regcache,
int regnum,
const gdb_byte * buf )
static

◆ csky_push_dummy_call()

static CORE_ADDR csky_push_dummy_call ( struct gdbarch * gdbarch,
struct value * function,
struct regcache * regcache,
CORE_ADDR bp_addr,
int nargs,
struct value ** args,
CORE_ADDR sp,
function_call_return_method return_method,
CORE_ADDR struct_addr )
static

◆ csky_read_pc()

static CORE_ADDR csky_read_pc ( readable_regcache * regcache)
static

Definition at line 573 of file csky-tdep.c.

References readable_regcache::cooked_read(), and CSKY_PC_REGNUM.

Referenced by csky_gdbarch_init().

◆ csky_register_name()

static const char * csky_register_name ( struct gdbarch * gdbarch,
int reg_nr )
static

◆ csky_register_reggroup_p()

static int csky_register_reggroup_p ( struct gdbarch * gdbarch,
int regnum,
const struct reggroup * reggroup )
static

◆ csky_register_type()

static struct type * csky_register_type ( struct gdbarch * gdbarch,
int reg_nr )
static

◆ csky_return_value()

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

◆ csky_skip_prologue()

static CORE_ADDR csky_skip_prologue ( struct gdbarch * gdbarch,
CORE_ADDR pc )
static

◆ csky_stack_frame_destroyed_p()

static int csky_stack_frame_destroyed_p ( struct gdbarch * gdbarch,
CORE_ADDR pc )
static

◆ csky_stub_prev_register()

static struct value * csky_stub_prev_register ( frame_info_ptr this_frame,
void ** this_cache,
int prev_regnum )
static

◆ csky_stub_this_id()

static void csky_stub_this_id ( frame_info_ptr this_frame,
void ** this_cache,
struct frame_id * this_id )
static

◆ csky_stub_unwind_sniffer()

static int csky_stub_unwind_sniffer ( const struct frame_unwind * self,
frame_info_ptr this_frame,
void ** this_prologue_cache )
static

◆ csky_sw_breakpoint_from_kind()

static const gdb_byte * csky_sw_breakpoint_from_kind ( struct gdbarch * gdbarch,
int kind,
int * size )
static

Definition at line 2012 of file csky-tdep.c.

References CSKY_INSN_SIZE16, and size.

Referenced by csky_gdbarch_init().

◆ csky_vector_type()

static struct type * csky_vector_type ( struct gdbarch * gdbarch)
static

◆ csky_vr0_vr15_reg_check()

static int csky_vr0_vr15_reg_check ( const struct csky_supported_tdesc_register * reg)
static

◆ csky_write_pc()

static void csky_write_pc ( regcache * regcache,
CORE_ADDR val )
static

Definition at line 583 of file csky-tdep.c.

References CSKY_PC_REGNUM, and regcache_cooked_write_unsigned().

Referenced by csky_gdbarch_init().

◆ print_savedreg_msg()

static void print_savedreg_msg ( int regno,
int offsets[],
bool print_continuing )
static

Definition at line 498 of file csky-tdep.c.

References gdb_printf(), and gdb_stdlog.

Referenced by csky_analyze_prologue().

Variable Documentation

◆ cr_reggroup

const reggroup* cr_reggroup
static

Definition at line 65 of file csky-tdep.c.

Referenced by csky_add_reggroups(), csky_init_reggroup(), and csky_register_reggroup_p().

◆ csky_debug

bool csky_debug = false
static

Definition at line 63 of file csky-tdep.c.

Referenced by _initialize_csky_tdep(), csky_analyze_prologue(), and csky_push_dummy_call().

◆ csky_frame_base

const struct frame_base csky_frame_base
static
Initial value:
= {
}
static CORE_ADDR csky_frame_base_address(frame_info_ptr this_frame, void **this_cache)
Definition csky-tdep.c:2310
static const struct frame_unwind csky_unwind_cache
Definition csky-tdep.c:2162

Definition at line 2321 of file csky-tdep.c.

Referenced by csky_gdbarch_init().

◆ csky_register_names

const char* const csky_register_names[]
static

Definition at line 590 of file csky-tdep.c.

Referenced by csky_analyze_prologue(), and csky_register_name().

◆ csky_stub_unwind

frame_unwind csky_stub_unwind
static
Initial value:
= {
"csky stub",
NULL,
}
static int csky_stub_unwind_sniffer(const struct frame_unwind *self, frame_info_ptr this_frame, void **this_prologue_cache)
Definition csky-tdep.c:2211
static struct value * csky_stub_prev_register(frame_info_ptr this_frame, void **this_cache, int prev_regnum)
Definition csky-tdep.c:2270
static void csky_stub_this_id(frame_info_ptr this_frame, void **this_cache, struct frame_id *this_id)
Definition csky-tdep.c:2255
enum unwind_stop_reason default_frame_unwind_stop_reason(frame_info_ptr this_frame, void **this_cache)
@ NORMAL_FRAME
Definition frame.h:187

Definition at line 2296 of file csky-tdep.c.

Referenced by csky_gdbarch_init().

◆ csky_supported_alias_regs

const struct csky_supported_tdesc_register csky_supported_alias_regs[]
static

◆ csky_supported_ar_regs

const struct csky_supported_tdesc_register csky_supported_ar_regs[]
static
Initial value:
= {
{"ar0", CSKY_AR0_REGNUM + 0},
{"ar1", CSKY_AR0_REGNUM + 1},
{"ar2", CSKY_AR0_REGNUM + 2},
{"ar3", CSKY_AR0_REGNUM + 3},
{"ar4", CSKY_AR0_REGNUM + 4},
{"ar5", CSKY_AR0_REGNUM + 5},
{"ar6", CSKY_AR0_REGNUM + 6},
{"ar7", CSKY_AR0_REGNUM + 7},
{"ar8", CSKY_AR0_REGNUM + 8},
{"ar9", CSKY_AR0_REGNUM + 9},
{"ar10", CSKY_AR0_REGNUM + 10},
{"ar11", CSKY_AR0_REGNUM + 11},
{"ar12", CSKY_AR0_REGNUM + 12},
{"ar13", CSKY_AR0_REGNUM + 13},
{"ar14", CSKY_AR0_REGNUM + 14},
{"ar15", CSKY_AR0_REGNUM + 15},
}
@ CSKY_AR0_REGNUM
Definition csky-tdep.h:61

Definition at line 216 of file csky-tdep.c.

Referenced by csky_get_supported_register_by_index(), and csky_get_supported_tdesc_registers_count().

◆ csky_supported_bank0_regs

const struct csky_supported_tdesc_register csky_supported_bank0_regs[]
static

◆ csky_supported_bank15_regs

const struct csky_supported_tdesc_register csky_supported_bank15_regs[]
static
Initial value:
= {
{"cp15cp1", 253},
{"cp15cp5", 254},
{"cp15cp7", 255},
{"cp15cp9", 256},
{"cp15cp10", 257},
{"cp15cp11", 258},
{"cp15cp12", 259},
{"cp15cp13", 260},
{"cp15cp14", 261},
{"cp15cp15", 262},
{"cp15cp16", 263},
{"cp15cp17", 264},
{"cp15cp18", 265},
{"cp15cp19", 266},
{"cp15cp20", 267},
{"cp15cp21", 268},
{"cp15cp22", 269},
{"cp15cp23", 270},
{"cp15cp24", 271},
{"cp15cp25", 272},
{"cp15cp26", 273},
{"cp15cp27", 274},
{"cp15cp28", 275},
}

Definition at line 282 of file csky-tdep.c.

Referenced by csky_get_supported_register_by_index(), and csky_get_supported_tdesc_registers_count().

◆ csky_supported_fpu_regs

const struct csky_supported_tdesc_register csky_supported_fpu_regs[]
static

◆ csky_supported_gpr_regs

const struct csky_supported_tdesc_register csky_supported_gpr_regs[]
static

◆ csky_supported_mmu_regs

const struct csky_supported_tdesc_register csky_supported_mmu_regs[]
static
Initial value:
= {
{"mcr0", 128},
{"mcr2", 129},
{"mcr3", 130},
{"mcr4", 131},
{"mcr6", 132},
{"mcr8", 133},
{"mcr29", 134},
{"mcr30", 135},
{"mcr31", 136}
}

Definition at line 270 of file csky-tdep.c.

Referenced by csky_get_supported_register_by_index(), and csky_get_supported_tdesc_registers_count().

◆ csky_supported_tdesc_feature_names

const char* csky_supported_tdesc_feature_names[]
static

Definition at line 71 of file csky-tdep.c.

Referenced by csky_gdbarch_init().

◆ csky_unwind_cache

const struct frame_unwind csky_unwind_cache
static
Initial value:
= {
"cski prologue",
NULL,
NULL,
NULL
}
static struct value * csky_frame_prev_register(frame_info_ptr this_frame, void **this_prologue_cache, int regnum)
Definition csky-tdep.c:2146
static void csky_frame_this_id(frame_info_ptr this_frame, void **this_prologue_cache, struct frame_id *this_id)
Definition csky-tdep.c:2125
int default_frame_sniffer(const struct frame_unwind *self, frame_info_ptr this_frame, void **this_prologue_cache)

Definition at line 2162 of file csky-tdep.c.

◆ fr_reggroup

const reggroup* fr_reggroup
static

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

Referenced by csky_add_reggroups(), csky_init_reggroup(), and csky_register_reggroup_p().

◆ mmu_reggroup

const reggroup* mmu_reggroup
static

Definition at line 68 of file csky-tdep.c.

Referenced by csky_add_reggroups(), csky_init_reggroup(), and csky_register_reggroup_p().

◆ prof_reggroup

const reggroup* prof_reggroup
static

Definition at line 69 of file csky-tdep.c.

Referenced by csky_add_reggroups(), csky_init_reggroup(), and csky_register_reggroup_p().

◆ vr_reggroup

const reggroup* vr_reggroup
static

Definition at line 67 of file csky-tdep.c.

Referenced by csky_add_reggroups(), csky_init_reggroup(), and csky_register_reggroup_p().