GDB (xrefs)
|
#include "defs.h"
#include "sim/sim-m32c.h"
#include "gdbtypes.h"
#include "regcache.h"
#include "arch-utils.h"
#include "frame.h"
#include "frame-unwind.h"
#include "symtab.h"
#include "gdbcore.h"
#include "value.h"
#include "reggroups.h"
#include "prologue-value.h"
#include "objfiles.h"
#include "gdbarch.h"
Go to the source code of this file.
Classes | |
struct | m32c_reg |
struct | m32c_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, readable_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, const struct reggroup *group) |
static enum register_status | m32c_raw_read (struct m32c_reg *reg, readable_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 (readable_regcache *cache) |
static struct m32c_reg * | m32c_banked_register (struct m32c_reg *reg, readable_regcache *cache) |
static enum register_status | m32c_banked_read (struct m32c_reg *reg, readable_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, readable_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, readable_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, readable_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, readable_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, readable_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 void | 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 (frame_info_ptr this_frame, void **this_prologue_cache) |
static CORE_ADDR | m32c_frame_base (frame_info_ptr this_frame, void **this_prologue_cache) |
static void | m32c_this_id (frame_info_ptr this_frame, void **this_prologue_cache, struct frame_id *this_id) |
static struct value * | m32c_prev_register (frame_info_ptr this_frame, void **this_prologue_cache, int regnum) |
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, function_call_return_method return_method, CORE_ADDR struct_addr) |
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 (frame_info_ptr 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 () |
Variables | |
static const 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 775 of file m32c-tdep.c.
Referenced by make_regs().
#define CCAT | ( | high, | |
low, | |||
type ) |
Definition at line 791 of file m32c-tdep.c.
Referenced by make_regs().
#define DMA | ( | reg | ) | (mark_dma (reg)) |
Definition at line 798 of file m32c-tdep.c.
Referenced by make_regs().
#define FLAGBIT_B 0x0010 |
Definition at line 723 of file m32c-tdep.c.
#define FLAGBIT_U 0x0080 |
Definition at line 724 of file m32c-tdep.c.
Referenced by make_regs().
#define G | ( | reg | ) | (mark_general (reg)) |
Definition at line 796 of file m32c-tdep.c.
Referenced by make_regs().
#define M32C_MAX_DWARF_REGNUM (40) |
Definition at line 96 of file m32c-tdep.c.
Referenced by m32c_debug_info_reg_to_regnum().
#define M32C_MAX_INSN_LEN (9) |
Definition at line 1056 of file m32c-tdep.c.
#define M32C_MAX_NUM_REGS (75) |
Definition at line 93 of file m32c-tdep.c.
Referenced by add_reg(), m32c_analyze_prologue(), and set_dwarf_regnum().
Definition at line 731 of file m32c-tdep.c.
Referenced by ada_scan_number(), ppc_process_prefix_instruction(), ppc_process_record_prefix_store(), ppc_process_record_prefix_store_vsx_ds_form(), and ppc_process_record_prefix_vsx_d_form().
Definition at line 740 of file m32c-tdep.c.
Referenced by make_regs().
Definition at line 745 of file m32c-tdep.c.
Referenced by make_regs().
#define RBA | ( | name | ) |
#define RBD | ( | name | ) |
Definition at line 761 of file m32c-tdep.c.
Referenced by make_regs().
Definition at line 750 of file m32c-tdep.c.
Referenced by make_regs().
#define S | ( | reg | ) | (mark_system (reg)) |
Definition at line 797 of file m32c-tdep.c.
Referenced by make_regs(), assign_1::test(), assign_2::test(), assign_3::test(), and assign_4::test().
Definition at line 736 of file m32c-tdep.c.
enum srcdest_kind |
Enumerator | |
---|---|
srcdest_reg | |
srcdest_partial_reg | |
srcdest_mem |
Definition at line 1091 of file m32c-tdep.c.
void _initialize_m32c_tdep | ( | ) |
Definition at line 2658 of file m32c-tdep.c.
References gdbarch_register(), m32c_dma_reggroup, m32c_gdbarch_init(), reggroup_new(), and USER_REGGROUP.
|
static |
Definition at line 633 of file m32c-tdep.c.
References m32c_reg::arch, m32c_reg::dma_p, m32c_reg::dwarf_num, m32c_reg::general_p, M32C_MAX_NUM_REGS, m32c_reg::n, name, m32c_reg::name, m32c_reg::num, m32c_gdbarch_tdep::num_regs, read(), m32c_reg::read, m32c_gdbarch_tdep::regs, m32c_reg::rx, m32c_reg::ry, m32c_reg::save_restore_p, m32c_reg::sim_num, m32c_reg::system_p, type, m32c_reg::type, and m32c_reg::write.
Referenced by make_regs().
typedef BP_MANIPULATION | ( | m32c_break_insn | ) |
Definition at line 994 of file m32c-tdep.c.
|
static |
Definition at line 1511 of file m32c-tdep.c.
References m32c_prologue::arch, m32c_gdbarch_tdep::data_addr_reg_type, gdbarch_byte_order(), prologue_value::k, m32c_reg::num, m32c_gdbarch_tdep::pc, m32c_gdbarch_tdep::push_addr_bytes, pv_is_register(), pvk_register, value::reg, m32c_prologue::reg_offset, register_size(), register_type(), m32c_gdbarch_tdep::ret_addr_bytes, size, and m32c_gdbarch_tdep::sp.
Referenced by m32c_analyze_prologue().
|
static |
Definition at line 1856 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 1551 of file m32c-tdep.c.
References m32c_gdbarch_tdep::a0, m32c_pv_state::a0, m32c_gdbarch_tdep::a1, m32c_pv_state::a1, m32c_prologue::arch, m32c_pv_state::arch, check_for_saved(), m32c_gdbarch_tdep::fb, m32c_pv_state::fb, m32c_prologue::frame_ptr_offset, m32c_prologue::frame_size, gdbarch_addr_bit(), gdbarch_bfd_arch_info(), 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(), m32c_pv_state::next_addr, m32c_reg::num, m32c_gdbarch_tdep::pc, m32c_pv_state::pc, m32c_prologue::prologue_end, pv_constant(), pv_is_constant(), pv_is_identical(), pv_is_register(), pv_is_register_k(), pv_register(), m32c_gdbarch_tdep::r0, m32c_pv_state::r0, m32c_gdbarch_tdep::r1, m32c_pv_state::r1, m32c_gdbarch_tdep::r2, m32c_pv_state::r2, m32c_gdbarch_tdep::r3, m32c_pv_state::r3, m32c_prologue::reg_offset, m32c_gdbarch_tdep::ret_addr_bytes, m32c_gdbarch_tdep::sb, m32c_pv_state::sb, pv_area::scan(), m32c_pv_state::scan_pc, size, m32c_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 356 of file m32c-tdep.c.
References m32c_banked_register(), m32c_reg::num, and readable_regcache::raw_read().
|
static |
Definition at line 345 of file m32c-tdep.c.
References m32c_read_flg(), m32c_reg::n, m32c_reg::rx, and m32c_reg::ry.
Referenced by m32c_banked_read(), m32c_banked_write(), and m32c_virtual_frame_pointer().
|
static |
Definition at line 368 of file m32c-tdep.c.
References m32c_banked_register(), m32c_reg::num, and regcache::raw_write().
|
static |
Definition at line 477 of file m32c-tdep.c.
References m32c_reg::arch, readable_regcache::cooked_read(), gdbarch_byte_order(), type::length(), m32c_reg::num, m32c_reg::rx, m32c_reg::ry, status, and m32c_reg::type.
|
static |
Definition at line 505 of file m32c-tdep.c.
References m32c_reg::arch, regcache::cooked_write(), gdbarch_byte_order(), type::length(), m32c_reg::num, m32c_reg::rx, m32c_reg::ry, and m32c_reg::type.
|
static |
Definition at line 242 of file m32c-tdep.c.
References m32c_gdbarch_tdep::dwarf_regs, M32C_MAX_DWARF_REGNUM, and m32c_reg::num.
Referenced by make_regs().
|
static |
Definition at line 1269 of file m32c-tdep.c.
References srcdest::addr, code, 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 1224 of file m32c-tdep.c.
References srcdest::addr, code, 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 411 of file m32c-tdep.c.
References m32c_reg::arch, gdbarch_byte_order(), type::length(), m32c_reg::n, m32c_reg::rx, and m32c_reg::type.
Referenced by m32c_part_read(), and m32c_part_write().
|
static |
Definition at line 1880 of file m32c-tdep.c.
References m32c_prologue::arch, m32c_gdbarch_tdep::fb, m32c_prologue::frame_ptr_offset, m32c_prologue::frame_size, get_frame_arch(), get_frame_register_unsigned(), m32c_prologue::kind, m32c_analyze_frame_prologue(), m32c_reg::num, and m32c_gdbarch_tdep::sp.
Referenced by m32c_prev_register(), and m32c_this_id().
|
static |
Definition at line 2590 of file m32c-tdep.c.
References arches, gdbarch::bfd_arch_info, core_addr_lessthan(), frame_unwind_append_unwinder(), gdbarch_alloc(), gdbarch_list_lookup_by_info(), gdbarch::info(), 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_virtual_frame_pointer(), make_regs(), make_types(), set_gdbarch_address_to_pointer(), set_gdbarch_breakpoint_kind_from_pc(), 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_vbit_in_delta(), and set_gdbarch_virtual_frame_pointer().
Referenced by _initialize_m32c_tdep().
|
static |
Definition at line 1216 of file m32c-tdep.c.
Referenced by m32c_analyze_prologue().
|
static |
Definition at line 1207 of file m32c-tdep.c.
Referenced by m32c_analyze_prologue().
|
static |
Definition at line 1402 of file m32c-tdep.c.
References m32c_pv_state::arch, gdbarch_bfd_arch_info(), m32c_reg::num, pvk_register, m32c_gdbarch_tdep::r0, m32c_gdbarch_tdep::r1, and value::reg.
Referenced by m32c_is_struct_return().
|
static |
Definition at line 1417 of file m32c-tdep.c.
References m32c_pv_state::arch, gdbarch_bfd_arch_info(), m32c_reg::num, pvk_register, m32c_gdbarch_tdep::r0, m32c_gdbarch_tdep::r1, m32c_gdbarch_tdep::r2, and value::reg.
Referenced by m32c_is_arg_spill().
|
static |
Definition at line 1440 of file m32c-tdep.c.
References m32c_pv_state::arch, pv_area::find_reg(), loc, m32c_is_arg_reg(), m32c_reg::num, pv_is_register(), value::reg, m32c_gdbarch_tdep::sp, srcdest_mem, and m32c_pv_state::stack.
Referenced by m32c_analyze_prologue().
|
static |
Definition at line 1464 of file m32c-tdep.c.
References m32c_gdbarch_tdep::a0, m32c_gdbarch_tdep::a1, m32c_pv_state::arch, pv_area::find_reg(), 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 2410 of file m32c-tdep.c.
References type::code(), gdbarch_byte_order(), type::length(), general_symbol_info::linkage_name(), lookup_minimal_symbol(), lookup_minimal_symbol_by_pc(), bound_minimal_symbol::minsym, paddress(), store_unsigned_integer(), type::target_type(), TYPE_IS_REFERENCE, bound_minimal_symbol::value_address(), xfree(), and xmalloc().
Referenced by m32c_gdbarch_init().
|
static |
Definition at line 2487 of file m32c-tdep.c.
References type::code(), extract_unsigned_integer(), gdbarch_byte_order(), type::length(), general_symbol_info::linkage_name(), lookup_minimal_symbol(), lookup_minimal_symbol_by_pc(), bound_minimal_symbol::minsym, type::target_type(), TYPE_IS_REFERENCE, bound_minimal_symbol::value_address(), and xmalloc().
Referenced by m32c_gdbarch_init().
|
static |
Definition at line 1154 of file m32c-tdep.c.
References 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 446 of file m32c-tdep.c.
References readable_regcache::cooked_read_part(), type::length(), m32c_find_part(), m32c_reg::num, m32c_reg::rx, and m32c_reg::type.
|
static |
Definition at line 461 of file m32c-tdep.c.
References regcache::cooked_write_part(), m32c_find_part(), m32c_reg::num, and m32c_reg::rx.
|
static |
Definition at line 1933 of file m32c-tdep.c.
References value::arch(), frame_unwind_got_constant(), frame_unwind_got_memory(), frame_unwind_got_register(), get_frame_arch(), m32c_analyze_frame_prologue(), m32c_frame_base(), m32c_reg::num, m32c_prologue::reg_offset, regnum, and m32c_gdbarch_tdep::sp.
|
static |
Definition at line 595 of file m32c-tdep.c.
References m32c_reg::arch, reg_buffer::arch(), m32c_reg::read, and m32c_gdbarch_tdep::regs.
Referenced by make_regs().
|
static |
Definition at line 613 of file m32c-tdep.c.
References m32c_reg::arch, reg_buffer::arch(), m32c_gdbarch_tdep::regs, and m32c_reg::write.
Referenced by make_regs().
|
static |
Definition at line 2014 of file m32c-tdep.c.
References value::contents(), regcache::cooked_write(), extract_unsigned_integer(), gdbarch_bfd_arch_info(), gdbarch_byte_order(), type::length(), m32c_reg_arg_type(), m32c_reg::num, m32c_gdbarch_tdep::ptr_voyd, m32c_gdbarch_tdep::r0, m32c_gdbarch_tdep::r1, m32c_gdbarch_tdep::r2, regcache_cooked_write_unsigned(), m32c_gdbarch_tdep::ret_addr_bytes, return_method_struct, m32c_gdbarch_tdep::sp, value::type(), write_memory(), and write_memory_unsigned_integer().
Referenced by m32c_gdbarch_init().
|
static |
Definition at line 1484 of file m32c-tdep.c.
References m32c_gdbarch_tdep::a0, m32c_pv_state::a0, m32c_gdbarch_tdep::a1, m32c_pv_state::a1, m32c_pv_state::arch, m32c_gdbarch_tdep::fb, m32c_pv_state::fb, m32c_reg::num, pv_is_register(), pv_is_register_k(), m32c_gdbarch_tdep::r0, m32c_pv_state::r0, m32c_gdbarch_tdep::r1, m32c_pv_state::r1, m32c_gdbarch_tdep::r2, m32c_pv_state::r2, m32c_gdbarch_tdep::r3, m32c_pv_state::r3, m32c_gdbarch_tdep::sb, m32c_pv_state::sb, m32c_gdbarch_tdep::sp, and m32c_pv_state::sp.
Referenced by m32c_analyze_prologue().
|
static |
Definition at line 1345 of file m32c-tdep.c.
References m32c_pv_state::arch, m32c_pv_state::fb, m32c_pv_push(), m32c_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 1079 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, m32c_pv_pushm_one(), m32c_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(), srcdest::reg, and size.
Referenced by m32c_pv_pushm().
|
static |
Definition at line 532 of file m32c-tdep.c.
References m32c_reg::arch, readable_regcache::cooked_read(), gdbarch_byte_order(), type::length(), m32c_reg::num, m32c_gdbarch_tdep::r0, m32c_gdbarch_tdep::r1, m32c_gdbarch_tdep::r2, m32c_gdbarch_tdep::r3, status, and m32c_reg::type.
|
static |
Definition at line 568 of file m32c-tdep.c.
References m32c_reg::arch, regcache::cooked_write(), gdbarch_byte_order(), type::length(), m32c_reg::num, m32c_gdbarch_tdep::r0, m32c_gdbarch_tdep::r1, m32c_gdbarch_tdep::r2, m32c_gdbarch_tdep::r3, and m32c_reg::type.
|
static |
Definition at line 313 of file m32c-tdep.c.
References m32c_reg::num, and readable_regcache::raw_read().
|
static |
Definition at line 321 of file m32c-tdep.c.
References m32c_reg::num, and regcache::raw_write().
|
static |
Definition at line 332 of file m32c-tdep.c.
References m32c_reg::arch, reg_buffer::arch(), m32c_gdbarch_tdep::flg, m32c_reg::num, and readable_regcache::raw_read().
Referenced by m32c_banked_register().
enum register_status m32c_read_reg_t | ( | struct m32c_reg * | reg, |
readable_regcache * | cache, | ||
gdb_byte * | buf ) |
|
static |
Definition at line 2000 of file m32c-tdep.c.
References code, type::code(), and TYPE_IS_REFERENCE.
Referenced by m32c_push_dummy_call().
|
static |
Definition at line 218 of file m32c-tdep.c.
References m32c_reg::name, and m32c_gdbarch_tdep::regs.
Referenced by make_regs().
|
static |
Definition at line 256 of file m32c-tdep.c.
References all_reggroup, m32c_reg::dma_p, m32c_reg::general_p, general_reggroup, m32c_dma_reggroup, m32c_reg::name, regnum, m32c_gdbarch_tdep::regs, restore_reggroup, save_reggroup, m32c_reg::save_restore_p, m32c_reg::system_p, and system_reggroup.
Referenced by make_regs().
|
static |
Definition at line 234 of file m32c-tdep.c.
References m32c_gdbarch_tdep::regs, and m32c_reg::sim_num.
Referenced by make_regs().
Definition at line 226 of file m32c-tdep.c.
References type::arch(), m32c_gdbarch_tdep::regs, and m32c_reg::type.
Referenced by make_regs().
|
static |
Definition at line 2167 of file m32c-tdep.c.
References code, and type::code().
Referenced by m32c_return_value().
|
static |
Definition at line 2176 of file m32c-tdep.c.
References extract_unsigned_integer(), gdbarch_byte_order(), type::length(), lookup_minimal_symbol(), m32c_return_by_passed_buf(), bound_minimal_symbol::minsym, m32c_reg::num, m32c_gdbarch_tdep::r0, read_memory(), regcache_cooked_read_unsigned(), regcache_cooked_write_unsigned(), RETURN_VALUE_REGISTER_CONVENTION, RETURN_VALUE_STRUCT_CONVENTION, store_unsigned_integer(), bound_minimal_symbol::value_address(), and write_memory().
Referenced by m32c_gdbarch_init().
|
static |
Definition at line 381 of file m32c-tdep.c.
References m32c_reg::arch, gdbarch_bfd_arch_info(), m32c_banked_read, m32c_raw_read, and m32c_reg::rx.
|
static |
Definition at line 393 of file m32c-tdep.c.
References m32c_reg::arch, gdbarch_bfd_arch_info(), m32c_banked_write, m32c_raw_write, and m32c_reg::rx.
|
static |
Definition at line 1185 of file m32c-tdep.c.
References m32c_next_byte(), and m32c_sign_ext().
Referenced by m32c_decode_sd23().
|
static |
Definition at line 1168 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 1147 of file m32c-tdep.c.
References bits.
Referenced by m32c_sdisp16(), and m32c_sdisp8().
|
static |
Definition at line 1830 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 2311 of file m32c-tdep.c.
References find_pc_partial_function(), gdbarch_byte_order(), get_current_frame(), get_frame_arch(), get_frame_sp(), name, read_memory_unsigned_integer(), and m32c_gdbarch_tdep::ret_addr_bytes.
Referenced by m32c_gdbarch_init().
|
static |
Definition at line 1113 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 1128 of file m32c-tdep.c.
References loc, pv_unknown(), size, srcdest_mem, srcdest_partial_reg, m32c_pv_state::stack, pv_area::store(), pv_area::store_would_trash(), and value.
Referenced by m32c_analyze_prologue().
|
static |
Definition at line 1920 of file m32c-tdep.c.
References frame_id_build(), get_frame_func(), and m32c_frame_base().
|
static |
Definition at line 1175 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 1195 of file m32c-tdep.c.
References m32c_next_byte().
Referenced by m32c_analyze_prologue(), and m32c_decode_sd23().
|
static |
Definition at line 1161 of file m32c-tdep.c.
References m32c_next_byte().
Referenced by m32c_decode_sd23(), and m32c_decode_srcdest4().
|
static |
Definition at line 2551 of file m32c-tdep.c.
References m32c_gdbarch_tdep::fb, find_pc_partial_function(), m32c_prologue::frame_ptr_offset, m32c_prologue::frame_size, gdbarch_num_regs(), get_current_regcache(), m32c_prologue::kind, m32c_analyze_prologue(), m32c_banked_register(), name, m32c_reg::num, and m32c_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 803 of file m32c-tdep.c.
References m32c_gdbarch_tdep::a0, m32c_gdbarch_tdep::a1, add_reg(), m32c_reg::arch, CB, CCAT, CHL, m32c_gdbarch_tdep::data_addr_reg_type, DMA, m32c_gdbarch_tdep::dwarf_regs, m32c_gdbarch_tdep::fb, FLAGBIT_U, m32c_gdbarch_tdep::flg, G, gdbarch_bfd_arch_info(), m32c_gdbarch_tdep::int16, m32c_gdbarch_tdep::int32, m32c_gdbarch_tdep::int64, m32c_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(), m32c_reg::num, m32c_gdbarch_tdep::num_regs, m32c_gdbarch_tdep::pc, m32c_gdbarch_tdep::r0, m32c_gdbarch_tdep::r1, R16U, m32c_gdbarch_tdep::r2, m32c_gdbarch_tdep::r2r0, m32c_gdbarch_tdep::r3, m32c_gdbarch_tdep::r3r1r2r0, m32c_gdbarch_tdep::r3r2r1r0, RA, RBA, RBD, RC, reggroup_add(), RP, S, m32c_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(), m32c_gdbarch_tdep::sp, m32c_reg::type, m32c_gdbarch_tdep::uint16, and m32c_gdbarch_tdep::uint8.
Referenced by m32c_gdbarch_init().
|
static |
Definition at line 143 of file m32c-tdep.c.
References type::arch(), m32c_gdbarch_tdep::code_addr_reg_type, m32c_gdbarch_tdep::data_addr_reg_type, m32c_gdbarch_tdep::func_voyd, gdbarch_bfd_arch_info(), gdbarch_ptr_bit(), init_integer_type(), init_pointer_type(), m32c_gdbarch_tdep::int16, m32c_gdbarch_tdep::int32, m32c_gdbarch_tdep::int64, m32c_gdbarch_tdep::int8, lookup_function_type(), type_allocator::new_type(), m32c_gdbarch_tdep::ptr_voyd, m32c_gdbarch_tdep::push_addr_bytes, m32c_gdbarch_tdep::ret_addr_bytes, set_gdbarch_addr_bit(), set_gdbarch_int_bit(), set_gdbarch_ptr_bit(), m32c_gdbarch_tdep::uint16, m32c_gdbarch_tdep::uint8, and m32c_gdbarch_tdep::voyd.
Referenced by m32c_gdbarch_init().
|
static |
Definition at line 699 of file m32c-tdep.c.
References m32c_reg::dma_p.
Definition at line 690 of file m32c-tdep.c.
References m32c_reg::general_p.
Definition at line 716 of file m32c-tdep.c.
References m32c_reg::save_restore_p.
Referenced by make_regs().
Definition at line 707 of file m32c-tdep.c.
References m32c_reg::system_p.
|
static |
Definition at line 672 of file m32c-tdep.c.
References m32c_reg::arch, m32c_reg::dwarf_num, m32c_gdbarch_tdep::dwarf_regs, 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 |
Definition at line 992 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 38 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 1957 of file m32c-tdep.c.
Referenced by m32c_gdbarch_init().