|
GDB (xrefs)
|
#include "defs.h"#include "elf-bfd.h"#include "elf/m32c.h"#include "gdb/sim-m32c.h"#include "dis-asm.h"#include "gdbtypes.h"#include "regcache.h"#include "arch-utils.h"#include "frame.h"#include "frame-unwind.h"#include "dwarf2-frame.h"#include "dwarf2expr.h"#include "symtab.h"#include "gdbcore.h"#include "value.h"#include "reggroups.h"#include "prologue-value.h"#include "target.h"#include "objfiles.h"Go to the source code of this file.
Classes | |
| struct | m32c_reg |
| struct | gdbarch_tdep |
| struct | m32c_prologue |
| struct | m32c_pv_state |
| struct | srcdest |
Macros | |
| #define | M32C_MAX_NUM_REGS (75) |
| #define | M32C_MAX_DWARF_REGNUM (40) |
| #define | FLAGBIT_B 0x0010 |
| #define | FLAGBIT_U 0x0080 |
| #define | R(name, type, sim_num) |
| #define | SIM(name) (m32c_sim_reg_ ## name) |
| #define | R16U(name) (R(#name, tdep->uint16, SIM (name))) |
| #define | RA(name) (R(#name, tdep->data_addr_reg_type, SIM (name))) |
| #define | RC(name) (R(#name, tdep->code_addr_reg_type, SIM (name))) |
| #define | RP(name, type) |
| #define | RBD(name) |
| #define | RBA(name) |
| #define | CB(name, raw_pair) |
| #define | CHL(name, type) |
| #define | CCAT(high, low, type) |
| #define | G(reg) (mark_general (reg)) |
| #define | S(reg) (mark_system (reg)) |
| #define | DMA(reg) (mark_dma (reg)) |
| #define | M32C_MAX_INSN_LEN (9) |
Enumerations | |
| enum | srcdest_kind { srcdest_reg, srcdest_partial_reg, srcdest_mem } |
Functions | |
| enum register_status() | m32c_write_reg_t (struct m32c_reg *reg, struct regcache *cache, const gdb_byte *buf) |
| enum register_status() | m32c_read_reg_t (struct m32c_reg *reg, struct regcache *cache, gdb_byte *buf) |
| static void | make_types (struct gdbarch *arch) |
| static const char * | m32c_register_name (struct gdbarch *gdbarch, int num) |
| static struct type * | m32c_register_type (struct gdbarch *arch, int reg_nr) |
| static int | m32c_register_sim_regno (struct gdbarch *gdbarch, int reg_nr) |
| static int | m32c_debug_info_reg_to_regnum (struct gdbarch *gdbarch, int reg_nr) |
| static int | m32c_register_reggroup_p (struct gdbarch *gdbarch, int regnum, struct reggroup *group) |
| static enum register_status | m32c_raw_read (struct m32c_reg *reg, struct regcache *cache, gdb_byte *buf) |
| static enum register_status | m32c_raw_write (struct m32c_reg *reg, struct regcache *cache, const gdb_byte *buf) |
| static int | m32c_read_flg (struct regcache *cache) |
| static struct m32c_reg * | m32c_banked_register (struct m32c_reg *reg, struct regcache *cache) |
| static enum register_status | m32c_banked_read (struct m32c_reg *reg, struct regcache *cache, gdb_byte *buf) |
| static enum register_status | m32c_banked_write (struct m32c_reg *reg, struct regcache *cache, const gdb_byte *buf) |
| static enum register_status | m32c_sb_read (struct m32c_reg *reg, struct regcache *cache, gdb_byte *buf) |
| static enum register_status | m32c_sb_write (struct m32c_reg *reg, struct regcache *cache, const gdb_byte *buf) |
| static void | m32c_find_part (struct m32c_reg *reg, int *offset_p, int *len_p) |
| static enum register_status | m32c_part_read (struct m32c_reg *reg, struct regcache *cache, gdb_byte *buf) |
| static enum register_status | m32c_part_write (struct m32c_reg *reg, struct regcache *cache, const gdb_byte *buf) |
| static enum register_status | m32c_cat_read (struct m32c_reg *reg, struct regcache *cache, gdb_byte *buf) |
| static enum register_status | m32c_cat_write (struct m32c_reg *reg, struct regcache *cache, const gdb_byte *buf) |
| static enum register_status | m32c_r3r2r1r0_read (struct m32c_reg *reg, struct regcache *cache, gdb_byte *buf) |
| static enum register_status | m32c_r3r2r1r0_write (struct m32c_reg *reg, struct regcache *cache, const gdb_byte *buf) |
| static enum register_status | m32c_pseudo_register_read (struct gdbarch *arch, struct regcache *cache, int cookednum, gdb_byte *buf) |
| static void | m32c_pseudo_register_write (struct gdbarch *arch, struct regcache *cache, int cookednum, const gdb_byte *buf) |
| static struct m32c_reg * | add_reg (struct gdbarch *arch, const char *name, struct type *type, int sim_num, m32c_read_reg_t *read, m32c_write_reg_t *write, struct m32c_reg *rx, struct m32c_reg *ry, int n) |
| static void | set_dwarf_regnum (struct m32c_reg *reg, int num) |
| static struct m32c_reg * | mark_general (struct m32c_reg *reg) |
| static struct m32c_reg * | mark_dma (struct m32c_reg *reg) |
| static struct m32c_reg * | mark_system (struct m32c_reg *reg) |
| static struct m32c_reg * | mark_save_restore (struct m32c_reg *reg) |
| static void | make_regs (struct gdbarch *arch) |
| typedef | BP_MANIPULATION (m32c_break_insn) |
| static int | m32c_pv_push (struct m32c_pv_state *state, pv_t value, int size) |
| static pv_t | m32c_srcdest_fetch (struct m32c_pv_state *state, struct srcdest loc, int size) |
| static int | m32c_srcdest_store (struct m32c_pv_state *state, struct srcdest loc, pv_t value, int size) |
| static int | m32c_sign_ext (int v, int bits) |
| static unsigned int | m32c_next_byte (struct m32c_pv_state *st) |
| static int | m32c_udisp8 (struct m32c_pv_state *st) |
| static int | m32c_sdisp8 (struct m32c_pv_state *st) |
| static int | m32c_udisp16 (struct m32c_pv_state *st) |
| static int | m32c_sdisp16 (struct m32c_pv_state *st) |
| static int | m32c_udisp24 (struct m32c_pv_state *st) |
| static int | m32c_get_src23 (unsigned char *i) |
| static int | m32c_get_dest23 (unsigned char *i) |
| static struct srcdest | m32c_decode_srcdest4 (struct m32c_pv_state *st, int code, int size) |
| static struct srcdest | m32c_decode_sd23 (struct m32c_pv_state *st, int code, int size, int ind) |
| static int | m32c_pv_enter (struct m32c_pv_state *state, int size) |
| static int | m32c_pv_pushm_one (struct m32c_pv_state *state, pv_t reg, int bit, int src, int size) |
| static int | m32c_pv_pushm (struct m32c_pv_state *state, int src) |
| static int | m32c_is_1st_arg_reg (struct m32c_pv_state *state, pv_t value) |
| static int | m32c_is_arg_reg (struct m32c_pv_state *state, pv_t value) |
| static int | m32c_is_arg_spill (struct m32c_pv_state *st, struct srcdest loc, pv_t value) |
| static int | m32c_is_struct_return (struct m32c_pv_state *st, struct srcdest loc, pv_t value) |
| static int | m32c_pushm_is_reg_save (struct m32c_pv_state *st, int src) |
| static void | check_for_saved (void *prologue_untyped, pv_t addr, CORE_ADDR size, pv_t value) |
| static void | m32c_analyze_prologue (struct gdbarch *arch, CORE_ADDR start, CORE_ADDR limit, struct m32c_prologue *prologue) |
| static CORE_ADDR | m32c_skip_prologue (struct gdbarch *gdbarch, CORE_ADDR ip) |
| static struct m32c_prologue * | m32c_analyze_frame_prologue (struct frame_info *this_frame, void **this_prologue_cache) |
| static CORE_ADDR | m32c_frame_base (struct frame_info *this_frame, void **this_prologue_cache) |
| static void | m32c_this_id (struct frame_info *this_frame, void **this_prologue_cache, struct frame_id *this_id) |
| static struct value * | m32c_prev_register (struct frame_info *this_frame, void **this_prologue_cache, int regnum) |
| static CORE_ADDR | m32c_unwind_pc (struct gdbarch *arch, struct frame_info *next_frame) |
| static CORE_ADDR | m32c_unwind_sp (struct gdbarch *arch, struct frame_info *next_frame) |
| static int | m32c_reg_arg_type (struct type *type) |
| static CORE_ADDR | m32c_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) |
| static struct frame_id | m32c_dummy_id (struct gdbarch *gdbarch, struct frame_info *this_frame) |
| static int | m32c_return_by_passed_buf (struct type *type) |
| static enum return_value_convention | m32c_return_value (struct gdbarch *gdbarch, struct value *function, struct type *valtype, struct regcache *regcache, gdb_byte *readbuf, const gdb_byte *writebuf) |
| static CORE_ADDR | m32c_skip_trampoline_code (struct frame_info *frame, CORE_ADDR stop_pc) |
| static void | m32c_m16c_address_to_pointer (struct gdbarch *gdbarch, struct type *type, gdb_byte *buf, CORE_ADDR addr) |
| static CORE_ADDR | m32c_m16c_pointer_to_address (struct gdbarch *gdbarch, struct type *type, const gdb_byte *buf) |
| static void | m32c_virtual_frame_pointer (struct gdbarch *gdbarch, CORE_ADDR pc, int *frame_regnum, LONGEST *frame_offset) |
| static struct gdbarch * | m32c_gdbarch_init (struct gdbarch_info info, struct gdbarch_list *arches) |
| void | _initialize_m32c_tdep (void) |
Variables | |
| static struct reggroup * | m32c_dma_reggroup |
| static m32c_read_reg_t | m32c_raw_read |
| static m32c_read_reg_t | m32c_banked_read |
| static m32c_read_reg_t | m32c_sb_read |
| static m32c_read_reg_t | m32c_part_read |
| static m32c_read_reg_t | m32c_cat_read |
| static m32c_read_reg_t | m32c_r3r2r1r0_read |
| static m32c_write_reg_t | m32c_raw_write |
| static m32c_write_reg_t | m32c_banked_write |
| static m32c_write_reg_t | m32c_sb_write |
| static m32c_write_reg_t | m32c_part_write |
| static m32c_write_reg_t | m32c_cat_write |
| static m32c_write_reg_t | m32c_r3r2r1r0_write |
| constexpr gdb_byte | m32c_break_insn [] = { 0x00 } |
| static const struct frame_unwind | m32c_unwind |
| #define CB | ( | name, | |
| raw_pair | |||
| ) |
Definition at line 771 of file m32c-tdep.c.
Referenced by make_regs().
| #define CCAT | ( | high, | |
| low, | |||
| type | |||
| ) |
Definition at line 787 of file m32c-tdep.c.
Referenced by make_regs().
Definition at line 779 of file m32c-tdep.c.
Referenced by make_regs().
Definition at line 794 of file m32c-tdep.c.
Referenced by make_regs().
| #define FLAGBIT_B 0x0010 |
Definition at line 719 of file m32c-tdep.c.
| #define FLAGBIT_U 0x0080 |
Definition at line 720 of file m32c-tdep.c.
Referenced by make_regs().
| #define G | ( | reg | ) | (mark_general (reg)) |
Definition at line 792 of file m32c-tdep.c.
Referenced by make_regs().
| #define M32C_MAX_DWARF_REGNUM (40) |
Definition at line 103 of file m32c-tdep.c.
Referenced by m32c_debug_info_reg_to_regnum().
| #define M32C_MAX_INSN_LEN (9) |
Definition at line 1057 of file m32c-tdep.c.
| #define M32C_MAX_NUM_REGS (75) |
Definition at line 100 of file m32c-tdep.c.
Referenced by add_reg(), m32c_analyze_prologue(), and set_dwarf_regnum().
Definition at line 727 of file m32c-tdep.c.
Referenced by ada_scan_number().
Definition at line 736 of file m32c-tdep.c.
Referenced by make_regs().
Definition at line 741 of file m32c-tdep.c.
Referenced by make_regs().
| #define RBA | ( | name | ) |
| #define RBD | ( | name | ) |
Definition at line 746 of file m32c-tdep.c.
Referenced by make_regs().
Definition at line 751 of file m32c-tdep.c.
Referenced by make_regs().
| #define S | ( | reg | ) | (mark_system (reg)) |
Definition at line 793 of file m32c-tdep.c.
Referenced by make_regs(), assign_4::test(), assign_3::test(), assign_2::test(), and assign_1::test().
Definition at line 732 of file m32c-tdep.c.
| enum srcdest_kind |
| Enumerator | |
|---|---|
| srcdest_reg | |
| srcdest_partial_reg | |
| srcdest_mem | |
Definition at line 1092 of file m32c-tdep.c.
| void _initialize_m32c_tdep | ( | void | ) |
Definition at line 2682 of file m32c-tdep.c.
References m32c_dma_reggroup, m32c_gdbarch_init(), reggroup_new(), register_gdbarch_init(), and USER_REGGROUP.
|
static |
Definition at line 630 of file m32c-tdep.c.
References m32c_reg::arch, m32c_reg::dma_p, m32c_reg::dwarf_num, gdb_assert, gdbarch_tdep(), m32c_reg::general_p, M32C_MAX_NUM_REGS, m32c_reg::n, m32c_reg::name, name, m32c_reg::num, gdbarch_tdep::num_regs, read(), m32c_reg::read, gdbarch_tdep::regs, m32c_reg::rx, m32c_reg::ry, m32c_reg::save_restore_p, m32c_reg::sim_num, m32c_reg::system_p, m32c_reg::type, type, and m32c_reg::write.
Referenced by make_regs().
| typedef BP_MANIPULATION | ( | m32c_break_insn | ) |
Definition at line 995 of file m32c-tdep.c.
|
static |
Definition at line 1502 of file m32c-tdep.c.
References m32c_prologue::arch, gdbarch_tdep::data_addr_reg_type, gdbarch_byte_order(), gdbarch_tdep(), prologue_value::k, m32c_reg::num, gdbarch_tdep::pc, gdbarch_tdep::prologue, gdbarch_tdep::push_addr_bytes, pv_is_register(), pvk_register, value::reg, register_size(), register_type(), gdbarch_tdep::ret_addr_bytes, size, and gdbarch_tdep::sp.
Referenced by m32c_analyze_prologue().
|
static |
Definition at line 1847 of file m32c-tdep.c.
References FRAME_OBSTACK_ZALLOC, get_frame_arch(), get_frame_func(), get_frame_pc(), and m32c_analyze_prologue().
Referenced by m32c_frame_base(), and m32c_prev_register().
|
static |
Definition at line 1542 of file m32c-tdep.c.
References gdbarch_tdep::a0, m32c_pv_state::a0, gdbarch_tdep::a1, m32c_pv_state::a1, m32c_prologue::arch, m32c_pv_state::arch, check_for_saved(), gdbarch_tdep::fb, m32c_pv_state::fb, m32c_prologue::frame_ptr_offset, m32c_prologue::frame_size, gdb_assert, gdbarch_addr_bit(), gdbarch_bfd_arch_info(), gdbarch_tdep(), m32c_pv_state::insn, prologue_value::k, m32c_prologue::kind, m32c_decode_sd23(), m32c_decode_srcdest4(), m32c_get_dest23(), m32c_get_src23(), m32c_is_arg_spill(), m32c_is_struct_return(), M32C_MAX_NUM_REGS, m32c_pushm_is_reg_save(), m32c_pv_enter(), m32c_pv_push(), m32c_pv_pushm(), m32c_srcdest_fetch(), m32c_srcdest_store(), m32c_udisp16(), m32c_udisp24(), memset(), m32c_pv_state::next_addr, m32c_reg::num, gdbarch_tdep::pc, m32c_pv_state::pc, pv_constant(), pv_is_constant(), pv_is_identical(), pv_is_register(), pv_is_register_k(), pv_register(), gdbarch_tdep::r0, m32c_pv_state::r0, gdbarch_tdep::r1, m32c_pv_state::r1, gdbarch_tdep::r2, m32c_pv_state::r2, gdbarch_tdep::r3, m32c_pv_state::r3, m32c_prologue::reg_offset, gdbarch_tdep::ret_addr_bytes, gdbarch_tdep::sb, m32c_pv_state::sb, pv_area::scan(), m32c_pv_state::scan_pc, size, gdbarch_tdep::sp, m32c_pv_state::sp, m32c_pv_state::stack, and target_read_memory().
Referenced by m32c_analyze_frame_prologue(), m32c_skip_prologue(), and m32c_virtual_frame_pointer().
|
static |
Definition at line 354 of file m32c-tdep.c.
References m32c_banked_register(), m32c_reg::num, and regcache_raw_read().
|
static |
Definition at line 343 of file m32c-tdep.c.
References m32c_read_flg().
Referenced by m32c_banked_read(), m32c_banked_write(), and m32c_virtual_frame_pointer().
|
static |
Definition at line 366 of file m32c-tdep.c.
References m32c_banked_register(), m32c_reg::num, REG_VALID, and regcache_raw_write().
|
static |
Definition at line 475 of file m32c-tdep.c.
References gdb_assert, gdbarch_byte_order(), REG_VALID, regcache_cooked_read(), status, and TYPE_LENGTH.
|
static |
Definition at line 504 of file m32c-tdep.c.
References gdb_assert, gdbarch_byte_order(), REG_VALID, regcache_cooked_write(), and TYPE_LENGTH.
|
static |
Definition at line 242 of file m32c-tdep.c.
References gdbarch_tdep::dwarf_regs, gdbarch_tdep(), M32C_MAX_DWARF_REGNUM, and m32c_reg::num.
Referenced by make_regs().
|
static |
Definition at line 1270 of file m32c-tdep.c.
References srcdest::addr, code, gdb_assert_not_reached, srcdest::kind, m32c_sdisp16(), m32c_sdisp8(), m32c_srcdest_fetch(), m32c_udisp16(), m32c_udisp24(), m32c_udisp8(), pv_add_constant(), pv_constant(), pv_unknown(), srcdest::reg, size, srcdest_mem, srcdest_partial_reg, and srcdest_reg.
Referenced by m32c_analyze_prologue().
|
static |
Definition at line 1225 of file m32c-tdep.c.
References srcdest::addr, code, gdb_assert_not_reached, srcdest::kind, m32c_sdisp8(), m32c_udisp16(), m32c_udisp8(), pv_add_constant(), pv_constant(), pv_unknown(), srcdest::reg, size, srcdest_mem, srcdest_partial_reg, and srcdest_reg.
Referenced by m32c_analyze_prologue().
|
static |
Definition at line 2143 of file m32c-tdep.c.
References frame_id_build(), gdbarch_tdep(), get_frame_pc(), get_frame_register_unsigned(), m32c_reg::num, and gdbarch_tdep::sp.
Referenced by m32c_gdbarch_init().
|
static |
Definition at line 409 of file m32c-tdep.c.
References gdb_assert, gdbarch_byte_order(), and TYPE_LENGTH.
Referenced by m32c_part_read(), and m32c_part_write().
|
static |
Definition at line 1871 of file m32c-tdep.c.
References gdbarch_tdep::fb, m32c_prologue::frame_ptr_offset, m32c_prologue::frame_size, gdb_assert_not_reached, gdbarch_tdep(), get_frame_arch(), get_frame_register_unsigned(), m32c_prologue::kind, m32c_analyze_frame_prologue(), m32c_reg::num, and gdbarch_tdep::sp.
Referenced by m32c_prev_register(), and m32c_this_id().
|
static |
Definition at line 2610 of file m32c-tdep.c.
References gdbarch_info::bfd_arch_info, core_addr_lessthan(), frame_unwind_append_unwinder(), gdbarch_list::gdbarch, gdbarch_alloc(), gdbarch_list_lookup_by_info(), m32c_dummy_id(), m32c_m16c_address_to_pointer(), m32c_m16c_pointer_to_address(), m32c_push_dummy_call(), m32c_return_value(), m32c_skip_prologue(), m32c_skip_trampoline_code(), m32c_unwind, m32c_unwind_pc(), m32c_unwind_sp(), m32c_virtual_frame_pointer(), make_regs(), make_types(), gdbarch_list::next, set_gdbarch_address_to_pointer(), set_gdbarch_breakpoint_kind_from_pc(), set_gdbarch_dummy_id(), set_gdbarch_inner_than(), set_gdbarch_pointer_to_address(), set_gdbarch_push_dummy_call(), set_gdbarch_return_value(), set_gdbarch_skip_prologue(), set_gdbarch_skip_trampoline_code(), set_gdbarch_sw_breakpoint_from_kind(), set_gdbarch_unwind_pc(), set_gdbarch_unwind_sp(), set_gdbarch_vbit_in_delta(), set_gdbarch_virtual_frame_pointer(), and XCNEW.
Referenced by _initialize_m32c_tdep().
|
static |
Definition at line 1217 of file m32c-tdep.c.
Referenced by m32c_analyze_prologue().
|
static |
Definition at line 1208 of file m32c-tdep.c.
Referenced by m32c_analyze_prologue().
|
static |
Definition at line 1401 of file m32c-tdep.c.
References m32c_pv_state::arch, gdbarch_bfd_arch_info(), gdbarch_tdep(), m32c_reg::num, pvk_register, gdbarch_tdep::r0, gdbarch_tdep::r1, and value::reg.
Referenced by m32c_is_struct_return().
|
static |
Definition at line 1414 of file m32c-tdep.c.
References m32c_pv_state::arch, gdbarch_bfd_arch_info(), gdbarch_tdep(), m32c_reg::num, pvk_register, gdbarch_tdep::r0, gdbarch_tdep::r1, gdbarch_tdep::r2, and value::reg.
Referenced by m32c_is_arg_spill().
|
static |
Definition at line 1435 of file m32c-tdep.c.
References m32c_pv_state::arch, pv_area::find_reg(), gdbarch_tdep(), loc, m32c_is_arg_reg(), m32c_reg::num, pv_is_register(), value::reg, gdbarch_tdep::sp, srcdest_mem, and m32c_pv_state::stack.
Referenced by m32c_analyze_prologue().
|
static |
Definition at line 1458 of file m32c-tdep.c.
References gdbarch_tdep::a0, gdbarch_tdep::a1, m32c_pv_state::arch, pv_area::find_reg(), gdbarch_tdep(), loc, m32c_is_1st_arg_reg(), m32c_reg::num, pv_is_register(), value::reg, srcdest_reg, and m32c_pv_state::stack.
Referenced by m32c_analyze_prologue().
|
static |
Definition at line 2428 of file m32c-tdep.c.
References _, BMSYMBOL_VALUE_ADDRESS, error(), gdb_assert, gdbarch_byte_order(), lookup_minimal_symbol(), lookup_minimal_symbol_by_pc(), bound_minimal_symbol::minsym, MSYMBOL_LINKAGE_NAME, paddress(), store_unsigned_integer(), TYPE_CODE, TYPE_CODE_FUNC, TYPE_CODE_METHOD, TYPE_CODE_PTR, TYPE_IS_REFERENCE, TYPE_LENGTH, TYPE_TARGET_TYPE, warning(), xfree(), and xmalloc().
Referenced by m32c_gdbarch_init().
|
static |
Definition at line 2505 of file m32c-tdep.c.
References BMSYMBOL_VALUE_ADDRESS, extract_unsigned_integer(), gdb_assert, gdbarch_byte_order(), lookup_minimal_symbol(), lookup_minimal_symbol_by_pc(), bound_minimal_symbol::minsym, MSYMBOL_LINKAGE_NAME, TYPE_CODE, TYPE_CODE_FUNC, TYPE_CODE_METHOD, TYPE_CODE_PTR, TYPE_IS_REFERENCE, TYPE_LENGTH, TYPE_TARGET_TYPE, and xmalloc().
Referenced by m32c_gdbarch_init().
|
static |
Definition at line 1155 of file m32c-tdep.c.
References gdb_assert, m32c_pv_state::insn, m32c_pv_state::next_addr, and m32c_pv_state::scan_pc.
Referenced by m32c_sdisp16(), m32c_sdisp8(), m32c_udisp16(), m32c_udisp24(), and m32c_udisp8().
|
static |
Definition at line 444 of file m32c-tdep.c.
References m32c_find_part(), memset(), offset, regcache_cooked_read_part(), and TYPE_LENGTH.
|
static |
Definition at line 459 of file m32c-tdep.c.
References m32c_find_part(), offset, REG_VALID, and regcache_cooked_write_part().
|
static |
Definition at line 1923 of file m32c-tdep.c.
References frame_unwind_got_constant(), frame_unwind_got_memory(), frame_unwind_got_register(), gdbarch_tdep(), get_frame_arch(), m32c_analyze_frame_prologue(), m32c_frame_base(), m32c_reg::num, m32c_prologue::reg_offset, regnum, and gdbarch_tdep::sp.
|
static |
Definition at line 592 of file m32c-tdep.c.
References m32c_reg::arch, regcache::arch(), gdb_assert, gdbarch_tdep(), and gdbarch_tdep::regs.
Referenced by make_regs().
|
static |
Definition at line 610 of file m32c-tdep.c.
References m32c_reg::arch, regcache::arch(), gdb_assert, gdbarch_tdep(), and gdbarch_tdep::regs.
Referenced by make_regs().
|
static |
Definition at line 2018 of file m32c-tdep.c.
References extract_unsigned_integer(), gdb_assert, gdbarch_bfd_arch_info(), gdbarch_byte_order(), gdbarch_tdep(), m32c_reg_arg_type(), m32c_reg::num, gdbarch_tdep::ptr_voyd, gdbarch_tdep::r0, gdbarch_tdep::r1, gdbarch_tdep::r2, regcache_cooked_write(), regcache_cooked_write_unsigned(), gdbarch_tdep::ret_addr_bytes, gdbarch_tdep::sp, TYPE_CODE, TYPE_CODE_FUNC, TYPE_CODE_METHOD, TYPE_CODE_PTR, TYPE_LENGTH, TYPE_NFIELDS, TYPE_PROTOTYPED, TYPE_TARGET_TYPE, value_contents(), value_type(), write_memory(), and write_memory_unsigned_integer().
Referenced by m32c_gdbarch_init().
|
static |
Definition at line 1477 of file m32c-tdep.c.
References gdbarch_tdep::a0, m32c_pv_state::a0, gdbarch_tdep::a1, m32c_pv_state::a1, m32c_pv_state::arch, gdbarch_tdep::fb, m32c_pv_state::fb, gdbarch_tdep(), m32c_reg::num, pv_is_register(), pv_is_register_k(), gdbarch_tdep::r0, m32c_pv_state::r0, gdbarch_tdep::r1, m32c_pv_state::r1, gdbarch_tdep::r2, m32c_pv_state::r2, gdbarch_tdep::r3, m32c_pv_state::r3, gdbarch_tdep::sb, m32c_pv_state::sb, gdbarch_tdep::sp, and m32c_pv_state::sp.
Referenced by m32c_analyze_prologue().
|
static |
Definition at line 1346 of file m32c-tdep.c.
References m32c_pv_state::arch, m32c_pv_state::fb, gdbarch_tdep(), m32c_pv_push(), gdbarch_tdep::push_addr_bytes, pv_add_constant(), size, m32c_pv_state::sp, m32c_pv_state::stack, and pv_area::store_would_trash().
Referenced by m32c_analyze_prologue().
|
static |
Definition at line 1080 of file m32c-tdep.c.
References pv_add_constant(), size, m32c_pv_state::sp, m32c_pv_state::stack, pv_area::store(), and pv_area::store_would_trash().
Referenced by m32c_analyze_prologue(), m32c_pv_enter(), and m32c_pv_pushm_one().
|
static |
Definition at line 1381 of file m32c-tdep.c.
References m32c_pv_state::a0, m32c_pv_state::a1, m32c_pv_state::arch, m32c_pv_state::fb, gdbarch_tdep(), m32c_pv_pushm_one(), gdbarch_tdep::push_addr_bytes, m32c_pv_state::r0, m32c_pv_state::r1, m32c_pv_state::r2, m32c_pv_state::r3, and m32c_pv_state::sb.
Referenced by m32c_analyze_prologue().
|
static |
Definition at line 1366 of file m32c-tdep.c.
References bit, m32c_pv_push(), and size.
Referenced by m32c_pv_pushm().
|
static |
Definition at line 531 of file m32c-tdep.c.
References gdbarch_byte_order(), gdbarch_tdep(), m32c_reg::num, gdbarch_tdep::r0, gdbarch_tdep::r1, gdbarch_tdep::r2, gdbarch_tdep::r3, REG_VALID, regcache_cooked_read(), status, m32c_reg::type, and TYPE_LENGTH.
|
static |
Definition at line 566 of file m32c-tdep.c.
References gdbarch_byte_order(), gdbarch_tdep(), m32c_reg::num, gdbarch_tdep::r0, gdbarch_tdep::r1, gdbarch_tdep::r2, gdbarch_tdep::r3, REG_VALID, regcache_cooked_write(), m32c_reg::type, and TYPE_LENGTH.
|
static |
Definition at line 313 of file m32c-tdep.c.
References regcache_raw_read().
|
static |
Definition at line 321 of file m32c-tdep.c.
References REG_VALID, and regcache_raw_write().
|
static |
Definition at line 332 of file m32c-tdep.c.
References regcache::arch(), gdbarch_tdep::flg, gdbarch_tdep(), m32c_reg::num, and regcache_raw_read_unsigned().
Referenced by m32c_banked_register().
| enum register_status() m32c_read_reg_t | ( | struct m32c_reg * | reg, |
| struct regcache * | cache, | ||
| gdb_byte * | buf | ||
| ) |
|
static |
Definition at line 2004 of file m32c-tdep.c.
References code, TYPE_CODE, TYPE_CODE_BOOL, TYPE_CODE_CHAR, TYPE_CODE_ENUM, TYPE_CODE_INT, TYPE_CODE_PTR, and TYPE_IS_REFERENCE.
Referenced by m32c_push_dummy_call().
|
static |
Definition at line 221 of file m32c-tdep.c.
References gdbarch_tdep(), m32c_reg::name, and gdbarch_tdep::regs.
Referenced by make_regs().
|
static |
Definition at line 256 of file m32c-tdep.c.
References all_reggroup, gdbarch_tdep(), general_reggroup, m32c_dma_reggroup, reg::name, regnum, gdbarch_tdep::regs, restore_reggroup, save_reggroup, and system_reggroup.
Referenced by make_regs().
|
static |
Definition at line 235 of file m32c-tdep.c.
References gdbarch_tdep(), gdbarch_tdep::regs, and m32c_reg::sim_num.
Referenced by make_regs().
Definition at line 228 of file m32c-tdep.c.
References gdbarch_tdep(), gdbarch_tdep::regs, and m32c_reg::type.
Referenced by make_regs().
|
static |
Definition at line 2185 of file m32c-tdep.c.
References code, TYPE_CODE, TYPE_CODE_STRUCT, and TYPE_CODE_UNION.
Referenced by m32c_return_value().
|
static |
Definition at line 2194 of file m32c-tdep.c.
References _, BMSYMBOL_VALUE_ADDRESS, error(), extract_unsigned_integer(), gdb_assert, gdbarch_byte_order(), gdbarch_tdep(), lookup_minimal_symbol(), m32c_return_by_passed_buf(), bound_minimal_symbol::minsym, m32c_reg::num, gdbarch_tdep::r0, read_memory(), regcache_cooked_read_unsigned(), regcache_cooked_write_unsigned(), RETURN_VALUE_REGISTER_CONVENTION, RETURN_VALUE_STRUCT_CONVENTION, store_unsigned_integer(), m32c_reg::type, TYPE_LENGTH, and write_memory().
Referenced by m32c_gdbarch_init().
|
static |
Definition at line 379 of file m32c-tdep.c.
References gdbarch_bfd_arch_info(), m32c_banked_read, and m32c_raw_read.
|
static |
Definition at line 391 of file m32c-tdep.c.
References gdbarch_bfd_arch_info(), m32c_banked_write, m32c_raw_write, and REG_VALID.
|
static |
Definition at line 1186 of file m32c-tdep.c.
References m32c_next_byte(), and m32c_sign_ext().
Referenced by m32c_decode_sd23().
|
static |
Definition at line 1169 of file m32c-tdep.c.
References m32c_next_byte(), and m32c_sign_ext().
Referenced by m32c_decode_sd23(), and m32c_decode_srcdest4().
|
static |
Definition at line 1148 of file m32c-tdep.c.
References bits.
Referenced by m32c_sdisp16(), and m32c_sdisp8().
Definition at line 1821 of file m32c-tdep.c.
References find_pc_partial_function(), m32c_analyze_prologue(), name, m32c_prologue::prologue_end, and skip_prologue_using_sal().
Referenced by m32c_gdbarch_init().
|
static |
Definition at line 2329 of file m32c-tdep.c.
References find_pc_partial_function(), gdbarch_byte_order(), gdbarch_tdep(), get_current_frame(), get_frame_arch(), get_frame_sp(), name, read_memory_unsigned_integer(), gdbarch_tdep::ret_addr_bytes, gdbarch_tdep::sp, and stop_pc.
Referenced by m32c_gdbarch_init().
|
static |
Definition at line 1114 of file m32c-tdep.c.
References pv_area::fetch(), loc, pv_unknown(), size, srcdest_mem, srcdest_partial_reg, and m32c_pv_state::stack.
Referenced by m32c_analyze_prologue(), and m32c_decode_sd23().
|
static |
Definition at line 1129 of file m32c-tdep.c.
References loc, pv_unknown(), size, srcdest_mem, srcdest_partial_reg, m32c_pv_state::stack, pv_area::store(), and pv_area::store_would_trash().
Referenced by m32c_analyze_prologue().
|
static |
Definition at line 1910 of file m32c-tdep.c.
References frame_id_build(), get_frame_func(), and m32c_frame_base().
|
static |
Definition at line 1176 of file m32c-tdep.c.
References m32c_next_byte().
Referenced by m32c_analyze_prologue(), m32c_decode_sd23(), and m32c_decode_srcdest4().
|
static |
Definition at line 1196 of file m32c-tdep.c.
References m32c_next_byte().
Referenced by m32c_analyze_prologue(), and m32c_decode_sd23().
|
static |
Definition at line 1162 of file m32c-tdep.c.
References m32c_next_byte().
Referenced by m32c_decode_sd23(), and m32c_decode_srcdest4().
|
static |
Definition at line 1957 of file m32c-tdep.c.
References frame_unwind_register_unsigned(), gdbarch_tdep(), m32c_reg::num, and gdbarch_tdep::pc.
Referenced by m32c_gdbarch_init().
|
static |
Definition at line 1965 of file m32c-tdep.c.
References frame_unwind_register_unsigned(), gdbarch_tdep(), m32c_reg::num, and gdbarch_tdep::sp.
Referenced by m32c_gdbarch_init().
|
static |
Definition at line 2569 of file m32c-tdep.c.
References _, gdbarch_tdep::fb, find_pc_partial_function(), m32c_prologue::frame_ptr_offset, m32c_prologue::frame_size, gdbarch_num_regs(), gdbarch_tdep(), get_current_regcache(), internal_error(), m32c_prologue::kind, m32c_analyze_prologue(), m32c_banked_register(), name, m32c_reg::num, gdbarch_tdep::pc, and gdbarch_tdep::sp.
Referenced by m32c_gdbarch_init().
| enum register_status() m32c_write_reg_t | ( | struct m32c_reg * | reg, |
| struct regcache * | cache, | ||
| const gdb_byte * | buf | ||
| ) |
|
static |
Definition at line 799 of file m32c-tdep.c.
References gdbarch_tdep::a0, gdbarch_tdep::a1, add_reg(), all_reggroup, m32c_reg::arch, CB, CCAT, CHL, gdbarch_tdep::data_addr_reg_type, DMA, gdbarch_tdep::dwarf_regs, gdbarch_tdep::fb, FLAGBIT_U, gdbarch_tdep::flg, G, gdbarch_bfd_arch_info(), gdbarch_tdep(), general_reggroup, gdbarch_tdep::int16, gdbarch_tdep::int32, gdbarch_tdep::int64, gdbarch_tdep::int8, m32c_banked_read, m32c_banked_write, m32c_debug_info_reg_to_regnum(), m32c_dma_reggroup, m32c_pseudo_register_read(), m32c_pseudo_register_write(), m32c_r3r2r1r0_read, m32c_r3r2r1r0_write, m32c_register_name(), m32c_register_reggroup_p(), m32c_register_sim_regno(), m32c_register_type(), m32c_sb_read, m32c_sb_write, mark_save_restore(), memset(), m32c_reg::num, gdbarch_tdep::num_regs, gdbarch_tdep::pc, gdbarch_tdep::r0, gdbarch_tdep::r1, R16U, gdbarch_tdep::r2, gdbarch_tdep::r2r0, gdbarch_tdep::r3, gdbarch_tdep::r3r1r2r0, gdbarch_tdep::r3r2r1r0, RA, RBA, RBD, RC, reggroup_add(), restore_reggroup, RP, S, save_reggroup, gdbarch_tdep::sb, set_dwarf_regnum(), set_gdbarch_dwarf2_reg_to_regnum(), set_gdbarch_num_pseudo_regs(), set_gdbarch_num_regs(), set_gdbarch_pc_regnum(), set_gdbarch_pseudo_register_read(), set_gdbarch_pseudo_register_write(), set_gdbarch_register_name(), set_gdbarch_register_reggroup_p(), set_gdbarch_register_sim_regno(), set_gdbarch_register_type(), set_gdbarch_sp_regnum(), set_gdbarch_stab_reg_to_regnum(), gdbarch_tdep::sp, system_reggroup, m32c_reg::type, gdbarch_tdep::uint16, and gdbarch_tdep::uint8.
Referenced by m32c_gdbarch_init().
|
static |
Definition at line 148 of file m32c-tdep.c.
References arch_integer_type(), arch_pointer_type(), arch_type(), gdbarch_tdep::code_addr_reg_type, gdbarch_tdep::data_addr_reg_type, gdbarch_tdep::func_voyd, gdb_assert_not_reached, gdbarch_bfd_arch_info(), gdbarch_ptr_bit(), gdbarch_tdep(), gdbarch_tdep::int16, gdbarch_tdep::int32, gdbarch_tdep::int64, gdbarch_tdep::int8, lookup_function_type(), gdbarch_tdep::ptr_voyd, gdbarch_tdep::push_addr_bytes, gdbarch_tdep::ret_addr_bytes, set_gdbarch_addr_bit(), set_gdbarch_int_bit(), set_gdbarch_ptr_bit(), TARGET_CHAR_BIT, TYPE_CODE_VOID, gdbarch_tdep::uint16, gdbarch_tdep::uint8, gdbarch_tdep::voyd, and xsnprintf().
Referenced by m32c_gdbarch_init().
Definition at line 694 of file m32c-tdep.c.
Definition at line 685 of file m32c-tdep.c.
Definition at line 712 of file m32c-tdep.c.
Referenced by make_regs().
Definition at line 703 of file m32c-tdep.c.
|
static |
Definition at line 669 of file m32c-tdep.c.
References gdbarch_tdep::dwarf_regs, gdb_assert, gdbarch_tdep(), M32C_MAX_NUM_REGS, and m32c_reg::num.
Referenced by make_regs().
|
static |
Definition at line 298 of file m32c-tdep.c.
Referenced by m32c_sb_read(), and make_regs().
|
static |
Definition at line 305 of file m32c-tdep.c.
Referenced by m32c_sb_write(), and make_regs().
| constexpr gdb_byte m32c_break_insn[] = { 0x00 } |
Definition at line 993 of file m32c-tdep.c.
|
static |
Definition at line 301 of file m32c-tdep.c.
|
static |
Definition at line 308 of file m32c-tdep.c.
|
static |
Definition at line 43 of file m32c-tdep.c.
Referenced by _initialize_m32c_tdep(), m32c_register_reggroup_p(), and make_regs().
|
static |
Definition at line 300 of file m32c-tdep.c.
|
static |
Definition at line 307 of file m32c-tdep.c.
|
static |
Definition at line 302 of file m32c-tdep.c.
Referenced by make_regs().
|
static |
Definition at line 309 of file m32c-tdep.c.
Referenced by make_regs().
|
static |
Definition at line 297 of file m32c-tdep.c.
Referenced by m32c_sb_read().
|
static |
Definition at line 304 of file m32c-tdep.c.
Referenced by m32c_sb_write().
|
static |
Definition at line 299 of file m32c-tdep.c.
Referenced by make_regs().
|
static |
Definition at line 306 of file m32c-tdep.c.
Referenced by make_regs().
|
static |
Definition at line 1946 of file m32c-tdep.c.
Referenced by m32c_gdbarch_init().
1.8.14