GDB (xrefs)
|
#include "defs.h"
#include "frame.h"
#include "frame-unwind.h"
#include "frame-base.h"
#include "symtab.h"
#include "dis-asm.h"
#include "arch-utils.h"
#include "gdbtypes.h"
#include "gdb_string.h"
#include "regcache.h"
#include "reggroups.h"
#include "gdbcore.h"
#include "trad-frame.h"
#include "inferior.h"
#include "dwarf2-frame.h"
#include "infcall.h"
#include "gdb_assert.h"
#include "language.h"
#include "valprint.h"
Go to the source code of this file.
#define wordsize 4 |
enum mt_arch_constants |
enum mt_gdb_regnums |
void _initialize_mt_tdep | ( | void | ) |
Definition at line 1216 of file mt-tdep.c.
References mt_gdbarch_init(), and register_gdbarch_init().
static const gdb_byte* mt_breakpoint_from_pc | ( | struct gdbarch * | gdbarch, |
CORE_ADDR * | bp_addr, | ||
int * | bp_size | ||
) | [static] |
Definition at line 461 of file mt-tdep.c.
References gdbarch_bfd_arch_info().
Referenced by mt_gdbarch_init().
static struct type* mt_copro_register_type | ( | struct gdbarch * | arch, |
int | regnum | ||
) | [static, read] |
Definition at line 215 of file mt-tdep.c.
References builtin_type::builtin_int16, builtin_type::builtin_int32, builtin_type::builtin_long_long, builtin_type(), builtin_type::builtin_uint32, builtin_type::builtin_uint64, builtin_type::builtin_unsigned_char, gdbarch_bfd_arch_info(), MT_BYPA_REGNUM, MT_BYPB_REGNUM, MT_BYPC_REGNUM, MT_CONTEXT_REGNUM, MT_COPRO_PSEUDOREG_MAC_REGNUM, MT_CPR0_REGNUM, MT_CPR15_REGNUM, MT_EXMAC_REGNUM, MT_FLAG_REGNUM, MT_ICHANNEL_REGNUM, MT_INT_ENABLE_REGNUM, MT_ISCRAMB_REGNUM, MT_MAC_REGNUM, MT_OUT_REGNUM, MT_QCHANNEL_REGNUM, MT_QSCRAMB_REGNUM, MT_Z1_REGNUM, MT_Z2_REGNUM, MT_ZI2_REGNUM, and MT_ZQ2_REGNUM.
Referenced by mt_register_type().
static struct frame_id mt_dummy_id | ( | struct gdbarch * | gdbarch, |
struct frame_info * | this_frame | ||
) | [static, read] |
Definition at line 1071 of file mt-tdep.c.
References frame_id_build(), get_frame_pc(), get_frame_register_unsigned(), MT_SP_REGNUM, and sp.
Referenced by mt_gdbarch_init().
static CORE_ADDR mt_frame_align | ( | struct gdbarch * | gdbarch, |
CORE_ADDR | sp | ||
) | [static] |
static CORE_ADDR mt_frame_base_address | ( | struct frame_info * | this_frame, |
void ** | this_prologue_cache | ||
) | [static] |
Definition at line 1104 of file mt-tdep.c.
References mt_unwind_cache::frame_base, and mt_frame_unwind_cache().
static struct value* mt_frame_prev_register | ( | struct frame_info * | this_frame, |
void ** | this_prologue_cache, | ||
int | regnum | ||
) | [static, read] |
Definition at line 1094 of file mt-tdep.c.
References mt_frame_unwind_cache(), mt_unwind_cache::saved_regs, and trad_frame_get_prev_register().
static void mt_frame_this_id | ( | struct frame_info * | this_frame, |
void ** | this_prologue_cache, | ||
struct frame_id * | this_id | ||
) | [static] |
Definition at line 1081 of file mt-tdep.c.
References frame_id_build(), get_frame_func(), mt_frame_unwind_cache(), and mt_unwind_cache::prev_sp.
static struct mt_unwind_cache* mt_frame_unwind_cache | ( | struct frame_info * | this_frame, |
void ** | this_prologue_cache | ||
) | [static, read] |
Definition at line 909 of file mt-tdep.c.
References trad_frame_saved_reg::addr, mt_unwind_cache::frame_base, FRAME_OBSTACK_ZALLOC, mt_unwind_cache::frameless_p, mt_unwind_cache::framesize, get_frame_arch(), get_frame_func(), get_frame_memory_unsigned(), get_frame_pc(), get_frame_register_unsigned(), MT_FP_REGNUM, MT_NUM_REGS, MT_PC_REGNUM, MT_RA_REGNUM, MT_SP_REGNUM, offset, mt_unwind_cache::prev_sp, regnum, mt_unwind_cache::saved_regs, skip_prologue_using_sal(), sp, trad_frame_addr_p(), trad_frame_alloc_saved_regs(), trad_frame_set_value(), and ULONGEST.
Referenced by mt_frame_base_address(), mt_frame_prev_register(), and mt_frame_this_id().
static struct gdbarch* mt_gdbarch_init | ( | struct gdbarch_info | info, |
struct gdbarch_list * | arches | ||
) | [static, read] |
Definition at line 1140 of file mt-tdep.c.
References core_addr_lessthan(), dwarf2_append_unwinders(), floatformats_ieee_double, floatformats_ieee_single, frame_base_set_default(), frame_unwind_append_unwinder(), gdbarch_list::gdbarch, gdbarch_alloc(), gdbarch_list_lookup_by_info(), mt_breakpoint_from_pc(), mt_dummy_id(), mt_frame_align(), MT_NUM_PSEUDO_REGS, MT_NUM_REGS, MT_PC_REGNUM, mt_pseudo_register_read(), mt_pseudo_register_write(), mt_push_dummy_call(), mt_register_name(), mt_register_reggroup_p(), mt_register_type(), mt_registers_info(), mt_return_value(), mt_skip_prologue(), MT_SP_REGNUM, mt_unwind_pc(), mt_unwind_sp(), set_gdbarch_breakpoint_from_pc(), set_gdbarch_decr_pc_after_break(), set_gdbarch_double_bit(), set_gdbarch_double_format(), set_gdbarch_dummy_id(), set_gdbarch_float_bit(), set_gdbarch_float_format(), set_gdbarch_frame_align(), set_gdbarch_frame_args_skip(), set_gdbarch_inner_than(), set_gdbarch_int_bit(), set_gdbarch_long_bit(), set_gdbarch_long_double_bit(), set_gdbarch_long_double_format(), set_gdbarch_long_long_bit(), set_gdbarch_num_pseudo_regs(), set_gdbarch_num_regs(), set_gdbarch_pc_regnum(), set_gdbarch_print_insn(), set_gdbarch_print_registers_info(), set_gdbarch_pseudo_register_read(), set_gdbarch_pseudo_register_write(), set_gdbarch_ptr_bit(), set_gdbarch_push_dummy_call(), 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_unwind_pc(), set_gdbarch_unwind_sp(), and XCALLOC.
Referenced by _initialize_mt_tdep().
static enum register_status mt_pseudo_register_read | ( | struct gdbarch * | gdbarch, |
struct regcache * | regcache, | ||
int | regno, | ||
gdb_byte * | buf | ||
) | [static] |
Definition at line 527 of file mt-tdep.c.
References gdbarch_bfd_arch_info(), gdbarch_byte_order(), MT_COPRO_PSEUDOREG_MAC_REGNUM, MT_COPRO_PSEUDOREG_REGNUM, MT_COPRO_REGNUM, MT_CPR0_REGNUM, MT_EXMAC_REGNUM, MT_MAC_PSEUDOREG_REGNUM, MT_MAC_REGNUM, MT_NUM_REGS, mt_select_coprocessor(), REG_VALID, regcache_cooked_read_unsigned(), regcache_raw_read(), exsummary::status, store_signed_integer(), and ULONGEST.
Referenced by mt_gdbarch_init().
static void mt_pseudo_register_write | ( | struct gdbarch * | gdbarch, |
struct regcache * | regcache, | ||
int | regno, | ||
const gdb_byte * | buf | ||
) | [static] |
Definition at line 587 of file mt-tdep.c.
References extract_unsigned_integer(), gdbarch_bfd_arch_info(), gdbarch_byte_order(), MT_COPRO_PSEUDOREG_MAC_REGNUM, MT_COPRO_PSEUDOREG_REGNUM, MT_COPRO_REGNUM, MT_CPR0_REGNUM, MT_EXMAC_REGNUM, MT_MAC_PSEUDOREG_REGNUM, MT_MAC_REGNUM, MT_NUM_REGS, mt_select_coprocessor(), regcache_cooked_write_unsigned(), regcache_invalidate(), regcache_raw_write(), and ULONGEST.
Referenced by mt_gdbarch_init().
static CORE_ADDR mt_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] |
Definition at line 776 of file mt-tdep.c.
References do_cleanups(), extract_unsigned_integer(), gdbarch_byte_order(), make_cleanup(), memcpy(), memset(), MT_1ST_ARGREG, MT_LAST_ARGREG, MT_MAX_STRUCT_SIZE, MT_R11_REGNUM, MT_RA_REGNUM, MT_SP_REGNUM, regcache_cooked_write_unsigned(), TYPE_LENGTH, value_contents(), value_type(), wordsize, write_memory(), xfree(), and xmalloc().
Referenced by mt_gdbarch_init().
static const char* mt_register_name | ( | struct gdbarch * | gdbarch, |
int | regnum | ||
) | [static] |
Definition at line 153 of file mt-tdep.c.
References MT_COPRO_PSEUDOREG_ARRAY, MT_COPRO_PSEUDOREG_DIM_1, MT_COPRO_PSEUDOREG_DIM_2, MT_COPRO_PSEUDOREG_MAC_REGNUM, MT_COPRO_PSEUDOREG_REGS, MT_CPR0_REGNUM, MT_MAC_PSEUDOREG_REGNUM, MT_NUM_REGS, name, regnum, and xmalloc().
Referenced by mt_gdbarch_init(), and mt_register_reggroup_p().
static int mt_register_reggroup_p | ( | struct gdbarch * | gdbarch, |
int | regnum, | ||
struct reggroup * | group | ||
) | [static] |
Definition at line 310 of file mt-tdep.c.
References all_reggroup, default_register_reggroup_p(), float_reggroup, general_reggroup, MT_NUM_PSEUDO_REGS, MT_NUM_REGS, MT_R0_REGNUM, MT_R15_REGNUM, mt_register_name(), and vector_reggroup.
Referenced by mt_gdbarch_init().
static struct type* mt_register_type | ( | struct gdbarch * | arch, |
int | regnum | ||
) | [static, read] |
Definition at line 261 of file mt-tdep.c.
References _, builtin_type::builtin_data_ptr, builtin_type::builtin_func_ptr, builtin_type::builtin_int16, builtin_type::builtin_int32, builtin_type(), gdbarch_tdep::copro_type, gdbarch_tdep(), internal_error(), lookup_array_range_type(), MT_COPRO_PSEUDOREG_ARRAY, MT_COPRO_PSEUDOREG_MAC_REGNUM, MT_COPRO_PSEUDOREG_REGNUM, MT_COPRO_PSEUDOREG_REGS, mt_copro_register_type(), MT_COPRO_REGNUM, MT_CPR0_REGNUM, MT_FP_REGNUM, MT_IRA_REGNUM, MT_MAC_PSEUDOREG_REGNUM, MT_NUM_PSEUDO_REGS, MT_NUM_REGS, MT_PC_REGNUM, MT_R0_REGNUM, MT_R15_REGNUM, MT_RA_REGNUM, and MT_SP_REGNUM.
Referenced by mt_gdbarch_init().
static void mt_registers_info | ( | struct gdbarch * | gdbarch, |
struct ui_file * | file, | ||
struct frame_info * | frame, | ||
int | regnum, | ||
int | all | ||
) | [static] |
Definition at line 647 of file mt-tdep.c.
References current_language, default_print_registers_info(), deprecated_frame_register_read(), value_print_options::deref_ref, extract_unsigned_integer(), fprintf_filtered(), fputs_filtered(), gdbarch_bfd_arch_info(), gdbarch_byte_order(), gdbarch_register_name(), get_no_prettyformat_print_options(), LONGEST, MT_CONTEXT_REGNUM, MT_COPRO_PSEUDOREG_REGNUM, MT_COPRO_REGNUM, MT_EXMAC_REGNUM, MT_ICHANNEL_REGNUM, MT_MAC_PSEUDOREG_REGNUM, MT_MAC_REGNUM, MT_NUM_CPU_REGS, MT_NUM_REGS, MT_QCHANNEL_REGNUM, print_longest(), print_spaces_filtered(), register_size(), register_type(), ULONGEST, and val_print().
Referenced by mt_gdbarch_init().
static enum return_value_convention mt_return_value | ( | struct gdbarch * | gdbarch, |
struct value * | function, | ||
struct type * | type, | ||
struct regcache * | regcache, | ||
gdb_byte * | readbuf, | ||
const gdb_byte * | writebuf | ||
) | [static] |
Definition at line 338 of file mt-tdep.c.
References gdbarch_byte_order(), memcpy(), memset(), MT_R11_REGNUM, read_memory(), regcache_cooked_read_unsigned(), regcache_cooked_write(), RETURN_VALUE_ABI_RETURNS_ADDRESS, RETURN_VALUE_REGISTER_CONVENTION, store_unsigned_integer(), TYPE_LENGTH, ULONGEST, and write_memory().
Referenced by mt_gdbarch_init().
static int mt_select_coprocessor | ( | struct gdbarch * | gdbarch, |
struct regcache * | regcache, | ||
int | regno | ||
) | [static] |
Definition at line 478 of file mt-tdep.c.
References extract_signed_integer(), gdbarch_byte_order(), MT_COPRO_PSEUDOREG_ARRAY, MT_COPRO_PSEUDOREG_DIM_2, MT_COPRO_PSEUDOREG_REGS, MT_COPRO_REGNUM, MT_NUM_REGS, regcache_invalidate(), regcache_raw_read(), regcache_raw_write(), and store_signed_integer().
Referenced by mt_pseudo_register_read(), and mt_pseudo_register_write().
static CORE_ADDR mt_skip_prologue | ( | struct gdbarch * | gdbarch, |
CORE_ADDR | pc | ||
) | [static] |
Definition at line 407 of file mt-tdep.c.
References symtab_and_line::end, find_pc_line(), find_pc_partial_function(), gdbarch_byte_order(), language_asm, lookup_symbol(), read_memory_unsigned_integer(), SYMBOL_LANGUAGE, and VAR_DOMAIN.
Referenced by mt_gdbarch_init().
static CORE_ADDR mt_unwind_pc | ( | struct gdbarch * | gdbarch, |
struct frame_info * | next_frame | ||
) | [static] |
Definition at line 1049 of file mt-tdep.c.
References frame_unwind_register_unsigned(), MT_PC_REGNUM, and ULONGEST.
Referenced by mt_gdbarch_init().
static CORE_ADDR mt_unwind_sp | ( | struct gdbarch * | gdbarch, |
struct frame_info * | next_frame | ||
) | [static] |
Definition at line 1058 of file mt-tdep.c.
References frame_unwind_register_unsigned(), MT_SP_REGNUM, sp, and ULONGEST.
Referenced by mt_gdbarch_init().
Referenced by initialize_all_files().
struct frame_base mt_frame_base [static] |
{ &mt_frame_unwind, mt_frame_base_address, mt_frame_base_address, mt_frame_base_address }
struct frame_unwind mt_frame_unwind [static] |