|
GDB (xrefs)
|
#include "defs.h"#include "frame.h"#include "frame-base.h"#include "frame-unwind.h"#include "dwarf2-frame.h"#include "symtab.h"#include "gdbtypes.h"#include "gdbcmd.h"#include "gdbcore.h"#include "value.h"#include "dis-asm.h"#include "inferior.h"#include "gdb_string.h"#include "gdb_assert.h"#include "arch-utils.h"#include "floatformat.h"#include "regcache.h"#include "doublest.h"#include "osabi.h"#include "objfiles.h"Go to the source code of this file.
| #define E_MAX_RETTYPE_SIZE | ( | regnum | ) |
((E_LST_ARG_REGNUM - (regnum) + 1) \ * xstormy16_reg_size)
Definition at line 93 of file xstormy16-tdep.c.
Referenced by xstormy16_push_dummy_call().
| anonymous enum |
Definition at line 71 of file xstormy16-tdep.c.
| anonymous enum |
Definition at line 85 of file xstormy16-tdep.c.
| anonymous enum |
Definition at line 97 of file xstormy16-tdep.c.
| enum gdb_regnum |
Definition at line 41 of file xstormy16-tdep.c.
| void _initialize_xstormy16_tdep | ( | void | ) |
Definition at line 868 of file xstormy16-tdep.c.
References register_gdbarch_init(), and xstormy16_gdbarch_init().
| static void xstormy16_address_to_pointer | ( | struct gdbarch * | gdbarch, |
| struct type * | type, | ||
| gdb_byte * | buf, | ||
| CORE_ADDR | addr | ||
| ) | [static] |
Definition at line 637 of file xstormy16-tdep.c.
References gdbarch::byte_order, gdbarch_byte_order(), store_unsigned_integer(), TYPE_CODE, TYPE_CODE_FUNC, TYPE_CODE_METHOD, TYPE_LENGTH, TYPE_TARGET_TYPE, and xstormy16_find_jmp_table_entry().
Referenced by xstormy16_gdbarch_init().
| static struct xstormy16_frame_cache* xstormy16_alloc_frame_cache | ( | void | ) | [static, read] |
Definition at line 653 of file xstormy16-tdep.c.
References xstormy16_frame_cache::base, E_NUM_REGS, FRAME_OBSTACK_ZALLOC, xstormy16_frame_cache::framesize, xstormy16_frame_cache::pc, REG_UNAVAIL, xstormy16_frame_cache::saved_regs, xstormy16_frame_cache::saved_sp, and xstormy16_frame_cache::uses_fp.
Referenced by xstormy16_frame_cache().
| static CORE_ADDR xstormy16_analyze_prologue | ( | struct gdbarch * | gdbarch, |
| CORE_ADDR | start_addr, | ||
| CORE_ADDR | end_addr, | ||
| struct xstormy16_frame_cache * | cache, | ||
| struct frame_info * | this_frame | ||
| ) | [static] |
Definition at line 318 of file xstormy16-tdep.c.
References E_PC_REGNUM, xstormy16_frame_cache::framesize, gdbarch_byte_order(), LONGEST, offset, read_memory_unsigned_integer(), regnum, xstormy16_frame_cache::saved_regs, ULONGEST, xstormy16_frame_cache::uses_fp, xstormy16_inst_size, xstormy16_pc_size, and xstormy16_reg_size.
Referenced by xstormy16_frame_cache(), and xstormy16_skip_prologue().
| static const unsigned char* xstormy16_breakpoint_from_pc | ( | struct gdbarch * | gdbarch, |
| CORE_ADDR * | pcptr, | ||
| int * | lenptr | ||
| ) | [static] |
Definition at line 509 of file xstormy16-tdep.c.
Referenced by xstormy16_gdbarch_init().
| static struct frame_id xstormy16_dummy_id | ( | struct gdbarch * | gdbarch, |
| struct frame_info * | this_frame | ||
| ) | [static, read] |
Definition at line 776 of file xstormy16-tdep.c.
References E_SP_REGNUM, frame_id_build(), get_frame_pc(), get_frame_register_unsigned(), and sp.
Referenced by xstormy16_gdbarch_init().
| static void xstormy16_extract_return_value | ( | struct type * | type, |
| struct regcache * | regcache, | ||
| gdb_byte * | valbuf | ||
| ) | [static] |
Definition at line 162 of file xstormy16-tdep.c.
References E_1ST_ARG_REGNUM, len, regcache_raw_read(), regnum, TYPE_LENGTH, and xstormy16_reg_size.
Referenced by xstormy16_return_value().
| static CORE_ADDR xstormy16_find_jmp_table_entry | ( | struct gdbarch * | gdbarch, |
| CORE_ADDR | faddr | ||
| ) | [static] |
Definition at line 551 of file xstormy16-tdep.c.
References ALL_OBJFILE_OSECTIONS, extract_unsigned_integer(), find_pc_section(), gdbarch_byte_order(), LONGEST, obj_section_addr, obj_section_endaddr, obj_section::objfile, objfile::sections_end, target_read_memory(), obj_section::the_bfd_section, and xstormy16_inst_size.
Referenced by xstormy16_address_to_pointer().
| static CORE_ADDR xstormy16_frame_align | ( | struct gdbarch * | gdbarch, |
| CORE_ADDR | addr | ||
| ) | [static] |
Definition at line 214 of file xstormy16-tdep.c.
Referenced by xstormy16_gdbarch_init(), and xstormy16_push_dummy_call().
| static CORE_ADDR xstormy16_frame_base_address | ( | struct frame_info * | this_frame, |
| void ** | this_cache | ||
| ) | [static] |
Definition at line 740 of file xstormy16-tdep.c.
References xstormy16_frame_cache::base, and xstormy16_frame_cache().
| static struct xstormy16_frame_cache* xstormy16_frame_cache | ( | struct frame_info * | this_frame, |
| void ** | this_cache | ||
| ) | [static, read] |
Definition at line 672 of file xstormy16-tdep.c.
References xstormy16_frame_cache::base, E_FP_REGNUM, E_NUM_REGS, E_SP_REGNUM, xstormy16_frame_cache::framesize, get_frame_arch(), get_frame_func(), get_frame_pc(), get_frame_register_unsigned(), xstormy16_frame_cache::pc, REG_UNAVAIL, xstormy16_frame_cache::saved_regs, xstormy16_frame_cache::saved_sp, xstormy16_frame_cache::uses_fp, xstormy16_alloc_frame_cache(), and xstormy16_analyze_prologue().
Referenced by xstormy16_frame_base_address(), xstormy16_frame_prev_register(), and xstormy16_frame_this_id().
| static struct value* xstormy16_frame_prev_register | ( | struct frame_info * | this_frame, |
| void ** | this_cache, | ||
| int | regnum | ||
| ) | [static, read] |
Definition at line 708 of file xstormy16-tdep.c.
References E_SP_REGNUM, frame_unwind_got_constant(), frame_unwind_got_memory(), frame_unwind_got_register(), gdb_assert, REG_UNAVAIL, xstormy16_frame_cache::saved_regs, xstormy16_frame_cache::saved_sp, and xstormy16_frame_cache().
| static void xstormy16_frame_this_id | ( | struct frame_info * | this_frame, |
| void ** | this_cache, | ||
| struct frame_id * | this_id | ||
| ) | [static] |
Definition at line 726 of file xstormy16-tdep.c.
References xstormy16_frame_cache::base, frame_id_build(), xstormy16_frame_cache::pc, xstormy16_frame_cache::saved_sp, and xstormy16_frame_cache().
| static struct gdbarch* xstormy16_gdbarch_init | ( | struct gdbarch_info | info, |
| struct gdbarch_list * | arches | ||
| ) | [static, read] |
Definition at line 788 of file xstormy16-tdep.c.
References core_addr_greaterthan(), dwarf2_append_unwinders(), E_NUM_REGS, E_PC_REGNUM, E_SP_REGNUM, frame_base_set_default(), frame_unwind_append_unwinder(), gdbarch_list::gdbarch, gdbarch_alloc(), gdbarch_init_osabi(), gdbarch_list_lookup_by_info(), set_gdbarch_addr_bit(), set_gdbarch_address_to_pointer(), set_gdbarch_breakpoint_from_pc(), set_gdbarch_char_signed(), set_gdbarch_double_bit(), set_gdbarch_dummy_id(), set_gdbarch_dwarf2_addr_size(), set_gdbarch_float_bit(), set_gdbarch_frame_align(), set_gdbarch_in_function_epilogue_p(), set_gdbarch_inner_than(), set_gdbarch_int_bit(), set_gdbarch_long_bit(), set_gdbarch_long_double_bit(), set_gdbarch_long_long_bit(), set_gdbarch_num_pseudo_regs(), set_gdbarch_num_regs(), set_gdbarch_pc_regnum(), set_gdbarch_pointer_to_address(), set_gdbarch_print_insn(), set_gdbarch_ptr_bit(), set_gdbarch_push_dummy_call(), set_gdbarch_register_name(), set_gdbarch_register_type(), set_gdbarch_return_value(), set_gdbarch_short_bit(), set_gdbarch_skip_prologue(), set_gdbarch_skip_trampoline_code(), set_gdbarch_sp_regnum(), set_gdbarch_unwind_pc(), set_gdbarch_unwind_sp(), xstormy16_address_to_pointer(), xstormy16_breakpoint_from_pc(), xstormy16_dummy_id(), xstormy16_frame_align(), xstormy16_in_function_epilogue_p(), xstormy16_pointer_to_address(), xstormy16_push_dummy_call(), xstormy16_register_name(), xstormy16_register_type(), xstormy16_return_value(), xstormy16_skip_prologue(), xstormy16_skip_trampoline_code(), xstormy16_unwind_pc(), and xstormy16_unwind_sp().
Referenced by _initialize_xstormy16_tdep().
| static int xstormy16_in_function_epilogue_p | ( | struct gdbarch * | gdbarch, |
| CORE_ADDR | pc | ||
| ) | [static] |
Definition at line 462 of file xstormy16-tdep.c.
References find_pc_partial_function(), gdbarch_byte_order(), read_memory_unsigned_integer(), ULONGEST, and xstormy16_inst_size.
Referenced by xstormy16_gdbarch_init().
| static CORE_ADDR xstormy16_pointer_to_address | ( | struct gdbarch * | gdbarch, |
| struct type * | type, | ||
| const gdb_byte * | buf | ||
| ) | [static] |
Definition at line 618 of file xstormy16-tdep.c.
References gdbarch::byte_order, extract_unsigned_integer(), gdbarch_byte_order(), TYPE_CODE, TYPE_CODE_FUNC, TYPE_CODE_METHOD, TYPE_LENGTH, TYPE_TARGET_TYPE, and xstormy16_resolve_jmp_table_entry().
Referenced by xstormy16_gdbarch_init().
| static CORE_ADDR xstormy16_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 227 of file xstormy16-tdep.c.
References do_cleanups(), E_1ST_ARG_REGNUM, E_LST_ARG_REGNUM, E_MAX_RETTYPE_SIZE, E_PTR_RET_REGNUM, E_SP_REGNUM, extract_unsigned_integer(), gdbarch_byte_order(), make_cleanup(), memcpy(), memset(), regcache_cooked_write_unsigned(), size, store_unsigned_integer(), TYPE_LENGTH, ULONGEST, value_contents(), value_enclosing_type(), write_memory(), xfree(), xmalloc(), xstormy16_frame_align(), xstormy16_pc_size, and xstormy16_reg_size.
Referenced by xstormy16_gdbarch_init().
| static const char* xstormy16_register_name | ( | struct gdbarch * | gdbarch, |
| int | regnum | ||
| ) | [static] |
Definition at line 106 of file xstormy16-tdep.c.
References _, E_NUM_REGS, internal_error(), and regnum.
Referenced by xstormy16_gdbarch_init().
| static struct type* xstormy16_register_type | ( | struct gdbarch * | gdbarch, |
| int | regnum | ||
| ) | [static, read] |
Definition at line 124 of file xstormy16-tdep.c.
References builtin_type(), builtin_type::builtin_uint16, builtin_type::builtin_uint32, and E_PC_REGNUM.
Referenced by xstormy16_gdbarch_init().
| static CORE_ADDR xstormy16_resolve_jmp_table_entry | ( | struct gdbarch * | gdbarch, |
| CORE_ADDR | faddr | ||
| ) | [static] |
Definition at line 520 of file xstormy16-tdep.c.
References extract_unsigned_integer(), find_pc_section(), gdbarch_byte_order(), LONGEST, target_read_memory(), obj_section::the_bfd_section, and xstormy16_inst_size.
Referenced by xstormy16_pointer_to_address(), and xstormy16_skip_trampoline_code().
| static enum return_value_convention xstormy16_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 200 of file xstormy16-tdep.c.
References RETURN_VALUE_REGISTER_CONVENTION, RETURN_VALUE_STRUCT_CONVENTION, xstormy16_extract_return_value(), xstormy16_store_return_value(), and xstormy16_use_struct_convention().
Referenced by xstormy16_gdbarch_init().
| static CORE_ADDR xstormy16_skip_prologue | ( | struct gdbarch * | gdbarch, |
| CORE_ADDR | pc | ||
| ) | [static] |
Definition at line 417 of file xstormy16-tdep.c.
References symtab_and_line::end, find_pc_line(), find_pc_partial_function(), language_asm, lookup_symbol(), memset(), xstormy16_frame_cache::pc, SYMBOL_LANGUAGE, xstormy16_frame_cache::uses_fp, VAR_DOMAIN, and xstormy16_analyze_prologue().
Referenced by xstormy16_gdbarch_init().
| static CORE_ADDR xstormy16_skip_trampoline_code | ( | struct frame_info * | frame, |
| CORE_ADDR | pc | ||
| ) | [static] |
Definition at line 600 of file xstormy16-tdep.c.
References get_frame_arch(), and xstormy16_resolve_jmp_table_entry().
Referenced by xstormy16_gdbarch_init().
| static void xstormy16_store_return_value | ( | struct type * | type, |
| struct regcache * | regcache, | ||
| const gdb_byte * | valbuf | ||
| ) | [static] |
Definition at line 178 of file xstormy16-tdep.c.
References E_1ST_ARG_REGNUM, len, memcpy(), memset(), regcache_raw_write(), regnum, TYPE_LENGTH, and xstormy16_reg_size.
Referenced by xstormy16_return_value().
| static int xstormy16_type_is_scalar | ( | struct type * | t | ) | [static] |
Definition at line 137 of file xstormy16-tdep.c.
References TYPE_CODE, TYPE_CODE_ARRAY, TYPE_CODE_STRUCT, and TYPE_CODE_UNION.
Referenced by xstormy16_use_struct_convention().
| static CORE_ADDR xstormy16_unwind_pc | ( | struct gdbarch * | gdbarch, |
| struct frame_info * | next_frame | ||
| ) | [static] |
Definition at line 770 of file xstormy16-tdep.c.
References E_PC_REGNUM, and frame_unwind_register_unsigned().
Referenced by xstormy16_gdbarch_init().
| static CORE_ADDR xstormy16_unwind_sp | ( | struct gdbarch * | gdbarch, |
| struct frame_info * | next_frame | ||
| ) | [static] |
Definition at line 764 of file xstormy16-tdep.c.
References E_SP_REGNUM, and frame_unwind_register_unsigned().
Referenced by xstormy16_gdbarch_init().
| static int xstormy16_use_struct_convention | ( | struct type * | type | ) | [static] |
Definition at line 151 of file xstormy16-tdep.c.
References E_MAX_RETTYPE_SIZE_IN_REGS, TYPE_LENGTH, and xstormy16_type_is_scalar().
Referenced by xstormy16_return_value().
struct frame_base xstormy16_frame_base [static] |
{
&xstormy16_frame_unwind,
xstormy16_frame_base_address,
xstormy16_frame_base_address,
xstormy16_frame_base_address
}
Definition at line 756 of file xstormy16-tdep.c.
struct frame_unwind xstormy16_frame_unwind [static] |
{
NORMAL_FRAME,
default_frame_unwind_stop_reason,
xstormy16_frame_this_id,
xstormy16_frame_prev_register,
NULL,
default_frame_sniffer
}
Definition at line 747 of file xstormy16-tdep.c.
1.7.6.1