GDB (xrefs)
|
#include "defs.h"
#include <ctype.h>
#include "frame.h"
#include "inferior.h"
#include "gdbcmd.h"
#include "gdbcore.h"
#include "gdb_string.h"
#include "dis-asm.h"
#include "regcache.h"
#include "reggroups.h"
#include "doublest.h"
#include "value.h"
#include "arch-utils.h"
#include "osabi.h"
#include "frame-unwind.h"
#include "frame-base.h"
#include "trad-frame.h"
#include "objfiles.h"
#include "dwarf2-frame.h"
#include "gdbtypes.h"
#include "prologue-value.h"
#include "remote.h"
#include "target-descriptions.h"
#include "user-regs.h"
#include "observer.h"
#include "arm-tdep.h"
#include "gdb/sim-arm.h"
#include "elf-bfd.h"
#include "coff/internal.h"
#include "elf/arm.h"
#include "gdb_assert.h"
#include "vec.h"
#include "record.h"
#include "record-full.h"
#include "features/arm-with-m.c"
#include "features/arm-with-m-fpa-layout.c"
#include "features/arm-with-m-vfp-d16.c"
#include "features/arm-with-iwmmxt.c"
#include "features/arm-with-vfpv2.c"
#include "features/arm-with-vfpv3.c"
#include "features/arm-with-neon.c"
#include "bfd-in2.h"
#include "libcoff.h"
Go to the source code of this file.
#define ARM_BE_BREAKPOINT {0xE7,0xFF,0xDE,0xFE} |
Definition at line 8774 of file arm-tdep.c.
#define ARM_INSN_SIZE_BYTES 4 |
Definition at line 10581 of file arm-tdep.c.
Referenced by arm_process_record().
#define ARM_LE_BREAKPOINT {0xFE,0xDE,0xFF,0xE7} |
Definition at line 8773 of file arm-tdep.c.
#define ARM_NOP 0xe1a00000 |
Definition at line 5459 of file arm-tdep.c.
Referenced by arm_copy_b_bl_blx(), arm_copy_block_xfer(), and arm_copy_bx_blx_reg().
#define bit | ( | obj, | |
st | |||
) | (((obj) >> (st)) & 1) |
Definition at line 519 of file arm-tdep.c.
Referenced by aarch64_analyze_prologue(), arm_copy_b_bl_blx(), arm_copy_block_xfer(), arm_copy_bx_blx_reg(), arm_copy_copro_load_store(), arm_copy_extra_ld_st(), arm_copy_ldr_str_ldrb_strb(), arm_decode_b_bl_ldmstm(), arm_decode_dp_misc(), arm_decode_ld_st_word_ubyte(), arm_decode_svc_copro(), arm_decode_unconditional(), arm_get_next_pc_raw(), arm_instruction_changes_pc(), arm_record_b_bl(), arm_record_data_proc_misc_ld_str(), arm_record_extension_space(), arm_record_ld_st_imm_offset(), arm_record_ld_st_multiple(), arm_record_ld_st_reg_offset(), darwin_set_sstep(), decode_thumb_32bit_ld_mem_hints(), mips32_next_pc(), set_value_bitpos(), set_value_bitsize(), shifted_reg_val(), thumb2_copy_b_bl_blx(), thumb2_copy_block_xfer(), thumb2_copy_load_literal(), thumb2_copy_preload(), thumb2_copy_table_branch(), thumb2_decode_svc_copro(), thumb2_instruction_changes_pc(), thumb_analyze_prologue(), thumb_copy_alu_reg(), thumb_copy_bx_blx_reg(), thumb_copy_cbnz_cbz(), thumb_copy_pc_relative_32bit(), thumb_copy_pop_pc_16bit(), thumb_deal_with_atomic_sequence_raw(), thumb_get_next_pc_raw(), thumb_process_displaced_16bit_insn(), thumb_process_displaced_32bit_insn(), thumb_record_ld_st_reg_offset(), and thumb_record_misc().
Definition at line 520 of file arm-tdep.c.
Referenced by ada_value_assign(), arm_analyze_load_stack_chk_guard(), arm_analyze_prologue(), arm_copy_alu_imm(), arm_copy_alu_reg(), arm_copy_alu_shifted_reg(), arm_copy_b_bl_blx(), arm_copy_block_xfer(), arm_copy_bx_blx_reg(), arm_copy_copro_load_store(), arm_copy_extra_ld_st(), arm_copy_ldr_str_ldrb_strb(), arm_copy_preload(), arm_copy_preload_reg(), arm_deal_with_atomic_sequence_raw(), arm_decode_dp_misc(), arm_decode_ext_reg_ld_st(), arm_decode_ld_st_word_ubyte(), arm_decode_media(), arm_decode_misc_memhint_neon(), arm_decode_miscellaneous(), arm_decode_svc_copro(), arm_decode_unconditional(), arm_get_next_pc_raw(), arm_in_function_epilogue_p(), arm_instruction_changes_pc(), arm_process_record(), arm_record_coproc_data_proc(), arm_record_data_proc_imm(), arm_record_data_proc_misc_ld_str(), arm_record_extension_space(), arm_record_ld_st_imm_offset(), arm_record_ld_st_multiple(), arm_record_ld_st_reg_offset(), arm_record_strx(), arm_skip_stack_protector(), decode_constrained_packed_array_type(), decode_insn(), decode_packed_array_bitsize(), decode_thumb_32bit_ld_mem_hints(), gen_extend(), locexpr_describe_location_1(), opt_from_option_mask(), print_scalar_formatted(), read_range_type(), sbo_sbz(), shifted_reg_val(), sign_extend(), sparc64_pseudo_register_write(), thumb2_copy_alu_imm(), thumb2_copy_b_bl_blx(), thumb2_copy_block_xfer(), thumb2_copy_copro_load_store(), thumb2_copy_load_literal(), thumb2_copy_load_reg_imm(), thumb2_copy_preload(), thumb2_copy_table_branch(), thumb2_decode_dp_shift_reg(), thumb2_decode_ext_reg_ld_st(), thumb2_decode_svc_copro(), thumb2_instruction_changes_pc(), thumb_analyze_prologue(), thumb_copy_16bit_ldr_literal(), thumb_copy_alu_reg(), thumb_copy_b(), thumb_copy_bx_blx_reg(), thumb_copy_cbnz_cbz(), thumb_copy_pc_relative_32bit(), thumb_deal_with_atomic_sequence_raw(), thumb_decode_pc_relative_16bit(), thumb_get_next_pc_raw(), thumb_process_displaced_16bit_insn(), thumb_process_displaced_32bit_insn(), thumb_record_add_sub_cmp_mov(), thumb_record_branch(), thumb_record_ld_st_imm_offset(), thumb_record_ld_st_reg_offset(), thumb_record_ld_st_stack(), thumb_record_ldm_stm_swi(), thumb_record_misc(), thumb_record_shift_add_sub(), tic6x_extract_signed_field(), value_assign_to_component(), value_subscript_packed(), and write_exp_bitstring().
#define BranchDest | ( | addr, | |
instr | |||
) | ((CORE_ADDR) (((unsigned long) (addr)) + 8 + (sbits (instr, 0, 23) << 2))) |
Definition at line 523 of file arm-tdep.c.
Referenced by arm_analyze_prologue(), arm_deal_with_atomic_sequence_raw(), and arm_get_next_pc_raw().
#define DISPLACED_STEPPING_ARCH_VERSION 5 |
Definition at line 269 of file arm-tdep.c.
Referenced by alu_write_pc(), and load_write_pc().
#define EXTRACT_MOVW_MOVT_IMM_A | ( | insn | ) |
Definition at line 537 of file arm-tdep.c.
Referenced by arm_analyze_load_stack_chk_guard().
#define EXTRACT_MOVW_MOVT_IMM_T | ( | insn1, | |
insn2 | |||
) |
((bits ((insn1), 0, 3) << 12) \ | (bits ((insn1), 10, 10) << 11) \ | (bits ((insn2), 12, 14) << 8) \ | bits ((insn2), 0, 7))
Definition at line 529 of file arm-tdep.c.
Referenced by arm_analyze_load_stack_chk_guard(), and thumb_analyze_prologue().
#define INSN_RECORDED | ( | ARM_RECORD | ) | (0 != (ARM_RECORD)->reg_rec_count || 0 != (ARM_RECORD)->mem_rec_count) |
Definition at line 10614 of file arm-tdep.c.
Referenced by arm_record_extension_space(), and decode_insn().
#define INSN_S_L_BIT_NUM 20 |
Definition at line 10586 of file arm-tdep.c.
Referenced by arm_record_data_proc_misc_ld_str(), arm_record_ld_st_imm_offset(), arm_record_ld_st_multiple(), and arm_record_ld_st_reg_offset().
#define IS_THUMB_ADDR | ( | addr | ) | ((addr) & 1) |
Definition at line 273 of file arm-tdep.c.
Referenced by arm_dwarf2_prev_register(), arm_insert_single_step_breakpoint(), arm_pc_is_thumb(), and arm_prologue_prev_register().
#define IT_SCAN_THRESHOLD 32 |
Definition at line 5279 of file arm-tdep.c.
Referenced by arm_adjust_breakpoint_address().
#define MAKE_THUMB_ADDR | ( | addr | ) | ((addr) | 1) |
Definition at line 274 of file arm-tdep.c.
Referenced by arm_get_next_pc(), arm_get_next_pc_raw(), arm_push_dummy_call(), thumb_deal_with_atomic_sequence_raw(), and thumb_get_next_pc_raw().
#define MAX_IT_BLOCK_PREFIX 14 |
Definition at line 5275 of file arm-tdep.c.
Referenced by arm_adjust_breakpoint_address().
#define MEM_ALLOC | ( | MEMS, | |
LENGTH, | |||
RECORD_BUF | |||
) |
do \ { \ unsigned int mem_len = LENGTH; \ if (mem_len) \ { \ MEMS = XNEWVEC (struct arm_mem_r, mem_len); \ memcpy(&MEMS->len, &RECORD_BUF[0], \ sizeof(struct arm_mem_r) * LENGTH); \ } \ } \ while (0)
Definition at line 10600 of file arm-tdep.c.
Referenced by arm_record_data_proc_imm(), arm_record_data_proc_misc_ld_str(), arm_record_extension_space(), arm_record_ld_st_imm_offset(), arm_record_ld_st_multiple(), arm_record_ld_st_reg_offset(), thumb_record_ld_st_imm_offset(), thumb_record_ld_st_reg_offset(), thumb_record_ld_st_stack(), thumb_record_ldm_stm_swi(), and thumb_record_misc().
#define MSYMBOL_IS_SPECIAL | ( | msym | ) | MSYMBOL_TARGET_FLAG_1 (msym) |
Definition at line 81 of file arm-tdep.c.
Referenced by arm_pc_is_thumb().
#define MSYMBOL_SET_SPECIAL | ( | msym | ) | MSYMBOL_TARGET_FLAG_1 (msym) = 1 |
Definition at line 78 of file arm-tdep.c.
Referenced by arm_coff_make_msymbol_special(), and arm_elf_make_msymbol_special().
#define REG_ALLOC | ( | REGS, | |
LENGTH, | |||
RECORD_BUF | |||
) |
do \ { \ unsigned int reg_len = LENGTH; \ if (reg_len) \ { \ REGS = XNEWVEC (uint32_t, reg_len); \ memcpy(®S[0], &RECORD_BUF[0], sizeof(uint32_t)*LENGTH); \ } \ } \ while (0)
Definition at line 10588 of file arm-tdep.c.
Referenced by arm_record_b_bl(), arm_record_data_proc_imm(), arm_record_data_proc_misc_ld_str(), arm_record_extension_space(), arm_record_ld_st_imm_offset(), arm_record_ld_st_multiple(), arm_record_ld_st_reg_offset(), thumb_record_add_sub_cmp_mov(), thumb_record_branch(), thumb_record_ld_st_imm_offset(), thumb_record_ld_st_reg_offset(), thumb_record_ld_st_stack(), thumb_record_ldm_stm_swi(), thumb_record_misc(), and thumb_record_shift_add_sub().
#define sbits | ( | obj, | |
st, | |||
fn | |||
) | ((long) (bits(obj,st,fn) | ((long) bit(obj,fn) * ~ submask (fn - st)))) |
Definition at line 521 of file arm-tdep.c.
Referenced by thumb2_copy_b_bl_blx(), thumb_analyze_prologue(), thumb_copy_b(), thumb_deal_with_atomic_sequence_raw(), and thumb_get_next_pc_raw().
#define submask | ( | x | ) | ((1L << ((x) + 1)) - 1) |
Definition at line 518 of file arm-tdep.c.
#define THUMB2_INSN_SIZE_BYTES 4 |
Definition at line 10583 of file arm-tdep.c.
Referenced by arm_process_record().
#define THUMB_BE_BREAKPOINT {0xbe,0xbe} |
Definition at line 8776 of file arm-tdep.c.
#define THUMB_INSN_SIZE_BYTES 2 |
Definition at line 10582 of file arm-tdep.c.
Referenced by arm_process_record().
#define THUMB_LE_BREAKPOINT {0xbe,0xbe} |
Definition at line 8775 of file arm-tdep.c.
#define THUMB_NOP 0x4600 |
Definition at line 5460 of file arm-tdep.c.
Referenced by thumb2_copy_b_bl_blx(), thumb_copy_b(), thumb_copy_bx_blx_reg(), and thumb_copy_cbnz_cbz().
#define UNMAKE_THUMB_ADDR | ( | addr | ) | ((addr) & ~1) |
Definition at line 275 of file arm-tdep.c.
Referenced by arm_addr_bits_remove(), arm_breakpoint_from_pc(), arm_exidx_new_objfile(), gdb_print_insn_arm(), and thumb_get_next_pc_raw().
typedef struct arm_exidx_entry arm_exidx_entry_s |
Definition at line 2144 of file arm-tdep.c.
typedef struct arm_mapping_symbol arm_mapping_symbol_s |
Definition at line 92 of file arm-tdep.c.
typedef struct insn_decode_record_t insn_decode_record |
typedef int(* sti_arm_hdl_fp_t)(insn_decode_record *) |
Definition at line 12436 of file arm-tdep.c.
enum arm_record_strx_t |
Definition at line 10669 of file arm-tdep.c.
Definition at line 3436 of file arm-tdep.c.
enum record_type_t |
Definition at line 10675 of file arm-tdep.c.
void _initialize_arm_tdep | ( | void | ) |
Definition at line 10433 of file arm-tdep.c.
References _, _initialize_arm_tdep, add_prefix_cmd(), add_setshow_boolean_cmd(), add_setshow_enum_cmd(), arm_abi_string, arm_abi_strings, arm_apcs_32, arm_debug, arm_dump_tdep(), arm_elf_osabi_sniffer(), arm_exidx_data_free(), arm_exidx_data_key, arm_exidx_new_objfile(), arm_fallback_mode_string, arm_force_mode_string, arm_gdbarch_init(), arm_mode_strings, arm_objfile_data_free(), arm_objfile_data_key, arm_set_abi(), arm_show_abi(), arm_show_fallback_mode(), arm_show_force_mode(), class_maintenance, class_support, current_fp_model, disassembly_style, fp_model_strings, fprintf_unfiltered(), gdbarch_register(), gdbarch_register_osabi_sniffer(), initialize_tdesc_arm_with_iwmmxt(), initialize_tdesc_arm_with_m(), initialize_tdesc_arm_with_m_fpa_layout(), initialize_tdesc_arm_with_m_vfp_d16(), initialize_tdesc_arm_with_neon(), initialize_tdesc_arm_with_vfpv2(), initialize_tdesc_arm_with_vfpv3(), mem_fileopen(), no_class, num_disassembly_options, observer_attach_new_objfile(), set_arm_command(), set_disassembly_style_sfunc(), set_fp_model_sfunc(), setdebuglist, setlist, show_arm_command(), show_fp_model(), showdebuglist, showlist, ui_file_delete(), ui_file_xstrdup(), valid_disassembly_styles, and xmalloc().
static void alu_write_pc | ( | struct regcache * | regs, |
struct displaced_step_closure * | dsc, | ||
ULONGEST | val | ||
) | [static] |
Definition at line 5573 of file arm-tdep.c.
References branch_write_pc(), bx_write_pc(), DISPLACED_STEPPING_ARCH_VERSION, and displaced_step_closure::is_thumb.
Referenced by displaced_write_reg().
static CORE_ADDR arm_addr_bits_remove | ( | struct gdbarch * | gdbarch, |
CORE_ADDR | val | ||
) | [static] |
Definition at line 449 of file arm-tdep.c.
References arm_apcs_32, and UNMAKE_THUMB_ADDR.
Referenced by arm_dwarf2_prev_register(), arm_gdbarch_init(), arm_get_next_pc_raw(), arm_prologue_prev_register(), and arm_unwind_pc().
static CORE_ADDR arm_adjust_breakpoint_address | ( | struct gdbarch * | gdbarch, |
CORE_ADDR | bpaddr | ||
) | [static] |
Definition at line 5285 of file arm-tdep.c.
References arm_find_mapping_symbol(), arm_pc_is_thumb(), extend_buffer_earlier(), extract_unsigned_integer(), find_pc_partial_function(), gdbarch_addr_bits_remove(), gdbarch_byte_order_for_code(), IT_SCAN_THRESHOLD, MAX_IT_BLOCK_PREFIX, min, target_read_memory(), thumb_insn_size(), xfree(), and xmalloc().
Referenced by arm_gdbarch_init().
static CORE_ADDR arm_analyze_load_stack_chk_guard | ( | CORE_ADDR | pc, |
struct gdbarch * | gdbarch, | ||
unsigned int * | destreg, | ||
int * | offset | ||
) | [static] |
Definition at line 1180 of file arm-tdep.c.
References arm_pc_is_thumb(), bits, EXTRACT_MOVW_MOVT_IMM_A, EXTRACT_MOVW_MOVT_IMM_T, gdbarch_byte_order_for_code(), and read_memory_unsigned_integer().
Referenced by arm_skip_stack_protector().
static CORE_ADDR arm_analyze_prologue | ( | struct gdbarch * | gdbarch, |
CORE_ADDR | prologue_start, | ||
CORE_ADDR | prologue_end, | ||
struct arm_prologue_cache * | cache | ||
) | [static] |
Definition at line 1662 of file arm-tdep.c.
References trad_frame_saved_reg::addr, arm_debug, ARM_F0_REGNUM, ARM_FP_REGNUM, ARM_FPS_REGNUM, arm_instruction_changes_pc(), ARM_IP_REGNUM, ARM_PC_REGNUM, ARM_SP_REGNUM, bits, BranchDest, do_cleanups(), fprintf_unfiltered(), arm_prologue_cache::framereg, arm_prologue_cache::framesize, gdb_stdlog, gdbarch_addr_bit(), gdbarch_byte_order(), gdbarch_byte_order_for_code(), prologue_value::k, make_cleanup_free_pv_area(), make_pv_area(), offset, paddress(), pv_add_constant(), pv_area_find_reg(), pv_area_store(), pv_area_store_would_trash(), pv_is_register(), pv_register(), read_memory_unsigned_integer(), arm_prologue_cache::saved_regs, and skip_prologue_function().
Referenced by arm_scan_prologue(), and arm_skip_prologue().
static const unsigned char* arm_breakpoint_from_pc | ( | struct gdbarch * | gdbarch, |
CORE_ADDR * | pcptr, | ||
int * | lenptr | ||
) | [static] |
Definition at line 8792 of file arm-tdep.c.
References gdbarch_tdep::arm_breakpoint, gdbarch_tdep::arm_breakpoint_size, arm_pc_is_thumb(), extract_unsigned_integer(), gdbarch_byte_order_for_code(), gdbarch_tdep(), target_read_memory(), gdbarch_tdep::thumb2_breakpoint, gdbarch_tdep::thumb2_breakpoint_size, gdbarch_tdep::thumb_breakpoint, gdbarch_tdep::thumb_breakpoint_size, thumb_insn_size(), and UNMAKE_THUMB_ADDR.
Referenced by arm_gdbarch_init(), and arm_remote_breakpoint_from_pc().
static void arm_coff_make_msymbol_special | ( | int | val, |
struct minimal_symbol * | msym | ||
) | [static] |
Definition at line 9518 of file arm-tdep.c.
References coff_sym_is_thumb(), and MSYMBOL_SET_SPECIAL.
Referenced by arm_gdbarch_init().
static int arm_compare_exidx_entries | ( | const struct arm_exidx_entry * | lhs, |
const struct arm_exidx_entry * | rhs | ||
) | [inline, static] |
Definition at line 2163 of file arm-tdep.c.
References arm_exidx_entry::addr.
Referenced by arm_find_exidx_entry().
static int arm_compare_mapping_symbols | ( | const struct arm_mapping_symbol * | lhs, |
const struct arm_mapping_symbol * | rhs | ||
) | [inline, static] |
Definition at line 312 of file arm-tdep.c.
References arm_mapping_symbol::value.
Referenced by arm_find_mapping_symbol(), and arm_record_special_symbol().
static int arm_copy_alu_imm | ( | struct gdbarch * | gdbarch, |
uint32_t | insn, | ||
struct regcache * | regs, | ||
struct displaced_step_closure * | dsc | ||
) | [static] |
Definition at line 6216 of file arm-tdep.c.
References arm_copy_unmodified(), bits, CANNOT_WRITE_PC, displaced_step_closure::cleanup, cleanup_alu_imm(), debug_displaced, displaced_read_reg(), displaced_write_reg(), fprintf_unfiltered(), gdb_stdlog, insn_references_pc(), displaced_step_closure::modinsn, displaced_step_closure::rd, displaced_step_closure::tmp, and ULONGEST.
Referenced by arm_decode_dp_misc().
static int arm_copy_alu_reg | ( | struct gdbarch * | gdbarch, |
uint32_t | insn, | ||
struct regcache * | regs, | ||
struct displaced_step_closure * | dsc | ||
) | [static] |
Definition at line 6366 of file arm-tdep.c.
References arm_copy_unmodified(), bits, debug_displaced, fprintf_unfiltered(), gdb_stdlog, insn_references_pc(), install_alu_reg(), and displaced_step_closure::modinsn.
Referenced by arm_decode_dp_misc().
static int arm_copy_alu_shifted_reg | ( | struct gdbarch * | gdbarch, |
uint32_t | insn, | ||
struct regcache * | regs, | ||
struct displaced_step_closure * | dsc | ||
) | [static] |
Definition at line 6469 of file arm-tdep.c.
References arm_copy_unmodified(), bits, debug_displaced, fprintf_unfiltered(), gdb_stdlog, insn_references_pc(), install_alu_shifted_reg(), and displaced_step_closure::modinsn.
Referenced by arm_decode_dp_misc().
static int arm_copy_b_bl_blx | ( | struct gdbarch * | gdbarch, |
uint32_t | insn, | ||
struct regcache * | regs, | ||
struct displaced_step_closure * | dsc | ||
) | [static] |
Definition at line 6016 of file arm-tdep.c.
References ARM_NOP, bit, bits, debug_displaced, fprintf_unfiltered(), gdb_stdlog, install_b_bl_blx(), displaced_step_closure::modinsn, and offset.
Referenced by arm_decode_b_bl_ldmstm(), and arm_decode_unconditional().
static int arm_copy_block_xfer | ( | struct gdbarch * | gdbarch, |
uint32_t | insn, | ||
struct regcache * | regs, | ||
struct displaced_step_closure * | dsc | ||
) | [static] |
Definition at line 7065 of file arm-tdep.c.
References _, arm_copy_unmodified(), ARM_NOP, ARM_PC_REGNUM, bit, bitcount(), bits, displaced_step_closure::block, displaced_step_closure::cleanup, cleanup_block_load_all(), cleanup_block_load_pc(), cleanup_block_store_pc(), debug_displaced, displaced_read_reg(), fprintf_unfiltered(), from, gdb_stdlog, load, displaced_step_closure::modinsn, displaced_step_closure::tmp, to, displaced_step_closure::u, and warning().
Referenced by arm_decode_b_bl_ldmstm().
static int arm_copy_bx_blx_reg | ( | struct gdbarch * | gdbarch, |
uint32_t | insn, | ||
struct regcache * | regs, | ||
struct displaced_step_closure * | dsc | ||
) | [static] |
Definition at line 6164 of file arm-tdep.c.
References ARM_NOP, bit, bits, debug_displaced, fprintf_unfiltered(), gdb_stdlog, install_bx_blx_reg(), and displaced_step_closure::modinsn.
Referenced by arm_decode_miscellaneous().
static int arm_copy_copro_load_store | ( | struct gdbarch * | gdbarch, |
uint32_t | insn, | ||
struct regcache * | regs, | ||
struct displaced_step_closure * | dsc | ||
) | [static] |
Definition at line 5906 of file arm-tdep.c.
References arm_copy_unmodified(), bit, bits, debug_displaced, fprintf_unfiltered(), gdb_stdlog, insn_references_pc(), install_copro_load_store(), and displaced_step_closure::modinsn.
Referenced by arm_decode_ext_reg_ld_st(), arm_decode_svc_copro(), and arm_decode_unconditional().
static int arm_copy_extra_ld_st | ( | struct gdbarch * | gdbarch, |
uint32_t | insn, | ||
int | unpriveleged, | ||
struct regcache * | regs, | ||
struct displaced_step_closure * | dsc | ||
) | [static] |
Definition at line 6555 of file arm-tdep.c.
References _, arm_copy_unmodified(), bit, bits, CANNOT_WRITE_PC, displaced_step_closure::cleanup, cleanup_load(), cleanup_store(), debug_displaced, displaced_read_reg(), displaced_write_reg(), fprintf_unfiltered(), gdb_stdlog, insn_references_pc(), internal_error(), displaced_step_closure::ldst, load, displaced_step_closure::modinsn, displaced_step_closure::rd, displaced_step_closure::tmp, displaced_step_closure::u, and ULONGEST.
Referenced by arm_decode_dp_misc().
static int arm_copy_ldr_str_ldrb_strb | ( | struct gdbarch * | gdbarch, |
uint32_t | insn, | ||
struct regcache * | regs, | ||
struct displaced_step_closure * | dsc, | ||
int | load, | ||
int | size, | ||
int | usermode | ||
) | [static] |
Definition at line 6789 of file arm-tdep.c.
References arm_copy_unmodified(), ARM_PC_REGNUM, bit, bits, displaced_step_closure::cleanup, cleanup_load(), cleanup_store(), debug_displaced, fprintf_unfiltered(), gdb_stdlog, insn_references_pc(), install_load_store(), displaced_step_closure::ldst, displaced_step_closure::modinsn, displaced_step_closure::numinsns, and displaced_step_closure::u.
Referenced by arm_decode_ld_st_word_ubyte().
static int arm_copy_preload | ( | struct gdbarch * | gdbarch, |
uint32_t | insn, | ||
struct regcache * | regs, | ||
struct displaced_step_closure * | dsc | ||
) | [static] |
Definition at line 5748 of file arm-tdep.c.
References arm_copy_unmodified(), bits, debug_displaced, fprintf_unfiltered(), gdb_stdlog, insn_references_pc(), install_preload(), and displaced_step_closure::modinsn.
Referenced by arm_decode_misc_memhint_neon().
static int arm_copy_preload_reg | ( | struct gdbarch * | gdbarch, |
uint32_t | insn, | ||
struct regcache * | regs, | ||
struct displaced_step_closure * | dsc | ||
) | [static] |
Definition at line 5842 of file arm-tdep.c.
References arm_copy_unmodified(), bits, debug_displaced, fprintf_unfiltered(), gdb_stdlog, insn_references_pc(), install_preload_reg(), and displaced_step_closure::modinsn.
Referenced by arm_decode_misc_memhint_neon().
static int arm_copy_svc | ( | struct gdbarch * | gdbarch, |
uint32_t | insn, | ||
struct regcache * | regs, | ||
struct displaced_step_closure * | dsc | ||
) | [static] |
Definition at line 7302 of file arm-tdep.c.
References debug_displaced, fprintf_unfiltered(), gdb_stdlog, install_svc(), and displaced_step_closure::modinsn.
Referenced by arm_decode_svc_copro().
static int arm_copy_undef | ( | struct gdbarch * | gdbarch, |
uint32_t | insn, | ||
struct displaced_step_closure * | dsc | ||
) | [static] |
Definition at line 7332 of file arm-tdep.c.
References debug_displaced, fprintf_unfiltered(), gdb_stdlog, and displaced_step_closure::modinsn.
Referenced by arm_decode_media(), arm_decode_misc_memhint_neon(), arm_decode_miscellaneous(), arm_decode_svc_copro(), and arm_decode_unconditional().
static int arm_copy_unmodified | ( | struct gdbarch * | gdbarch, |
uint32_t | insn, | ||
const char * | iname, | ||
struct displaced_step_closure * | dsc | ||
) | [static] |
Definition at line 5670 of file arm-tdep.c.
References debug_displaced, fprintf_unfiltered(), gdb_stdlog, and displaced_step_closure::modinsn.
Referenced by arm_copy_alu_imm(), arm_copy_alu_reg(), arm_copy_alu_shifted_reg(), arm_copy_block_xfer(), arm_copy_copro_load_store(), arm_copy_extra_ld_st(), arm_copy_ldr_str_ldrb_strb(), arm_copy_preload(), arm_copy_preload_reg(), arm_decode_dp_misc(), arm_decode_ext_reg_ld_st(), arm_decode_media(), arm_decode_misc_memhint_neon(), arm_decode_miscellaneous(), arm_decode_svc_copro(), and arm_decode_unconditional().
static int arm_copy_unpred | ( | struct gdbarch * | gdbarch, |
uint32_t | insn, | ||
struct displaced_step_closure * | dsc | ||
) | [static] |
Definition at line 7365 of file arm-tdep.c.
References debug_displaced, fprintf_unfiltered(), gdb_stdlog, and displaced_step_closure::modinsn.
Referenced by arm_decode_misc_memhint_neon().
int arm_deal_with_atomic_sequence | ( | struct frame_info * | frame | ) |
Definition at line 5220 of file arm-tdep.c.
References arm_deal_with_atomic_sequence_raw(), arm_frame_is_thumb(), and thumb_deal_with_atomic_sequence_raw().
Referenced by arm_linux_software_single_step(), and arm_software_single_step().
static int arm_deal_with_atomic_sequence_raw | ( | struct frame_info * | frame | ) | [static] |
Definition at line 5145 of file arm-tdep.c.
References arm_insert_single_step_breakpoint(), arm_instruction_changes_pc(), bits, BranchDest, gdbarch_byte_order_for_code(), get_frame_address_space(), get_frame_arch(), get_frame_pc(), and read_memory_unsigned_integer().
Referenced by arm_deal_with_atomic_sequence().
static int arm_decode_b_bl_ldmstm | ( | struct gdbarch * | gdbarch, |
int32_t | insn, | ||
struct regcache * | regs, | ||
struct displaced_step_closure * | dsc | ||
) | [static] |
Definition at line 7717 of file arm-tdep.c.
References arm_copy_b_bl_blx(), arm_copy_block_xfer(), and bit.
Referenced by arm_process_displaced_insn().
static int arm_decode_dp_misc | ( | struct gdbarch * | gdbarch, |
uint32_t | insn, | ||
struct regcache * | regs, | ||
struct displaced_step_closure * | dsc | ||
) | [static] |
Definition at line 7577 of file arm-tdep.c.
References arm_copy_alu_imm(), arm_copy_alu_reg(), arm_copy_alu_shifted_reg(), arm_copy_extra_ld_st(), arm_copy_unmodified(), arm_decode_miscellaneous(), bit, and bits.
Referenced by arm_process_displaced_insn().
static int arm_decode_ext_reg_ld_st | ( | struct gdbarch * | gdbarch, |
uint32_t | insn, | ||
struct regcache * | regs, | ||
struct displaced_step_closure * | dsc | ||
) | [static] |
Definition at line 7728 of file arm-tdep.c.
References arm_copy_copro_load_store(), arm_copy_unmodified(), and bits.
Referenced by arm_decode_svc_copro().
static int arm_decode_ld_st_word_ubyte | ( | struct gdbarch * | gdbarch, |
uint32_t | insn, | ||
struct regcache * | regs, | ||
struct displaced_step_closure * | dsc | ||
) | [static] |
Definition at line 7623 of file arm-tdep.c.
References arm_copy_ldr_str_ldrb_strb(), bit, and bits.
Referenced by arm_process_displaced_insn().
static int arm_decode_media | ( | struct gdbarch * | gdbarch, |
uint32_t | insn, | ||
struct displaced_step_closure * | dsc | ||
) | [static] |
Definition at line 7661 of file arm-tdep.c.
References arm_copy_undef(), arm_copy_unmodified(), and bits.
Referenced by arm_process_displaced_insn().
static int arm_decode_misc_memhint_neon | ( | struct gdbarch * | gdbarch, |
uint32_t | insn, | ||
struct regcache * | regs, | ||
struct displaced_step_closure * | dsc | ||
) | [static] |
Definition at line 7381 of file arm-tdep.c.
References arm_copy_preload(), arm_copy_preload_reg(), arm_copy_undef(), arm_copy_unmodified(), arm_copy_unpred(), and bits.
Referenced by arm_decode_unconditional().
static int arm_decode_miscellaneous | ( | struct gdbarch * | gdbarch, |
uint32_t | insn, | ||
struct regcache * | regs, | ||
struct displaced_step_closure * | dsc | ||
) | [static] |
Definition at line 7526 of file arm-tdep.c.
References arm_copy_bx_blx_reg(), arm_copy_undef(), arm_copy_unmodified(), and bits.
Referenced by arm_decode_dp_misc().
static int arm_decode_svc_copro | ( | struct gdbarch * | gdbarch, |
uint32_t | insn, | ||
CORE_ADDR | to, | ||
struct regcache * | regs, | ||
struct displaced_step_closure * | dsc | ||
) | [static] |
Definition at line 7818 of file arm-tdep.c.
References arm_copy_copro_load_store(), arm_copy_svc(), arm_copy_undef(), arm_copy_unmodified(), arm_decode_ext_reg_ld_st(), bit, and bits.
Referenced by arm_process_displaced_insn().
static int arm_decode_unconditional | ( | struct gdbarch * | gdbarch, |
uint32_t | insn, | ||
struct regcache * | regs, | ||
struct displaced_step_closure * | dsc | ||
) | [static] |
Definition at line 7441 of file arm-tdep.c.
References arm_copy_b_bl_blx(), arm_copy_copro_load_store(), arm_copy_undef(), arm_copy_unmodified(), arm_decode_misc_memhint_neon(), bit, and bits.
Referenced by arm_process_displaced_insn().
void arm_displaced_init_closure | ( | struct gdbarch * | gdbarch, |
CORE_ADDR | from, | ||
CORE_ADDR | to, | ||
struct displaced_step_closure * | dsc | ||
) |
Definition at line 8612 of file arm-tdep.c.
References gdbarch_tdep::arm_breakpoint, gdbarch_tdep::arm_breakpoint_size, debug_displaced, fprintf_unfiltered(), gdb_stdlog, gdbarch_byte_order_for_code(), gdbarch_tdep(), displaced_step_closure::is_thumb, len, displaced_step_closure::modinsn, displaced_step_closure::numinsns, offset, paddress(), size, gdbarch_tdep::thumb_breakpoint, gdbarch_tdep::thumb_breakpoint_size, write_memory(), and write_memory_unsigned_integer().
Referenced by arm_displaced_step_copy_insn(), and arm_linux_displaced_step_copy_insn().
struct displaced_step_closure* arm_displaced_step_copy_insn | ( | struct gdbarch * | gdbarch, |
CORE_ADDR | from, | ||
CORE_ADDR | to, | ||
struct regcache * | regs | ||
) | [read] |
Definition at line 8669 of file arm-tdep.c.
References arm_displaced_init_closure(), arm_process_displaced_insn(), and xmalloc().
void arm_displaced_step_fixup | ( | struct gdbarch * | gdbarch, |
struct displaced_step_closure * | dsc, | ||
CORE_ADDR | from, | ||
CORE_ADDR | to, | ||
struct regcache * | regs | ||
) |
Definition at line 8685 of file arm-tdep.c.
References ARM_PC_REGNUM, displaced_step_closure::cleanup, displaced_step_closure::insn_addr, displaced_step_closure::insn_size, regcache_cooked_write_unsigned(), and displaced_step_closure::wrote_to_pc.
Referenced by arm_linux_init_abi().
static struct frame_id arm_dummy_id | ( | struct gdbarch * | gdbarch, |
struct frame_info * | this_frame | ||
) | [static, read] |
Definition at line 3075 of file arm-tdep.c.
References ARM_SP_REGNUM, frame_id_build(), get_frame_pc(), and get_frame_register_unsigned().
Referenced by arm_gdbarch_init().
static void arm_dump_tdep | ( | struct gdbarch * | gdbarch, |
struct ui_file * | file | ||
) | [static] |
Definition at line 10419 of file arm-tdep.c.
References _, fprintf_unfiltered(), gdbarch_tdep(), and gdbarch_tdep::lowest_pc.
Referenced by _initialize_arm_tdep().
static void arm_dwarf2_frame_init_reg | ( | struct gdbarch * | gdbarch, |
int | regnum, | ||
struct dwarf2_frame_state_reg * | reg, | ||
struct frame_info * | this_frame | ||
) | [static] |
Definition at line 3136 of file arm-tdep.c.
References arm_dwarf2_prev_register(), ARM_PC_REGNUM, ARM_PS_REGNUM, ARM_SP_REGNUM, DWARF2_FRAME_REG_CFA, DWARF2_FRAME_REG_FN, dwarf2_frame_state_reg::fn, dwarf2_frame_state_reg::how, and dwarf2_frame_state_reg::loc.
Referenced by arm_gdbarch_init().
static struct value* arm_dwarf2_prev_register | ( | struct frame_info * | this_frame, |
void ** | this_cache, | ||
int | regnum | ||
) | [static, read] |
Definition at line 3101 of file arm-tdep.c.
References _, arm_addr_bits_remove(), ARM_LR_REGNUM, ARM_PC_REGNUM, ARM_PS_REGNUM, arm_psr_thumb_bit(), frame_unwind_got_constant(), frame_unwind_register_unsigned(), get_frame_arch(), get_frame_register_unsigned(), internal_error(), IS_THUMB_ADDR, and ULONGEST.
Referenced by arm_dwarf2_frame_init_reg().
static int arm_dwarf_reg_to_regnum | ( | struct gdbarch * | gdbarch, |
int | reg | ||
) | [static] |
Definition at line 4068 of file arm-tdep.c.
References ARM_F0_REGNUM, ARM_WC0_REGNUM, ARM_WCGR0_REGNUM, ARM_WR0_REGNUM, user_reg_map_name_to_regnum(), and xsnprintf().
Referenced by arm_gdbarch_init().
static void arm_elf_make_msymbol_special | ( | asymbol * | sym, |
struct minimal_symbol * | msym | ||
) | [static] |
Definition at line 9510 of file arm-tdep.c.
References MSYMBOL_SET_SPECIAL.
Referenced by arm_gdbarch_init().
static enum gdb_osabi arm_elf_osabi_sniffer | ( | bfd * | abfd | ) | [static] |
Definition at line 9756 of file arm-tdep.c.
References GDB_OSABI_UNKNOWN, and generic_elf_osabi_sniff_abi_tag_sections().
Referenced by _initialize_arm_tdep().
static void arm_exidx_data_free | ( | struct objfile * | objfile, |
void * | arg | ||
) | [static] |
Definition at line 2153 of file arm-tdep.c.
References objfile::obfd, and VEC_free.
Referenced by _initialize_arm_tdep().
static struct arm_prologue_cache* arm_exidx_fill_cache | ( | struct frame_info * | this_frame, |
gdb_byte * | entry | ||
) | [static, read] |
Definition at line 2479 of file arm-tdep.c.
References trad_frame_saved_reg::addr, ARM_D0_REGNUM, ARM_LR_REGNUM, ARM_PC_REGNUM, ARM_SP_REGNUM, ARM_WCGR0_REGNUM, ARM_WR0_REGNUM, FRAME_OBSTACK_ZALLOC, arm_prologue_cache::framereg, arm_prologue_cache::framesize, get_frame_memory_unsigned(), get_frame_register_unsigned(), offset, arm_prologue_cache::prev_sp, trad_frame_saved_reg::realreg, arm_prologue_cache::saved_regs, trad_frame_addr_p(), trad_frame_alloc_saved_regs(), trad_frame_realreg_p(), and ULONGEST.
Referenced by arm_exidx_unwind_sniffer().
static void arm_exidx_new_objfile | ( | struct objfile * | objfile | ) | [static] |
Definition at line 2204 of file arm-tdep.c.
References arm_exidx_entry::addr, arm_exidx_data_key, arm_obj_section_from_vma(), do_cleanups(), arm_exidx_entry::entry, LONGEST, lookup_minimal_symbol_by_pc_name(), make_cleanup(), null_cleanup(), objfile::obfd, obj_section_offset, objfile::objfile_obstack, OBSTACK_CALLOC, OBSTACK_ZALLOC, p, obj_section::the_bfd_section, UNMAKE_THUMB_ADDR, VEC, VEC_safe_push, word, xfree(), and xmalloc().
Referenced by _initialize_arm_tdep().
static int arm_exidx_unwind_sniffer | ( | const struct frame_unwind * | self, |
struct frame_info * | this_frame, | ||
void ** | this_prologue_cache | ||
) | [static] |
Definition at line 2774 of file arm-tdep.c.
References arm_exidx_fill_cache(), arm_find_exidx_entry(), arm_frame_is_thumb(), gdbarch::byte_order_for_code, find_pc_partial_function(), gdbarch_byte_order_for_code(), get_frame_address_in_block(), get_frame_arch(), get_frame_pc(), get_frame_type(), get_next_frame(), LONGEST, NORMAL_FRAME, and safe_read_memory_integer().
static struct type* arm_ext_type | ( | struct gdbarch * | gdbarch | ) | [static, read] |
Definition at line 3931 of file arm-tdep.c.
References arch_float_type(), gdbarch_tdep::arm_ext_type, floatformats_arm_ext, and gdbarch_tdep().
Referenced by arm_register_type().
static void arm_extract_return_value | ( | struct type * | type, |
struct regcache * | regs, | ||
gdb_byte * | valbuf | ||
) | [static] |
Definition at line 8845 of file arm-tdep.c.
References _, ARM_A1_REGNUM, ARM_F0_REGNUM, ARM_FLOAT_FPA, ARM_FLOAT_SOFT_FPA, ARM_FLOAT_SOFT_VFP, ARM_FLOAT_VFP, gdbarch::byte_order, convert_from_extended(), floatformat_from_type(), FP_REGISTER_SIZE, gdbarch_byte_order(), get_regcache_arch(), INT_REGISTER_SIZE, internal_error(), len, memcpy(), regcache_cooked_read(), regcache_cooked_read_unsigned(), store_unsigned_integer(), TYPE_CODE, TYPE_CODE_BOOL, TYPE_CODE_CHAR, TYPE_CODE_ENUM, TYPE_CODE_FLT, TYPE_CODE_INT, TYPE_CODE_PTR, TYPE_CODE_REF, TYPE_LENGTH, and ULONGEST.
Referenced by arm_return_value().
static gdb_byte* arm_find_exidx_entry | ( | CORE_ADDR | memaddr, |
CORE_ADDR * | start | ||
) | [static] |
Definition at line 2417 of file arm-tdep.c.
References arm_exidx_entry::addr, arm_compare_exidx_entries(), arm_exidx_data_key, arm_exidx_entry::entry, find_pc_section(), obj_section_addr, obj_section::objfile, obj_section::the_bfd_section, VEC, VEC_empty, VEC_index, VEC_length, and VEC_lower_bound.
Referenced by arm_exidx_unwind_sniffer().
static char arm_find_mapping_symbol | ( | CORE_ADDR | memaddr, |
CORE_ADDR * | start | ||
) | [static] |
Definition at line 323 of file arm-tdep.c.
References arm_compare_mapping_symbols(), arm_objfile_data_key, find_pc_section(), obj_section_addr, obj_section::objfile, obj_section::the_bfd_section, arm_mapping_symbol::type, arm_mapping_symbol::value, VEC, VEC_empty, VEC_index, VEC_length, and VEC_lower_bound.
Referenced by arm_adjust_breakpoint_address(), and arm_pc_is_thumb().
static CORE_ADDR arm_frame_align | ( | struct gdbarch * | gdbarch, |
CORE_ADDR | sp | ||
) | [static] |
Definition at line 3885 of file arm-tdep.c.
Referenced by arm_gdbarch_init().
int arm_frame_is_thumb | ( | struct frame_info * | frame | ) |
Definition at line 295 of file arm-tdep.c.
References ARM_PS_REGNUM, arm_psr_thumb_bit(), get_frame_arch(), get_frame_register_unsigned(), and ULONGEST.
Referenced by arm_deal_with_atomic_sequence(), arm_exidx_unwind_sniffer(), arm_get_next_pc(), arm_linux_syscall_next_pc(), arm_pc_is_thumb(), and arm_scan_prologue().
static struct gdbarch* arm_gdbarch_init | ( | struct gdbarch_info | info, |
struct gdbarch_list * | arches | ||
) | [static, read] |
Definition at line 9842 of file arm-tdep.c.
References _, gdbarch_info::abfd, gdbarch_tdep::arm_abi, ARM_ABI_AAPCS, ARM_ABI_APCS, ARM_ABI_AUTO, arm_abi_global, arm_addr_bits_remove(), arm_adjust_breakpoint_address(), gdbarch_tdep::arm_breakpoint, arm_breakpoint_from_pc(), gdbarch_tdep::arm_breakpoint_size, arm_coff_make_msymbol_special(), ARM_D0_REGNUM, arm_default_arm_be_breakpoint, arm_default_arm_le_breakpoint, arm_default_thumb_be_breakpoint, arm_default_thumb_le_breakpoint, arm_dummy_id(), arm_dwarf2_frame_init_reg(), arm_dwarf_reg_to_regnum(), arm_elf_make_msymbol_special(), ARM_F0_REGNUM, ARM_FLOAT_AUTO, ARM_FLOAT_FPA, ARM_FLOAT_SOFT_FPA, ARM_FLOAT_SOFT_VFP, ARM_FLOAT_VFP, arm_fp_model, ARM_FPS_REGNUM, ARM_FPSCR_REGNUM, arm_frame_align(), arm_get_longjmp_target(), arm_in_function_epilogue_p(), ARM_LR_REGNUM, ARM_NUM_REGS, ARM_PC_REGNUM, arm_print_float_info(), ARM_PS_REGNUM, arm_pseudo_read(), arm_pseudo_write(), arm_push_dummy_call(), arm_record_special_symbol(), arm_register_aliases, arm_register_g_packet_guesses(), arm_register_name(), arm_register_names, arm_register_reggroup_p(), arm_register_sim_regno(), arm_register_type(), arm_remote_breakpoint_from_pc(), arm_return_value(), arm_skip_prologue(), arm_skip_stub(), ARM_SP_REGNUM, arm_unwind_pc(), arm_unwind_sp(), ARM_WC0_REGNUM, ARM_WCASF_REGNUM, ARM_WCGR0_REGNUM, ARM_WCGR3_REGNUM, ARM_WR0_REGNUM, ARM_WR15_REGNUM, arm_write_pc(), gdbarch_info::byte_order_for_code, core_addr_lessthan(), DISPLACED_MODIFIED_INSNS, dwarf2_append_unwinders(), dwarf2_frame_set_init_reg(), floatformats_ieee_double, floatformats_ieee_double_littlebyte_bigword, floatformats_ieee_single, gdbarch_tdep::fp_model, frame_base_set_default(), frame_unwind_append_unwinder(), gdb_print_insn_arm(), gdbarch_list::gdbarch, gdbarch_alloc(), gdbarch_init_osabi(), gdbarch_list_lookup_by_info(), gdbarch_tdep::have_fpa_registers, gdbarch_tdep::have_neon, gdbarch_tdep::have_neon_pseudos, gdbarch_tdep::have_vfp_pseudos, gdbarch_tdep::have_vfp_registers, internal_error(), gdbarch_tdep::is_m, gdbarch_tdep::jb_pc, gdbarch_tdep::lowest_pc, name, gdbarch_list::next, reg_struct_return, regnum, set_gdbarch_addr_bits_remove(), set_gdbarch_adjust_breakpoint_address(), set_gdbarch_breakpoint_from_pc(), set_gdbarch_char_signed(), set_gdbarch_coff_make_msymbol_special(), set_gdbarch_double_format(), set_gdbarch_dummy_id(), set_gdbarch_dwarf2_reg_to_regnum(), set_gdbarch_elf_make_msymbol_special(), set_gdbarch_float_format(), set_gdbarch_frame_align(), set_gdbarch_get_longjmp_target(), set_gdbarch_have_nonsteppable_watchpoint(), set_gdbarch_in_function_epilogue_p(), set_gdbarch_inner_than(), set_gdbarch_long_double_format(), set_gdbarch_max_insn_length(), set_gdbarch_num_pseudo_regs(), set_gdbarch_num_regs(), set_gdbarch_pc_regnum(), set_gdbarch_print_float_info(), set_gdbarch_print_insn(), set_gdbarch_pseudo_register_read(), set_gdbarch_pseudo_register_write(), set_gdbarch_push_dummy_call(), set_gdbarch_record_special_symbol(), set_gdbarch_register_name(), set_gdbarch_register_reggroup_p(), set_gdbarch_register_sim_regno(), set_gdbarch_register_type(), set_gdbarch_remote_breakpoint_from_pc(), set_gdbarch_return_value(), set_gdbarch_skip_prologue(), set_gdbarch_skip_trampoline_code(), set_gdbarch_sp_regnum(), set_gdbarch_unwind_pc(), set_gdbarch_unwind_sp(), set_gdbarch_vbit_in_delta(), set_gdbarch_write_pc(), set_tdesc_pseudo_register_name(), gdbarch_tdep::struct_return, gdbarch_info::target_desc, tdesc_data, tdesc_data_alloc(), tdesc_data_cleanup(), tdesc_find_feature(), tdesc_has_registers(), tdesc_numbered_register(), tdesc_numbered_register_choices(), tdesc_unnumbered_register(), tdesc_use_registers(), gdbarch_tdep::thumb_breakpoint, gdbarch_tdep::thumb_breakpoint_size, user_reg_add(), value_of_arm_user_reg(), warning(), and xcalloc().
Referenced by _initialize_arm_tdep().
static int arm_get_longjmp_target | ( | struct frame_info * | frame, |
CORE_ADDR * | pc | ||
) | [static] |
Definition at line 9206 of file arm-tdep.c.
References ARM_A1_REGNUM, extract_unsigned_integer(), gdbarch_byte_order(), gdbarch_tdep(), get_frame_arch(), get_frame_register_unsigned(), INT_REGISTER_SIZE, gdbarch_tdep::jb_elt_size, gdbarch_tdep::jb_pc, and target_read_memory().
Referenced by arm_gdbarch_init().
CORE_ADDR arm_get_next_pc | ( | struct frame_info * | frame, |
CORE_ADDR | pc | ||
) |
Definition at line 4968 of file arm-tdep.c.
References _, arm_frame_is_thumb(), arm_get_next_pc_raw(), error(), MAKE_THUMB_ADDR, and thumb_get_next_pc_raw().
Referenced by arm_linux_software_single_step(), and arm_software_single_step().
static CORE_ADDR arm_get_next_pc_raw | ( | struct frame_info * | frame, |
CORE_ADDR | pc | ||
) | [static] |
Definition at line 4702 of file arm-tdep.c.
References _, arm_addr_bits_remove(), arm_apcs_32, ARM_PC_REGNUM, ARM_PS_REGNUM, bit, bitcount(), bits, BranchDest, gdbarch::byte_order, gdbarch::byte_order_for_code, condition_true(), error(), FLAG_C, fprintf_filtered(), gdb_stderr, gdbarch_byte_order(), gdbarch_byte_order_for_code(), gdbarch_tdep(), get_frame_arch(), get_frame_register_unsigned(), INST_NV, gdb::printing::long, MAKE_THUMB_ADDR, offset, read_memory_unsigned_integer(), shifted_reg_val(), exsummary::status, and gdbarch_tdep::syscall_next_pc.
Referenced by arm_get_next_pc().
static int arm_in_function_epilogue_p | ( | struct gdbarch * | gdbarch, |
CORE_ADDR | pc | ||
) | [static] |
Definition at line 3282 of file arm-tdep.c.
References arm_pc_is_thumb(), bits, gdbarch::byte_order_for_code, find_pc_partial_function(), gdbarch_byte_order_for_code(), INST_NV, read_memory_unsigned_integer(), and thumb_in_function_epilogue_p().
Referenced by arm_gdbarch_init().
void arm_insert_single_step_breakpoint | ( | struct gdbarch * | gdbarch, |
struct address_space * | aspace, | ||
CORE_ADDR | pc | ||
) |
Definition at line 4993 of file arm-tdep.c.
References arm_override_mode, do_cleanups(), gdbarch_addr_bits_remove(), insert_single_step_breakpoint(), IS_THUMB_ADDR, and make_cleanup_restore_integer().
Referenced by arm_deal_with_atomic_sequence_raw(), arm_linux_software_single_step(), arm_software_single_step(), thumb_deal_with_atomic_sequence_raw(), and thumb_get_next_pc_raw().
static int arm_instruction_changes_pc | ( | uint32_t | this_instr | ) | [static] |
Definition at line 1562 of file arm-tdep.c.
References _, ARM_PC_REGNUM, bit, bits, error(), INST_NV, and internal_error().
Referenced by arm_analyze_prologue(), and arm_deal_with_atomic_sequence_raw().
static struct arm_prologue_cache* arm_m_exception_cache | ( | struct frame_info * | this_frame | ) | [static, read] |
Definition at line 2933 of file arm-tdep.c.
References trad_frame_saved_reg::addr, ARM_PS_REGNUM, ARM_SP_REGNUM, gdbarch::byte_order, FRAME_OBSTACK_ZALLOC, gdbarch_byte_order(), get_frame_arch(), get_frame_register_unsigned(), LONGEST, arm_prologue_cache::prev_sp, safe_read_memory_integer(), arm_prologue_cache::saved_regs, and trad_frame_alloc_saved_regs().
Referenced by arm_m_exception_prev_register(), and arm_m_exception_this_id().
static struct value* arm_m_exception_prev_register | ( | struct frame_info * | this_frame, |
void ** | this_cache, | ||
int | prev_regnum | ||
) | [static, read] |
Definition at line 2994 of file arm-tdep.c.
References arm_m_exception_cache(), ARM_SP_REGNUM, frame_unwind_got_constant(), get_frame_arch(), arm_prologue_cache::prev_sp, arm_prologue_cache::saved_regs, and trad_frame_get_prev_register().
static void arm_m_exception_this_id | ( | struct frame_info * | this_frame, |
void ** | this_cache, | ||
struct frame_id * | this_id | ||
) | [static] |
Definition at line 2975 of file arm-tdep.c.
References arm_m_exception_cache(), frame_id_build(), get_frame_pc(), and arm_prologue_cache::prev_sp.
static int arm_m_exception_unwind_sniffer | ( | const struct frame_unwind * | self, |
struct frame_info * | this_frame, | ||
void ** | this_prologue_cache | ||
) | [static] |
Definition at line 3018 of file arm-tdep.c.
References get_frame_pc().
static struct arm_prologue_cache* arm_make_prologue_cache | ( | struct frame_info * | this_frame | ) | [static, read] |
Definition at line 2003 of file arm-tdep.c.
References trad_frame_saved_reg::addr, arm_scan_prologue(), FRAME_OBSTACK_ZALLOC, arm_prologue_cache::framereg, arm_prologue_cache::framesize, gdbarch_num_regs(), get_frame_arch(), get_frame_register_unsigned(), arm_prologue_cache::prev_sp, arm_prologue_cache::saved_regs, trad_frame_addr_p(), and trad_frame_alloc_saved_regs().
Referenced by arm_normal_frame_base(), arm_prologue_prev_register(), and arm_prologue_this_id().
static struct arm_prologue_cache* arm_make_stub_cache | ( | struct frame_info * | this_frame | ) | [static, read] |
Definition at line 2873 of file arm-tdep.c.
References ARM_SP_REGNUM, FRAME_OBSTACK_ZALLOC, get_frame_register_unsigned(), arm_prologue_cache::prev_sp, arm_prologue_cache::saved_regs, and trad_frame_alloc_saved_regs().
Referenced by arm_stub_this_id().
static struct type* arm_neon_double_type | ( | struct gdbarch * | gdbarch | ) | [static, read] |
Definition at line 3944 of file arm-tdep.c.
References append_composite_type_field(), arch_composite_type(), builtin_type::builtin_double, builtin_type::builtin_float, builtin_type(), builtin_type::builtin_uint16, builtin_type::builtin_uint32, builtin_type::builtin_uint64, builtin_type::builtin_uint8, gdbarch_tdep(), init_vector_type(), gdbarch_tdep::neon_double_type, TYPE_CODE_UNION, TYPE_NAME, and TYPE_VECTOR.
Referenced by arm_register_type().
static enum register_status arm_neon_quad_read | ( | struct gdbarch * | gdbarch, |
struct regcache * | regcache, | ||
int | regnum, | ||
gdb_byte * | buf | ||
) | [static] |
Definition at line 9612 of file arm-tdep.c.
References gdbarch_byte_order(), memcpy(), offset, REG_VALID, regcache_raw_read(), exsummary::status, user_reg_map_name_to_regnum(), and xsnprintf().
Referenced by arm_pseudo_read(), and arm_return_value().
static struct type* arm_neon_quad_type | ( | struct gdbarch * | gdbarch | ) | [static, read] |
Definition at line 3983 of file arm-tdep.c.
References append_composite_type_field(), arch_composite_type(), builtin_type::builtin_double, builtin_type::builtin_float, builtin_type(), builtin_type::builtin_uint16, builtin_type::builtin_uint32, builtin_type::builtin_uint64, builtin_type::builtin_uint8, gdbarch_tdep(), init_vector_type(), gdbarch_tdep::neon_quad_type, TYPE_CODE_UNION, TYPE_NAME, and TYPE_VECTOR.
Referenced by arm_register_type().
static void arm_neon_quad_write | ( | struct gdbarch * | gdbarch, |
struct regcache * | regcache, | ||
int | regnum, | ||
const gdb_byte * | buf | ||
) | [static] |
Definition at line 9691 of file arm-tdep.c.
References gdbarch_byte_order(), offset, regcache_raw_write(), user_reg_map_name_to_regnum(), and xsnprintf().
Referenced by arm_pseudo_write(), arm_push_dummy_call(), and arm_return_value().
static CORE_ADDR arm_normal_frame_base | ( | struct frame_info * | this_frame, |
void ** | this_cache | ||
) | [static] |
Definition at line 3050 of file arm-tdep.c.
References arm_make_prologue_cache(), arm_prologue_cache::framesize, and arm_prologue_cache::prev_sp.
static struct obj_section* arm_obj_section_from_vma | ( | struct objfile * | objfile, |
bfd_vma | vma | ||
) | [static, read] |
Definition at line 2170 of file arm-tdep.c.
References ALL_OBJFILE_OSECTIONS, objfile::obfd, size, and obj_section::the_bfd_section.
Referenced by arm_exidx_new_objfile().
static void arm_objfile_data_free | ( | struct objfile * | objfile, |
void * | arg | ||
) | [static] |
Definition at line 9525 of file arm-tdep.c.
References objfile::obfd, and VEC_free.
Referenced by _initialize_arm_tdep().
int arm_pc_is_thumb | ( | struct gdbarch * | gdbarch, |
CORE_ADDR | memaddr | ||
) |
Definition at line 382 of file arm-tdep.c.
References arm_fallback_mode_string, arm_find_mapping_symbol(), arm_force_mode_string, arm_frame_is_thumb(), arm_override_mode, debug_displaced, fprintf_unfiltered(), gdb_stdlog, get_current_frame(), get_displaced_step_closure_by_addr(), displaced_step_closure::insn_addr, IS_THUMB_ADDR, lookup_minimal_symbol_by_pc(), bound_minimal_symbol::minsym, MSYMBOL_IS_SPECIAL, target_has_registers, and type.
Referenced by arm_adjust_breakpoint_address(), arm_analyze_load_stack_chk_guard(), arm_breakpoint_from_pc(), arm_in_function_epilogue_p(), arm_linux_hw_breakpoint_initialize(), arm_push_dummy_call(), arm_remote_breakpoint_from_pc(), arm_skip_prologue(), arm_skip_stack_protector(), arm_write_pc(), and gdb_print_insn_arm().
static void arm_print_float_info | ( | struct gdbarch * | gdbarch, |
struct ui_file * | file, | ||
struct frame_info * | frame, | ||
const char * | args | ||
) | [static] |
Definition at line 3910 of file arm-tdep.c.
References _, ARM_FPS_REGNUM, get_frame_register_unsigned(), print_fpu_flags(), exsummary::status, and type.
Referenced by arm_gdbarch_init().
void arm_process_displaced_insn | ( | struct gdbarch * | gdbarch, |
CORE_ADDR | from, | ||
CORE_ADDR | to, | ||
struct regcache * | regs, | ||
struct displaced_step_closure * | dsc | ||
) |
Definition at line 8552 of file arm-tdep.c.
References _, arm_decode_b_bl_ldmstm(), arm_decode_dp_misc(), arm_decode_ld_st_word_ubyte(), arm_decode_media(), arm_decode_svc_copro(), arm_decode_unconditional(), displaced_step_closure::cleanup, debug_displaced, displaced_in_arm_mode(), fprintf_unfiltered(), from, gdb_stdlog, gdbarch_byte_order_for_code(), displaced_step_closure::insn_addr, displaced_step_closure::insn_size, internal_error(), displaced_step_closure::is_thumb, displaced_step_closure::numinsns, read_memory_unsigned_integer(), displaced_step_closure::scratch_base, thumb_process_displaced_insn(), to, and displaced_step_closure::wrote_to_pc.
Referenced by arm_displaced_step_copy_insn(), and arm_linux_displaced_step_copy_insn().
int arm_process_record | ( | struct gdbarch * | gdbarch, |
struct regcache * | regcache, | ||
CORE_ADDR | insn_addr | ||
) |
Definition at line 12537 of file arm-tdep.c.
References _, arm_mem_r::addr, insn_decode_record_t::arm_insn, ARM_INSN_SIZE_BYTES, insn_decode_record_t::arm_mems, ARM_PC_REGNUM, ARM_PS_REGNUM, arm_psr_thumb_bit(), ARM_RECORD, insn_decode_record_t::arm_regs, bits, deallocate_reg_mem(), decode_insn(), extract_arm_insn(), fprintf_unfiltered(), gdb_stdlog, insn_decode_record_t::gdbarch, gdbarch_byte_order(), arm_mem_r::len, insn_decode_record_t::mem_rec_count, memset(), paddress(), printf_unfiltered(), record_debug, record_full_arch_list_add_end(), record_full_arch_list_add_mem(), record_full_arch_list_add_reg(), insn_decode_record_t::reg_rec_count, insn_decode_record_t::regcache, regcache_raw_read_unsigned(), insn_decode_record_t::this_addr, THUMB2_INSN_SIZE_BYTES, THUMB2_RECORD, THUMB_INSN_SIZE_BYTES, THUMB_RECORD, and ULONGEST.
Referenced by arm_linux_init_abi().
static struct value* arm_prologue_prev_register | ( | struct frame_info * | this_frame, |
void ** | this_cache, | ||
int | prev_regnum | ||
) | [static, read] |
Definition at line 2066 of file arm-tdep.c.
References arm_addr_bits_remove(), ARM_LR_REGNUM, arm_make_prologue_cache(), ARM_PC_REGNUM, ARM_PS_REGNUM, arm_psr_thumb_bit(), ARM_SP_REGNUM, frame_unwind_got_constant(), frame_unwind_register_unsigned(), get_frame_arch(), get_frame_register_unsigned(), IS_THUMB_ADDR, arm_prologue_cache::prev_sp, arm_prologue_cache::saved_regs, trad_frame_get_prev_register(), and ULONGEST.
static void arm_prologue_this_id | ( | struct frame_info * | this_frame, |
void ** | this_cache, | ||
struct frame_id * | this_id | ||
) | [static] |
Definition at line 2033 of file arm-tdep.c.
References arm_make_prologue_cache(), frame_id_build(), func, get_frame_arch(), get_frame_func(), get_frame_pc(), and arm_prologue_cache::prev_sp.
static enum register_status arm_pseudo_read | ( | struct gdbarch * | gdbarch, |
struct regcache * | regcache, | ||
int | regnum, | ||
gdb_byte * | buf | ||
) | [static] |
Definition at line 9645 of file arm-tdep.c.
References arm_neon_quad_read(), gdb_assert, gdbarch_byte_order(), gdbarch_num_regs(), memcpy(), gdbarch::num_regs, offset, REG_VALID, regcache_raw_read(), exsummary::status, user_reg_map_name_to_regnum(), and xsnprintf().
Referenced by arm_gdbarch_init().
static void arm_pseudo_write | ( | struct gdbarch * | gdbarch, |
struct regcache * | regcache, | ||
int | regnum, | ||
const gdb_byte * | buf | ||
) | [static] |
Definition at line 9713 of file arm-tdep.c.
References arm_neon_quad_write(), gdb_assert, gdbarch_byte_order(), gdbarch_num_regs(), memcpy(), gdbarch::num_regs, offset, regcache_raw_read(), regcache_raw_write(), user_reg_map_name_to_regnum(), and xsnprintf().
Referenced by arm_gdbarch_init().
int arm_psr_thumb_bit | ( | struct gdbarch * | gdbarch | ) |
Definition at line 284 of file arm-tdep.c.
References CPSR_T, and XPSR_T.
Referenced by arm_dwarf2_prev_register(), arm_frame_is_thumb(), arm_linux_get_syscall_number(), arm_linux_restart_syscall_init(), arm_linux_sigreturn_return_addr(), arm_process_record(), arm_prologue_prev_register(), arm_write_pc(), bx_write_pc(), and displaced_in_arm_mode().
static CORE_ADDR arm_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 3652 of file arm-tdep.c.
References ARM_A1_REGNUM, gdbarch_tdep::arm_abi, ARM_ABI_APCS, arm_debug, ARM_LAST_ARG_REGNUM, ARM_LR_REGNUM, arm_neon_quad_write(), arm_pc_is_thumb(), ARM_SP_REGNUM, arm_type_align(), arm_vfp_abi_for_function(), arm_vfp_call_candidate(), arm_vfp_cprc_reg_char(), arm_vfp_cprc_unit_length(), check_typedef(), stack_item::data, extract_unsigned_integer(), fprintf_unfiltered(), gdb_stdlog, gdbarch_byte_order(), gdbarch_register_name(), INT_REGISTER_SIZE, len, stack_item::len, MAKE_THUMB_ADDR, paddress(), phex(), pop_stack_item(), push_stack_item(), regcache_cooked_write(), regcache_cooked_write_unsigned(), regnum, store_unsigned_integer(), TYPE_CODE, TYPE_CODE_FUNC, TYPE_CODE_PTR, TYPE_LENGTH, TYPE_TARGET_TYPE, user_reg_map_name_to_regnum(), value_contents(), value_type(), write_memory(), and xsnprintf().
Referenced by arm_gdbarch_init().
static int arm_record_b_bl | ( | insn_decode_record * | arm_insn_r | ) | [static] |
Definition at line 11900 of file arm-tdep.c.
References insn_decode_record_t::arm_insn, ARM_LR_REGNUM, insn_decode_record_t::arm_regs, bit, REG_ALLOC, and insn_decode_record_t::reg_rec_count.
Referenced by decode_insn().
static int arm_record_coproc | ( | insn_decode_record * | arm_insn_r | ) | [static] |
Definition at line 11922 of file arm-tdep.c.
References _, insn_decode_record_t::arm_insn, insn_decode_record_t::gdbarch, paddress(), printf_unfiltered(), and insn_decode_record_t::this_addr.
Referenced by decode_insn().
static int arm_record_coproc_data_proc | ( | insn_decode_record * | arm_insn_r | ) | [static] |
Definition at line 11934 of file arm-tdep.c.
References _, insn_decode_record_t::arm_insn, gdbarch_tdep::arm_swi_record, bits, insn_decode_record_t::gdbarch, gdbarch_tdep(), insn_decode_record_t::opcode, paddress(), printf_unfiltered(), insn_decode_record_t::regcache, and insn_decode_record_t::this_addr.
Referenced by decode_insn().
static int arm_record_data_proc_imm | ( | insn_decode_record * | arm_insn_r | ) | [static] |
Definition at line 11334 of file arm-tdep.c.
References insn_decode_record_t::arm_insn, insn_decode_record_t::arm_mems, ARM_PS_REGNUM, insn_decode_record_t::arm_regs, bits, insn_decode_record_t::decode, MEM_ALLOC, insn_decode_record_t::mem_rec_count, insn_decode_record_t::opcode, REG_ALLOC, insn_decode_record_t::reg_rec_count, and sbo_sbz().
Referenced by decode_insn().
static int arm_record_data_proc_misc_ld_str | ( | insn_decode_record * | arm_insn_r | ) | [static] |
Definition at line 11136 of file arm-tdep.c.
References _, insn_decode_record_t::arm_insn, ARM_LR_REGNUM, insn_decode_record_t::arm_mems, ARM_PS_REGNUM, ARM_RECORD_STRH, arm_record_strx(), insn_decode_record_t::arm_regs, bit, bits, insn_decode_record_t::decode, insn_decode_record_t::gdbarch, INSN_S_L_BIT_NUM, MEM_ALLOC, insn_decode_record_t::mem_rec_count, insn_decode_record_t::opcode, paddress(), printf_unfiltered(), REG_ALLOC, insn_decode_record_t::reg_rec_count, insn_decode_record_t::regcache, regcache_raw_read_unsigned(), sbo_sbz(), insn_decode_record_t::this_addr, and ULONGEST.
Referenced by decode_insn().
static int arm_record_extension_space | ( | insn_decode_record * | arm_insn_r | ) | [static] |
Definition at line 10855 of file arm-tdep.c.
References _, insn_decode_record_t::arm_insn, ARM_LR_REGNUM, insn_decode_record_t::arm_mems, ARM_PS_REGNUM, ARM_RECORD_STRD, ARM_RECORD_STRH, arm_record_strx(), insn_decode_record_t::arm_regs, bit, bits, insn_decode_record_t::cond, gdb_assert, insn_decode_record_t::gdbarch, INSN_RECORDED, MEM_ALLOC, insn_decode_record_t::mem_rec_count, insn_decode_record_t::opcode, paddress(), printf_unfiltered(), REG_ALLOC, insn_decode_record_t::reg_rec_count, insn_decode_record_t::regcache, regcache_raw_read_unsigned(), insn_decode_record_t::this_addr, and ULONGEST.
Referenced by decode_insn().
static int arm_record_ld_st_imm_offset | ( | insn_decode_record * | arm_insn_r | ) | [static] |
Definition at line 11380 of file arm-tdep.c.
References insn_decode_record_t::arm_insn, insn_decode_record_t::arm_mems, ARM_PC_REGNUM, ARM_PS_REGNUM, insn_decode_record_t::arm_regs, bit, bits, insn_decode_record_t::decode, gdb_assert_not_reached, INSN_S_L_BIT_NUM, MEM_ALLOC, insn_decode_record_t::mem_rec_count, insn_decode_record_t::opcode, REG_ALLOC, insn_decode_record_t::reg_rec_count, insn_decode_record_t::regcache, regcache_raw_read_unsigned(), and ULONGEST.
Referenced by decode_insn().
static int arm_record_ld_st_multiple | ( | insn_decode_record * | arm_insn_r | ) | [static] |
Definition at line 11754 of file arm-tdep.c.
References insn_decode_record_t::arm_insn, insn_decode_record_t::arm_mems, ARM_PS_REGNUM, insn_decode_record_t::arm_regs, bit, bits, gdb_assert_not_reached, INSN_S_L_BIT_NUM, MEM_ALLOC, insn_decode_record_t::mem_rec_count, REG_ALLOC, insn_decode_record_t::reg_rec_count, insn_decode_record_t::regcache, regcache_raw_read_unsigned(), and ULONGEST.
Referenced by decode_insn().
static int arm_record_ld_st_reg_offset | ( | insn_decode_record * | arm_insn_r | ) | [static] |
Definition at line 11491 of file arm-tdep.c.
References insn_decode_record_t::arm_insn, insn_decode_record_t::arm_mems, ARM_PS_REGNUM, insn_decode_record_t::arm_regs, bit, bits, insn_decode_record_t::decode, gdb_assert_not_reached, INSN_S_L_BIT_NUM, LONGEST, MEM_ALLOC, insn_decode_record_t::mem_rec_count, insn_decode_record_t::opcode, REG_ALLOC, insn_decode_record_t::reg_rec_count, insn_decode_record_t::regcache, regcache_raw_read_signed(), regcache_raw_read_unsigned(), and ULONGEST.
Referenced by decode_insn().
static void arm_record_special_symbol | ( | struct gdbarch * | gdbarch, |
struct objfile * | objfile, | ||
asymbol * | sym | ||
) | [static] |
Definition at line 9535 of file arm-tdep.c.
References arm_compare_mapping_symbols(), arm_objfile_data_key, gdb_assert, name, objfile::obfd, objfile::objfile_obstack, OBSTACK_CALLOC, OBSTACK_ZALLOC, arm_mapping_symbol::type, arm_mapping_symbol::value, VEC, VEC_empty, VEC_last, VEC_lower_bound, VEC_safe_insert, and VEC_safe_push.
Referenced by arm_gdbarch_init().
static int arm_record_strx | ( | insn_decode_record * | arm_insn_r, |
uint32_t * | record_buf, | ||
uint32_t * | record_buf_mem, | ||
arm_record_strx_t | str_type | ||
) | [static] |
Definition at line 10684 of file arm-tdep.c.
References insn_decode_record_t::arm_insn, ARM_PC_REGNUM, ARM_RECORD_STRD, ARM_RECORD_STRH, bits, insn_decode_record_t::decode, insn_decode_record_t::mem_rec_count, insn_decode_record_t::opcode, insn_decode_record_t::reg_rec_count, insn_decode_record_t::regcache, regcache_raw_read_unsigned(), and ULONGEST.
Referenced by arm_record_data_proc_misc_ld_str(), and arm_record_extension_space().
static void arm_register_g_packet_guesses | ( | struct gdbarch * | gdbarch | ) | [static] |
Definition at line 9800 of file arm-tdep.c.
References FP_REGISTER_SIZE, INT_REGISTER_SIZE, register_remote_g_packet_guess(), tdesc_arm_with_m, tdesc_arm_with_m_fpa_layout, tdesc_arm_with_m_vfp_d16, and VFP_REGISTER_SIZE.
Referenced by arm_gdbarch_init().
static const char* arm_register_name | ( | struct gdbarch * | gdbarch, |
int | i | ||
) | [static] |
Definition at line 9438 of file arm-tdep.c.
References arm_register_names, gdbarch_num_regs(), gdbarch_tdep::have_neon_pseudos, gdbarch_tdep::have_vfp_pseudos, and gdbarch_tdep::num_regs.
Referenced by arm_gdbarch_init().
static int arm_register_reggroup_p | ( | struct gdbarch * | gdbarch, |
int | regnum, | ||
struct reggroup * | group | ||
) | [static] |
Definition at line 9775 of file arm-tdep.c.
References all_reggroup, ARM_FPS_REGNUM, default_register_reggroup_p(), float_reggroup, restore_reggroup, and save_reggroup.
Referenced by arm_gdbarch_init().
static int arm_register_sim_regno | ( | struct gdbarch * | gdbarch, |
int | regnum | ||
) | [static] |
Definition at line 4128 of file arm-tdep.c.
References _, ARM_WC0_REGNUM, ARM_WC7_REGNUM, ARM_WCGR0_REGNUM, ARM_WCGR7_REGNUM, ARM_WR0_REGNUM, ARM_WR15_REGNUM, gdb_assert, gdbarch_num_regs(), internal_error(), NUM_FREGS, NUM_GREGS, NUM_SREGS, and regnum.
Referenced by arm_gdbarch_init().
static struct type* arm_register_type | ( | struct gdbarch * | gdbarch, |
int | regnum | ||
) | [static, read] |
Definition at line 4018 of file arm-tdep.c.
References ARM_D0_REGNUM, arm_ext_type(), ARM_F0_REGNUM, arm_neon_double_type(), arm_neon_quad_type(), ARM_PC_REGNUM, arm_register_names, ARM_SP_REGNUM, builtin_type::builtin_data_ptr, builtin_type::builtin_float, builtin_type::builtin_func_ptr, builtin_type::builtin_int0, builtin_type(), builtin_type::builtin_uint32, builtin_type::builtin_void, gdbarch_num_regs(), gdbarch_target_desc(), NUM_FREGS, tdesc_has_registers(), tdesc_register_type(), TYPE_CODE, and TYPE_CODE_FLT.
Referenced by arm_gdbarch_init().
static void arm_remote_breakpoint_from_pc | ( | struct gdbarch * | gdbarch, |
CORE_ADDR * | pcptr, | ||
int * | kindptr | ||
) | [static] |
Definition at line 8829 of file arm-tdep.c.
References arm_breakpoint_from_pc(), and arm_pc_is_thumb().
Referenced by arm_gdbarch_init().
static int arm_return_in_memory | ( | struct gdbarch * | gdbarch, |
struct type * | type | ||
) | [static] |
Definition at line 8939 of file arm-tdep.c.
References ARM_ABI_APCS, check_typedef(), CHECK_TYPEDEF, code, INT_REGISTER_SIZE, TYPE_CODE, TYPE_CODE_FLT, TYPE_CODE_STRUCT, TYPE_CODE_UNION, TYPE_FIELD_BITPOS, TYPE_FIELD_BITSIZE, TYPE_FIELD_TYPE, TYPE_LENGTH, and TYPE_NFIELDS.
Referenced by arm_return_value().
static enum return_value_convention arm_return_value | ( | struct gdbarch * | gdbarch, |
struct value * | function, | ||
struct type * | valtype, | ||
struct regcache * | regcache, | ||
gdb_byte * | readbuf, | ||
const gdb_byte * | writebuf | ||
) | [static] |
Definition at line 9134 of file arm-tdep.c.
References gdbarch_tdep::arm_abi, ARM_ABI_APCS, arm_extract_return_value(), arm_neon_quad_read(), arm_neon_quad_write(), arm_return_in_memory(), arm_store_return_value(), arm_vfp_abi_for_function(), arm_vfp_call_candidate(), arm_vfp_cprc_reg_char(), arm_vfp_cprc_unit_length(), gdbarch_tdep(), INT_REGISTER_SIZE, pcc_struct_return, regcache_cooked_read(), regcache_cooked_write(), regnum, RETURN_VALUE_REGISTER_CONVENTION, RETURN_VALUE_STRUCT_CONVENTION, gdbarch_tdep::struct_return, TYPE_CODE, TYPE_CODE_ARRAY, TYPE_CODE_COMPLEX, TYPE_CODE_STRUCT, TYPE_CODE_UNION, TYPE_LENGTH, user_reg_map_name_to_regnum(), value_type(), and xsnprintf().
Referenced by arm_gdbarch_init().
static void arm_scan_prologue | ( | struct frame_info * | this_frame, |
struct arm_prologue_cache * | cache | ||
) | [static] |
Definition at line 1908 of file arm-tdep.c.
References arm_analyze_prologue(), ARM_FP_REGNUM, ARM_FPS_REGNUM, arm_frame_is_thumb(), ARM_SP_REGNUM, gdbarch::byte_order, find_pc_partial_function(), arm_prologue_cache::framereg, arm_prologue_cache::framesize, gdbarch_addr_bits_remove(), gdbarch_byte_order(), get_frame_address_in_block(), get_frame_arch(), get_frame_pc(), get_frame_register_unsigned(), LONGEST, offset, safe_read_memory_integer(), and thumb_scan_prologue().
Referenced by arm_make_prologue_cache().
static void arm_set_abi | ( | char * | args, |
int | from_tty, | ||
struct cmd_list_element * | c | ||
) | [static] |
Definition at line 9367 of file arm-tdep.c.
References _, gdbarch_tdep::arm_abi, ARM_ABI_AUTO, arm_abi_global, ARM_ABI_LAST, arm_abi_string, arm_abi_strings, arm_update_current_architecture(), and internal_error().
Referenced by _initialize_arm_tdep().
static void arm_show_abi | ( | struct ui_file * | file, |
int | from_tty, | ||
struct cmd_list_element * | c, | ||
const char * | value | ||
) | [static] |
Definition at line 9387 of file arm-tdep.c.
References _, gdbarch_tdep::arm_abi, ARM_ABI_AUTO, arm_abi_global, arm_abi_string, arm_abi_strings, fprintf_filtered(), gdbarch_bfd_arch_info(), gdbarch_tdep(), and target_gdbarch().
Referenced by _initialize_arm_tdep().
static void arm_show_fallback_mode | ( | struct ui_file * | file, |
int | from_tty, | ||
struct cmd_list_element * | c, | ||
const char * | value | ||
) | [static] |
Definition at line 9403 of file arm-tdep.c.
References _, arm_fallback_mode_string, and fprintf_filtered().
Referenced by _initialize_arm_tdep().
static void arm_show_force_mode | ( | struct ui_file * | file, |
int | from_tty, | ||
struct cmd_list_element * | c, | ||
const char * | value | ||
) | [static] |
Definition at line 9413 of file arm-tdep.c.
References _, arm_force_mode_string, fprintf_filtered(), gdbarch_tdep(), and target_gdbarch().
Referenced by _initialize_arm_tdep().
static CORE_ADDR arm_skip_prologue | ( | struct gdbarch * | gdbarch, |
CORE_ADDR | pc | ||
) | [static] |
Definition at line 1373 of file arm-tdep.c.
References arm_analyze_prologue(), arm_pc_is_thumb(), arm_skip_stack_protector(), find_pc_partial_function(), find_pc_symtab(), gdbarch_byte_order_for_code(), symtab::producer, read_memory_unsigned_integer(), skip_prologue_using_sal(), and thumb_analyze_prologue().
Referenced by arm_gdbarch_init().
static CORE_ADDR arm_skip_stack_protector | ( | CORE_ADDR | pc, |
struct gdbarch * | gdbarch | ||
) | [static] |
Definition at line 1283 of file arm-tdep.c.
References arm_analyze_load_stack_chk_guard(), arm_pc_is_thumb(), bits, gdbarch_byte_order_for_code(), lookup_minimal_symbol_by_pc(), bound_minimal_symbol::minsym, offset, read_memory_unsigned_integer(), and SYMBOL_LINKAGE_NAME.
Referenced by arm_skip_prologue().
CORE_ADDR arm_skip_stub | ( | struct frame_info * | frame, |
CORE_ADDR | pc | ||
) |
Definition at line 9228 of file arm-tdep.c.
References find_pc_partial_function(), find_pc_section(), get_frame_register_unsigned(), lookup_minimal_symbol(), memcpy(), name, obj_section::objfile, offset, SYMBOL_VALUE_ADDRESS, and target_name.
Referenced by arm_gdbarch_init(), and arm_pe_skip_trampoline_code().
int arm_software_single_step | ( | struct frame_info * | frame | ) |
Definition at line 5234 of file arm-tdep.c.
References arm_deal_with_atomic_sequence(), arm_get_next_pc(), arm_insert_single_step_breakpoint(), get_frame_address_space(), get_frame_arch(), and get_frame_pc().
Referenced by arm_netbsd_init_abi_common(), arm_wince_init_abi(), and armobsd_init_abi().
static void arm_store_return_value | ( | struct type * | type, |
struct regcache * | regs, | ||
const gdb_byte * | valbuf | ||
) | [static] |
Definition at line 9040 of file arm-tdep.c.
References _, ARM_A1_REGNUM, ARM_F0_REGNUM, ARM_FLOAT_FPA, ARM_FLOAT_SOFT_FPA, ARM_FLOAT_SOFT_VFP, ARM_FLOAT_VFP, gdbarch::byte_order, convert_to_extended(), floatformat_from_type(), gdbarch_byte_order(), get_regcache_arch(), INT_REGISTER_SIZE, internal_error(), len, LONGEST, MAX_REGISTER_SIZE, memcpy(), regcache_cooked_write(), store_signed_integer(), TYPE_CODE, TYPE_CODE_BOOL, TYPE_CODE_CHAR, TYPE_CODE_ENUM, TYPE_CODE_FLT, TYPE_CODE_INT, TYPE_CODE_PTR, TYPE_CODE_REF, TYPE_LENGTH, and unpack_long().
Referenced by arm_return_value().
static void arm_stub_this_id | ( | struct frame_info * | this_frame, |
void ** | this_cache, | ||
struct frame_id * | this_id | ||
) | [static] |
Definition at line 2888 of file arm-tdep.c.
References arm_make_stub_cache(), frame_id_build(), get_frame_pc(), and arm_prologue_cache::prev_sp.
static int arm_stub_unwind_sniffer | ( | const struct frame_unwind * | self, |
struct frame_info * | this_frame, | ||
void ** | this_prologue_cache | ||
) | [static] |
Definition at line 2902 of file arm-tdep.c.
References dummy, get_frame_address_in_block(), get_frame_pc(), in_plt_section(), and target_read_memory().
static int arm_type_align | ( | struct type * | t | ) | [static] |
Definition at line 3390 of file arm-tdep.c.
References _, check_typedef(), internal_error(), TYPE_CODE, TYPE_CODE_ARRAY, TYPE_CODE_BOOL, TYPE_CODE_CHAR, TYPE_CODE_COMPLEX, TYPE_CODE_ENUM, TYPE_CODE_FLT, TYPE_CODE_INT, TYPE_CODE_PTR, TYPE_CODE_RANGE, TYPE_CODE_REF, TYPE_CODE_SET, TYPE_CODE_STRUCT, TYPE_CODE_UNION, TYPE_FIELD_TYPE, TYPE_LENGTH, TYPE_NFIELDS, and TYPE_TARGET_TYPE.
Referenced by arm_push_dummy_call().
static CORE_ADDR arm_unwind_pc | ( | struct gdbarch * | gdbarch, |
struct frame_info * | this_frame | ||
) | [static] |
Definition at line 3087 of file arm-tdep.c.
References arm_addr_bits_remove(), ARM_PC_REGNUM, and frame_unwind_register_unsigned().
Referenced by arm_gdbarch_init().
static CORE_ADDR arm_unwind_sp | ( | struct gdbarch * | gdbarch, |
struct frame_info * | this_frame | ||
) | [static] |
Definition at line 3095 of file arm-tdep.c.
References ARM_SP_REGNUM, and frame_unwind_register_unsigned().
Referenced by arm_gdbarch_init().
static void arm_update_current_architecture | ( | void | ) | [static] |
Definition at line 9314 of file arm-tdep.c.
References _, gdbarch_bfd_arch_info(), gdbarch_info_init(), gdbarch_update_p(), internal_error(), and target_gdbarch().
Referenced by arm_set_abi(), and set_fp_model_sfunc().
static int arm_vfp_abi_for_function | ( | struct gdbarch * | gdbarch, |
struct type * | func_type | ||
) | [static] |
Definition at line 3633 of file arm-tdep.c.
References gdbarch_tdep::arm_abi, ARM_ABI_AAPCS, ARM_FLOAT_VFP, check_typedef(), gdbarch_tdep::fp_model, gdbarch_tdep(), and TYPE_VARARGS.
Referenced by arm_push_dummy_call(), and arm_return_value().
static int arm_vfp_call_candidate | ( | struct type * | t, |
enum arm_vfp_cprc_base_type * | base_type, | ||
int * | count | ||
) | [static] |
Definition at line 3616 of file arm-tdep.c.
References arm_vfp_cprc_sub_candidate(), and VFP_CPRC_UNKNOWN.
Referenced by arm_push_dummy_call(), and arm_return_value().
static int arm_vfp_cprc_reg_char | ( | enum arm_vfp_cprc_base_type | b | ) | [static] |
Definition at line 3470 of file arm-tdep.c.
References _, internal_error(), VFP_CPRC_DOUBLE, VFP_CPRC_SINGLE, VFP_CPRC_VEC128, and VFP_CPRC_VEC64.
Referenced by arm_push_dummy_call(), and arm_return_value().
static int arm_vfp_cprc_sub_candidate | ( | struct type * | t, |
enum arm_vfp_cprc_base_type * | base_type | ||
) | [static] |
Definition at line 3502 of file arm-tdep.c.
References arm_vfp_cprc_unit_length(), check_typedef(), gdb_assert, TYPE_CODE, TYPE_CODE_ARRAY, TYPE_CODE_FLT, TYPE_CODE_STRUCT, TYPE_CODE_UNION, TYPE_FIELD_TYPE, TYPE_LENGTH, TYPE_NFIELDS, TYPE_TARGET_TYPE, VFP_CPRC_DOUBLE, VFP_CPRC_SINGLE, and VFP_CPRC_UNKNOWN.
Referenced by arm_vfp_call_candidate().
static unsigned arm_vfp_cprc_unit_length | ( | enum arm_vfp_cprc_base_type | b | ) | [static] |
Definition at line 3448 of file arm-tdep.c.
References _, internal_error(), VFP_CPRC_DOUBLE, VFP_CPRC_SINGLE, VFP_CPRC_VEC128, and VFP_CPRC_VEC64.
Referenced by arm_push_dummy_call(), arm_return_value(), and arm_vfp_cprc_sub_candidate().
static void arm_write_pc | ( | struct regcache * | regcache, |
CORE_ADDR | pc | ||
) | [static] |
Definition at line 9584 of file arm-tdep.c.
References arm_apcs_32, arm_pc_is_thumb(), ARM_PC_REGNUM, ARM_PS_REGNUM, arm_psr_thumb_bit(), get_regcache_arch(), regcache_cooked_read_unsigned(), regcache_cooked_write_unsigned(), and ULONGEST.
Referenced by arm_gdbarch_init().
Definition at line 4287 of file arm-tdep.c.
Referenced by arm_copy_block_xfer(), arm_get_next_pc_raw(), cleanup_block_load_pc(), cleanup_block_store_pc(), thumb2_copy_block_xfer(), thumb_copy_pop_pc_16bit(), and thumb_get_next_pc_raw().
static void branch_write_pc | ( | struct regcache * | regs, |
struct displaced_step_closure * | dsc, | ||
ULONGEST | val | ||
) | [static] |
Definition at line 5515 of file arm-tdep.c.
References ARM_PC_REGNUM, displaced_step_closure::is_thumb, regcache_cooked_write_unsigned(), and ULONGEST.
Referenced by alu_write_pc(), displaced_write_reg(), and load_write_pc().
static void bx_write_pc | ( | struct regcache * | regs, |
ULONGEST | val | ||
) | [static] |
Definition at line 5531 of file arm-tdep.c.
References _, ARM_PC_REGNUM, ARM_PS_REGNUM, arm_psr_thumb_bit(), get_regcache_arch(), cleanup_check::ps, regcache_cooked_read_unsigned(), regcache_cooked_write_unsigned(), ULONGEST, and warning().
Referenced by alu_write_pc(), displaced_write_reg(), and load_write_pc().
static void cleanup_alu_imm | ( | struct gdbarch * | gdbarch, |
struct regcache * | regs, | ||
struct displaced_step_closure * | dsc | ||
) | [static] |
Definition at line 6206 of file arm-tdep.c.
References ALU_WRITE_PC, CANNOT_WRITE_PC, displaced_read_reg(), displaced_write_reg(), displaced_step_closure::rd, displaced_step_closure::tmp, and ULONGEST.
Referenced by arm_copy_alu_imm(), and thumb2_copy_alu_imm().
static void cleanup_alu_reg | ( | struct gdbarch * | gdbarch, |
struct regcache * | regs, | ||
struct displaced_step_closure * | dsc | ||
) | [static] |
Definition at line 6318 of file arm-tdep.c.
References ALU_WRITE_PC, CANNOT_WRITE_PC, displaced_read_reg(), displaced_write_reg(), displaced_step_closure::rd, displaced_step_closure::tmp, and ULONGEST.
Referenced by install_alu_reg().
static void cleanup_alu_shifted_reg | ( | struct gdbarch * | gdbarch, |
struct regcache * | regs, | ||
struct displaced_step_closure * | dsc | ||
) | [static] |
Definition at line 6417 of file arm-tdep.c.
References ALU_WRITE_PC, CANNOT_WRITE_PC, displaced_read_reg(), displaced_write_reg(), displaced_step_closure::rd, displaced_step_closure::tmp, and ULONGEST.
Referenced by install_alu_shifted_reg().
static void cleanup_block_load_all | ( | struct gdbarch * | gdbarch, |
struct regcache * | regs, | ||
struct displaced_step_closure * | dsc | ||
) | [static] |
Definition at line 6874 of file arm-tdep.c.
References _, ARM_PC_REGNUM, ARM_PS_REGNUM, displaced_step_closure::block, CANNOT_WRITE_PC, condition_true(), debug_displaced, displaced_read_reg(), displaced_write_reg(), error(), fprintf_unfiltered(), gdb_assert, gdb_stdlog, gdbarch_byte_order(), LOAD_WRITE_PC, read_memory_unsigned_integer(), exsummary::status, and displaced_step_closure::u.
Referenced by arm_copy_block_xfer().
static void cleanup_block_load_pc | ( | struct gdbarch * | gdbarch, |
struct regcache * | regs, | ||
struct displaced_step_closure * | dsc | ||
) | [static] |
Definition at line 6985 of file arm-tdep.c.
References _, ARM_PC_REGNUM, ARM_PS_REGNUM, bitcount(), displaced_step_closure::block, CANNOT_WRITE_PC, condition_true(), debug_displaced, displaced_read_reg(), displaced_write_reg(), fprintf_unfiltered(), gdb_assert, gdb_stdlog, LOAD_WRITE_PC, read_reg(), exsummary::status, displaced_step_closure::tmp, displaced_step_closure::u, and ULONGEST.
Referenced by arm_copy_block_xfer(), thumb2_copy_block_xfer(), and thumb_copy_pop_pc_16bit().
static void cleanup_block_store_pc | ( | struct gdbarch * | gdbarch, |
struct regcache * | regs, | ||
struct displaced_step_closure * | dsc | ||
) | [static] |
Definition at line 6935 of file arm-tdep.c.
References ARM_PS_REGNUM, bitcount(), displaced_step_closure::block, condition_true(), debug_displaced, displaced_read_reg(), fprintf_unfiltered(), gdb_stdlog, gdbarch_byte_order(), displaced_step_closure::insn_addr, offset, read_memory_unsigned_integer(), displaced_step_closure::scratch_base, exsummary::status, displaced_step_closure::u, and write_memory_unsigned_integer().
Referenced by arm_copy_block_xfer(), and thumb2_copy_block_xfer().
static void cleanup_branch | ( | struct gdbarch * | gdbarch, |
struct regcache * | regs, | ||
struct displaced_step_closure * | dsc | ||
) | [static] |
Definition at line 5956 of file arm-tdep.c.
References ARM_LR_REGNUM, ARM_PC_REGNUM, ARM_PS_REGNUM, displaced_step_closure::branch, BRANCH_WRITE_PC, BX_WRITE_PC, CANNOT_WRITE_PC, condition_true(), displaced_read_reg(), displaced_write_reg(), displaced_step_closure::insn_addr, displaced_step_closure::insn_size, displaced_step_closure::is_thumb, exsummary::status, displaced_step_closure::u, and ULONGEST.
Referenced by install_b_bl_blx(), install_bx_blx_reg(), thumb2_copy_table_branch(), thumb_copy_b(), and thumb_copy_cbnz_cbz().
static void cleanup_copro_load_store | ( | struct gdbarch * | gdbarch, |
struct regcache * | regs, | ||
struct displaced_step_closure * | dsc | ||
) | [static] |
Definition at line 5866 of file arm-tdep.c.
References CANNOT_WRITE_PC, displaced_read_reg(), displaced_write_reg(), displaced_step_closure::ldst, LOAD_WRITE_PC, displaced_step_closure::tmp, displaced_step_closure::u, and ULONGEST.
Referenced by install_copro_load_store().
static void cleanup_load | ( | struct gdbarch * | gdbarch, |
struct regcache * | regs, | ||
struct displaced_step_closure * | dsc | ||
) | [static] |
Definition at line 6503 of file arm-tdep.c.
References CANNOT_WRITE_PC, displaced_read_reg(), displaced_write_reg(), displaced_step_closure::ldst, LOAD_WRITE_PC, displaced_step_closure::rd, displaced_step_closure::tmp, displaced_step_closure::u, and ULONGEST.
Referenced by arm_copy_extra_ld_st(), arm_copy_ldr_str_ldrb_strb(), install_load_store(), thumb2_copy_load_literal(), and thumb_copy_16bit_ldr_literal().
static void cleanup_pop_pc_16bit_all | ( | struct gdbarch * | gdbarch, |
struct regcache * | regs, | ||
struct displaced_step_closure * | dsc | ||
) | [static] |
Definition at line 8125 of file arm-tdep.c.
References ARM_PC_REGNUM, BX_WRITE_PC, CANNOT_WRITE_PC, displaced_read_reg(), displaced_write_reg(), and displaced_step_closure::tmp.
Referenced by thumb_copy_pop_pc_16bit().
static void cleanup_preload | ( | struct gdbarch * | gdbarch, |
struct regcache * | regs, | ||
struct displaced_step_closure * | dsc | ||
) | [static] |
Definition at line 5720 of file arm-tdep.c.
References CANNOT_WRITE_PC, displaced_write_reg(), displaced_step_closure::preload, displaced_step_closure::tmp, and displaced_step_closure::u.
Referenced by install_preload(), install_preload_reg(), and thumb2_copy_preload().
static void cleanup_store | ( | struct gdbarch * | gdbarch, |
struct regcache * | regs, | ||
struct displaced_step_closure * | dsc | ||
) | [static] |
Definition at line 6532 of file arm-tdep.c.
References CANNOT_WRITE_PC, displaced_read_reg(), displaced_write_reg(), displaced_step_closure::ldst, displaced_step_closure::tmp, displaced_step_closure::u, and ULONGEST.
Referenced by arm_copy_extra_ld_st(), arm_copy_ldr_str_ldrb_strb(), and install_load_store().
static void cleanup_svc | ( | struct gdbarch * | gdbarch, |
struct regcache * | regs, | ||
struct displaced_step_closure * | dsc | ||
) | [static] |
Definition at line 7264 of file arm-tdep.c.
References ARM_PC_REGNUM, BRANCH_WRITE_PC, debug_displaced, displaced_write_reg(), fprintf_unfiltered(), gdb_stdlog, displaced_step_closure::insn_addr, and displaced_step_closure::insn_size.
Referenced by install_svc().
static int coff_sym_is_thumb | ( | int | val | ) | [static] |
Definition at line 9493 of file arm-tdep.c.
Referenced by arm_coff_make_msymbol_special().
static int condition_true | ( | unsigned long | cond, |
unsigned long | status_reg | ||
) | [static] |
Definition at line 4191 of file arm-tdep.c.
References FLAG_C, FLAG_N, FLAG_V, FLAG_Z, INST_AL, INST_CC, INST_CS, INST_EQ, INST_GE, INST_GT, INST_HI, INST_LE, INST_LS, INST_LT, INST_MI, INST_NE, INST_NV, INST_PL, INST_VC, and INST_VS.
Referenced by arm_get_next_pc_raw(), cleanup_block_load_all(), cleanup_block_load_pc(), cleanup_block_store_pc(), cleanup_branch(), and thumb_get_next_pc_raw().
static void convert_from_extended | ( | const struct floatformat * | fmt, |
const void * | ptr, | ||
void * | dbl, | ||
int | endianess | ||
) | [static] |
Definition at line 4163 of file arm-tdep.c.
References floatformat_from_doublest(), and floatformat_to_doublest().
Referenced by arm_extract_return_value().
static void convert_to_extended | ( | const struct floatformat * | fmt, |
void * | dbl, | ||
const void * | ptr, | ||
int | endianess | ||
) | [static] |
Definition at line 4177 of file arm-tdep.c.
References floatformat_from_doublest(), and floatformat_to_doublest().
Referenced by arm_store_return_value().
static void deallocate_reg_mem | ( | insn_decode_record * | record | ) | [static] |
Definition at line 12525 of file arm-tdep.c.
References insn_decode_record_t::arm_mems, insn_decode_record_t::arm_regs, and xfree().
Referenced by arm_process_record().
static int decode_insn | ( | insn_decode_record * | arm_record, |
record_type_t | record_type, | ||
uint32_t | insn_size | ||
) | [static] |
Definition at line 12442 of file arm-tdep.c.
References _, insn_decode_record_t::arm_insn, ARM_RECORD, arm_record_b_bl(), arm_record_coproc(), arm_record_coproc_data_proc(), arm_record_data_proc_imm(), arm_record_data_proc_misc_ld_str(), arm_record_extension_space(), arm_record_ld_st_imm_offset(), arm_record_ld_st_multiple(), arm_record_ld_st_reg_offset(), bits, insn_decode_record_t::cond, extract_arm_insn(), gdb_assert_not_reached, insn_decode_record_t::gdbarch, INSN_RECORDED, paddress(), printf_unfiltered(), record_debug, insn_decode_record_t::this_addr, THUMB2_RECORD, THUMB_RECORD, thumb_record_add_sub_cmp_mov(), thumb_record_branch(), thumb_record_ld_st_imm_offset(), thumb_record_ld_st_reg_offset(), thumb_record_ld_st_stack(), thumb_record_ldm_stm_swi(), and thumb_record_misc().
Referenced by arm_process_record().
static int decode_thumb_32bit_ld_mem_hints | ( | struct gdbarch * | gdbarch, |
uint16_t | insn1, | ||
uint16_t | insn2, | ||
struct regcache * | regs, | ||
struct displaced_step_closure * | dsc | ||
) | [static] |
Definition at line 8318 of file arm-tdep.c.
References bit, bits, thumb2_copy_load_literal(), thumb2_copy_load_reg_imm(), thumb2_copy_preload(), thumb_32bit_copy_undef(), and thumb_copy_unmodified_32bit().
Referenced by thumb_process_displaced_32bit_insn().
static int displaced_in_arm_mode | ( | struct regcache * | regs | ) | [static] |
Definition at line 5502 of file arm-tdep.c.
References ARM_PS_REGNUM, arm_psr_thumb_bit(), get_regcache_arch(), cleanup_check::ps, regcache_cooked_read_unsigned(), and ULONGEST.
Referenced by arm_process_displaced_insn().
ULONGEST displaced_read_reg | ( | struct regcache * | regs, |
struct displaced_step_closure * | dsc, | ||
int | regno | ||
) |
Definition at line 5467 of file arm-tdep.c.
References ARM_PC_REGNUM, debug_displaced, fprintf_unfiltered(), from, gdb_stdlog, displaced_step_closure::insn_addr, displaced_step_closure::is_thumb, regcache_cooked_read_unsigned(), and ULONGEST.
Referenced by arm_catch_kernel_helper_return(), arm_copy_alu_imm(), arm_copy_block_xfer(), arm_copy_extra_ld_st(), arm_linux_copy_svc(), cleanup_alu_imm(), cleanup_alu_reg(), cleanup_alu_shifted_reg(), cleanup_block_load_all(), cleanup_block_load_pc(), cleanup_block_store_pc(), cleanup_branch(), cleanup_copro_load_store(), cleanup_load(), cleanup_pop_pc_16bit_all(), cleanup_store(), install_alu_reg(), install_alu_shifted_reg(), install_bx_blx_reg(), install_copro_load_store(), install_load_store(), install_pc_relative(), install_preload(), install_preload_reg(), thumb2_copy_alu_imm(), thumb2_copy_block_xfer(), thumb2_copy_load_literal(), thumb2_copy_preload(), thumb2_copy_table_branch(), thumb_copy_16bit_ldr_literal(), thumb_copy_cbnz_cbz(), and thumb_copy_pop_pc_16bit().
void displaced_write_reg | ( | struct regcache * | regs, |
struct displaced_step_closure * | dsc, | ||
int | regno, | ||
ULONGEST | val, | ||
enum pc_write_style | write_pc | ||
) |
Definition at line 5587 of file arm-tdep.c.
References _, ALU_WRITE_PC, alu_write_pc(), ARM_PC_REGNUM, BRANCH_WRITE_PC, branch_write_pc(), BX_WRITE_PC, bx_write_pc(), CANNOT_WRITE_PC, debug_displaced, fprintf_unfiltered(), gdb_stdlog, internal_error(), LOAD_WRITE_PC, load_write_pc(), regcache_cooked_write_unsigned(), warning(), and displaced_step_closure::wrote_to_pc.
Referenced by arm_catch_kernel_helper_return(), arm_copy_alu_imm(), arm_copy_extra_ld_st(), arm_linux_cleanup_svc(), cleanup_alu_imm(), cleanup_alu_reg(), cleanup_alu_shifted_reg(), cleanup_block_load_all(), cleanup_block_load_pc(), cleanup_branch(), cleanup_copro_load_store(), cleanup_kernel_helper_return(), cleanup_load(), cleanup_pop_pc_16bit_all(), cleanup_preload(), cleanup_store(), cleanup_svc(), install_alu_reg(), install_alu_shifted_reg(), install_copro_load_store(), install_load_store(), install_pc_relative(), install_preload(), install_preload_reg(), thumb2_copy_alu_imm(), thumb2_copy_load_literal(), thumb2_copy_preload(), and thumb_copy_16bit_ldr_literal().
static gdb_byte* extend_buffer_earlier | ( | gdb_byte * | buf, |
CORE_ADDR | endaddr, | ||
int | old_len, | ||
int | new_len | ||
) | [static] |
Definition at line 5254 of file arm-tdep.c.
References memcpy(), target_read_memory(), xfree(), and xmalloc().
Referenced by arm_adjust_breakpoint_address().
static int extract_arm_insn | ( | insn_decode_record * | insn_record, |
uint32_t | insn_size | ||
) | [static] |
Definition at line 12422 of file arm-tdep.c.
References insn_decode_record_t::arm_insn, extract_unsigned_integer(), insn_decode_record_t::gdbarch, gdbarch_byte_order(), memset(), target_read_memory(), and insn_decode_record_t::this_addr.
Referenced by arm_process_record(), and decode_insn().
static int gdb_print_insn_arm | ( | bfd_vma | memaddr, |
disassemble_info * | info | ||
) | [static] |
Definition at line 8703 of file arm-tdep.c.
References arm_pc_is_thumb(), and UNMAKE_THUMB_ADDR.
Referenced by arm_gdbarch_init().
static int insn_references_pc | ( | uint32_t | insn, |
uint32_t | bitmask | ||
) | [static] |
Definition at line 5641 of file arm-tdep.c.
Referenced by arm_copy_alu_imm(), arm_copy_alu_reg(), arm_copy_alu_shifted_reg(), arm_copy_copro_load_store(), arm_copy_extra_ld_st(), arm_copy_ldr_str_ldrb_strb(), arm_copy_preload(), and arm_copy_preload_reg().
static void install_alu_reg | ( | struct gdbarch * | gdbarch, |
struct regcache * | regs, | ||
struct displaced_step_closure * | dsc, | ||
unsigned int | rd, | ||
unsigned int | rn, | ||
unsigned int | rm | ||
) | [static] |
Definition at line 6333 of file arm-tdep.c.
References CANNOT_WRITE_PC, displaced_step_closure::cleanup, cleanup_alu_reg(), displaced_read_reg(), displaced_write_reg(), displaced_step_closure::rd, displaced_step_closure::tmp, and ULONGEST.
Referenced by arm_copy_alu_reg(), and thumb_copy_alu_reg().
static void install_alu_shifted_reg | ( | struct gdbarch * | gdbarch, |
struct regcache * | regs, | ||
struct displaced_step_closure * | dsc, | ||
unsigned int | rd, | ||
unsigned int | rn, | ||
unsigned int | rm, | ||
unsigned | rs | ||
) | [static] |
Definition at line 6431 of file arm-tdep.c.
References CANNOT_WRITE_PC, displaced_step_closure::cleanup, cleanup_alu_shifted_reg(), displaced_read_reg(), displaced_write_reg(), displaced_step_closure::rd, displaced_step_closure::tmp, and ULONGEST.
Referenced by arm_copy_alu_shifted_reg().
static void install_b_bl_blx | ( | struct gdbarch * | gdbarch, |
struct regcache * | regs, | ||
struct displaced_step_closure * | dsc, | ||
unsigned int | cond, | ||
int | exchange, | ||
int | link, | ||
long | offset | ||
) | [static] |
Definition at line 5987 of file arm-tdep.c.
References displaced_step_closure::branch, displaced_step_closure::cleanup, cleanup_branch(), displaced_step_closure::insn_addr, displaced_step_closure::is_thumb, offset, and displaced_step_closure::u.
Referenced by arm_copy_b_bl_blx(), and thumb2_copy_b_bl_blx().
static void install_bx_blx_reg | ( | struct gdbarch * | gdbarch, |
struct regcache * | regs, | ||
struct displaced_step_closure * | dsc, | ||
int | link, | ||
unsigned int | cond, | ||
unsigned int | rm | ||
) | [static] |
Definition at line 6141 of file arm-tdep.c.
References displaced_step_closure::branch, displaced_step_closure::cleanup, cleanup_branch(), displaced_read_reg(), and displaced_step_closure::u.
Referenced by arm_copy_bx_blx_reg(), and thumb_copy_bx_blx_reg().
static void install_copro_load_store | ( | struct gdbarch * | gdbarch, |
struct regcache * | regs, | ||
struct displaced_step_closure * | dsc, | ||
int | writeback, | ||
unsigned int | rn | ||
) | [static] |
Definition at line 5879 of file arm-tdep.c.
References CANNOT_WRITE_PC, displaced_step_closure::cleanup, cleanup_copro_load_store(), displaced_read_reg(), displaced_write_reg(), displaced_step_closure::ldst, displaced_step_closure::tmp, displaced_step_closure::u, and ULONGEST.
Referenced by arm_copy_copro_load_store(), and thumb2_copy_copro_load_store().
static void install_load_store | ( | struct gdbarch * | gdbarch, |
struct regcache * | regs, | ||
struct displaced_step_closure * | dsc, | ||
int | load, | ||
int | immed, | ||
int | writeback, | ||
int | size, | ||
int | usermode, | ||
int | rt, | ||
int | rm, | ||
int | rn | ||
) | [static] |
Definition at line 6629 of file arm-tdep.c.
References CANNOT_WRITE_PC, displaced_step_closure::cleanup, cleanup_load(), cleanup_store(), displaced_read_reg(), displaced_write_reg(), displaced_step_closure::ldst, displaced_step_closure::rd, size, displaced_step_closure::tmp, displaced_step_closure::u, and ULONGEST.
Referenced by arm_copy_ldr_str_ldrb_strb(), and thumb2_copy_load_reg_imm().
static void install_pc_relative | ( | struct gdbarch * | gdbarch, |
struct regcache * | regs, | ||
struct displaced_step_closure * | dsc, | ||
int | rd | ||
) | [static] |
Definition at line 7907 of file arm-tdep.c.
References ARM_PC_REGNUM, CANNOT_WRITE_PC, displaced_read_reg(), and displaced_write_reg().
Referenced by thumb_copy_pc_relative_16bit(), and thumb_copy_pc_relative_32bit().
static void install_preload | ( | struct gdbarch * | gdbarch, |
struct regcache * | regs, | ||
struct displaced_step_closure * | dsc, | ||
unsigned int | rn | ||
) | [static] |
Definition at line 5729 of file arm-tdep.c.
References CANNOT_WRITE_PC, displaced_step_closure::cleanup, cleanup_preload(), displaced_read_reg(), displaced_write_reg(), displaced_step_closure::preload, displaced_step_closure::tmp, displaced_step_closure::u, and ULONGEST.
Referenced by arm_copy_preload().
static void install_preload_reg | ( | struct gdbarch * | gdbarch, |
struct regcache * | regs, | ||
struct displaced_step_closure * | dsc, | ||
unsigned int | rn, | ||
unsigned int | rm | ||
) | [static] |
Definition at line 5818 of file arm-tdep.c.
References CANNOT_WRITE_PC, displaced_step_closure::cleanup, cleanup_preload(), displaced_read_reg(), displaced_write_reg(), displaced_step_closure::preload, displaced_step_closure::tmp, displaced_step_closure::u, and ULONGEST.
Referenced by arm_copy_preload_reg().
static int install_svc | ( | struct gdbarch * | gdbarch, |
struct regcache * | regs, | ||
struct displaced_step_closure * | dsc | ||
) | [static] |
Definition at line 7280 of file arm-tdep.c.
References displaced_step_closure::cleanup, cleanup_svc(), displaced_step_closure::svc, displaced_step_closure::u, and displaced_step_closure::wrote_to_pc.
Referenced by arm_copy_svc(), and thumb_copy_svc().
static void load_write_pc | ( | struct regcache * | regs, |
struct displaced_step_closure * | dsc, | ||
ULONGEST | val | ||
) | [static] |
Definition at line 5561 of file arm-tdep.c.
References branch_write_pc(), bx_write_pc(), and DISPLACED_STEPPING_ARCH_VERSION.
Referenced by displaced_write_reg().
static struct stack_item* pop_stack_item | ( | struct stack_item * | si | ) | [static, read] |
Definition at line 3377 of file arm-tdep.c.
References stack_item::data, stack_item::prev, and xfree().
Referenced by arm_push_dummy_call().
static void print_fpu_flags | ( | int | flags | ) | [static] |
Definition at line 3892 of file arm-tdep.c.
Referenced by arm_print_float_info().
static struct stack_item* push_stack_item | ( | struct stack_item * | prev, |
const void * | contents, | ||
int | len | ||
) | [static, read] |
Definition at line 3365 of file arm-tdep.c.
References stack_item::data, len, stack_item::len, memcpy(), stack_item::prev, and xmalloc().
Referenced by arm_push_dummy_call().
Definition at line 10648 of file arm-tdep.c.
References bits.
Referenced by arm_record_data_proc_imm(), and arm_record_data_proc_misc_ld_str().
static void set_arm_command | ( | char * | args, |
int | from_tty | ||
) | [static] |
Definition at line 9300 of file arm-tdep.c.
References _, all_commands, gdb_stdout, help_list(), and printf_unfiltered().
Referenced by _initialize_arm_tdep().
static void set_disassembly_style | ( | void | ) | [static] |
Definition at line 9475 of file arm-tdep.c.
References disassembly_style, gdb_assert, num_disassembly_options, and valid_disassembly_styles.
Referenced by set_disassembly_style_sfunc().
static void set_disassembly_style_sfunc | ( | char * | args, |
int | from_tty, | ||
struct cmd_list_element * | c | ||
) | [static] |
Definition at line 9430 of file arm-tdep.c.
References set_disassembly_style().
Referenced by _initialize_arm_tdep().
static void set_fp_model_sfunc | ( | char * | args, |
int | from_tty, | ||
struct cmd_list_element * | c | ||
) | [static] |
Definition at line 9330 of file arm-tdep.c.
References _, ARM_FLOAT_AUTO, ARM_FLOAT_LAST, arm_fp_model, arm_update_current_architecture(), current_fp_model, fp_model_strings, and internal_error().
Referenced by _initialize_arm_tdep().
static unsigned long shifted_reg_val | ( | struct frame_info * | frame, |
unsigned long | inst, | ||
int | carry, | ||
unsigned long | pc_val, | ||
unsigned long | status_reg | ||
) | [static] |
Definition at line 4235 of file arm-tdep.c.
References ARM_PC_REGNUM, bit, bits, get_frame_register_unsigned(), L, and shifttype.
Referenced by arm_get_next_pc_raw().
static void show_arm_command | ( | char * | args, |
int | from_tty | ||
) | [static] |
Definition at line 9308 of file arm-tdep.c.
References cmd_show_list().
Referenced by _initialize_arm_tdep().
static void show_fp_model | ( | struct ui_file * | file, |
int | from_tty, | ||
struct cmd_list_element * | c, | ||
const char * | value | ||
) | [static] |
Definition at line 9350 of file arm-tdep.c.
References _, ARM_FLOAT_AUTO, arm_fp_model, gdbarch_tdep::fp_model, fp_model_strings, fprintf_filtered(), gdbarch_bfd_arch_info(), gdbarch_tdep(), and target_gdbarch().
Referenced by _initialize_arm_tdep().
static int skip_prologue_function | ( | struct gdbarch * | gdbarch, |
CORE_ADDR | pc, | ||
int | is_thumb | ||
) | [static] |
Definition at line 468 of file arm-tdep.c.
References gdbarch_byte_order_for_code(), lookup_minimal_symbol_by_pc(), name, read_memory_unsigned_integer(), strstr(), SYMBOL_LINKAGE_NAME, and SYMBOL_VALUE_ADDRESS.
Referenced by arm_analyze_prologue(), and thumb_analyze_prologue().
static int thumb2_copy_alu_imm | ( | struct gdbarch * | gdbarch, |
uint16_t | insn1, | ||
uint16_t | insn2, | ||
struct regcache * | regs, | ||
struct displaced_step_closure * | dsc | ||
) | [static] |
Definition at line 6264 of file arm-tdep.c.
References ARM_PC_REGNUM, bits, CANNOT_WRITE_PC, displaced_step_closure::cleanup, cleanup_alu_imm(), debug_displaced, displaced_read_reg(), displaced_write_reg(), fprintf_unfiltered(), gdb_assert, gdb_stdlog, displaced_step_closure::modinsn, displaced_step_closure::numinsns, displaced_step_closure::rd, thumb_copy_unmodified_32bit(), displaced_step_closure::tmp, and ULONGEST.
Referenced by thumb2_decode_dp_shift_reg().
static int thumb2_copy_b_bl_blx | ( | struct gdbarch * | gdbarch, |
uint16_t | insn1, | ||
uint16_t | insn2, | ||
struct regcache * | regs, | ||
struct displaced_step_closure * | dsc | ||
) | [static] |
Definition at line 6045 of file arm-tdep.c.
References bit, bits, debug_displaced, fprintf_unfiltered(), gdb_stdlog, INST_AL, install_b_bl_blx(), displaced_step_closure::modinsn, offset, sbits, and THUMB_NOP.
Referenced by thumb_process_displaced_32bit_insn().
static int thumb2_copy_block_xfer | ( | struct gdbarch * | gdbarch, |
uint16_t | insn1, | ||
uint16_t | insn2, | ||
struct regcache * | regs, | ||
struct displaced_step_closure * | dsc | ||
) | [static] |
Definition at line 7179 of file arm-tdep.c.
References _, ARM_PC_REGNUM, bit, bitcount(), bits, displaced_step_closure::block, displaced_step_closure::cleanup, cleanup_block_load_pc(), cleanup_block_store_pc(), debug_displaced, displaced_read_reg(), fprintf_unfiltered(), from, gdb_assert, gdb_stdlog, INST_AL, load, displaced_step_closure::modinsn, displaced_step_closure::numinsns, thumb_copy_unmodified_32bit(), displaced_step_closure::tmp, to, displaced_step_closure::u, and warning().
Referenced by thumb_process_displaced_32bit_insn().
static int thumb2_copy_copro_load_store | ( | struct gdbarch * | gdbarch, |
uint16_t | insn1, | ||
uint16_t | insn2, | ||
struct regcache * | regs, | ||
struct displaced_step_closure * | dsc | ||
) | [static] |
Definition at line 5927 of file arm-tdep.c.
References ARM_PC_REGNUM, bits, debug_displaced, fprintf_unfiltered(), gdb_stdlog, install_copro_load_store(), displaced_step_closure::modinsn, displaced_step_closure::numinsns, and thumb_copy_unmodified_32bit().
Referenced by thumb2_decode_ext_reg_ld_st(), and thumb2_decode_svc_copro().
static int thumb2_copy_load_literal | ( | struct gdbarch * | gdbarch, |
uint16_t | insn1, | ||
uint16_t | insn2, | ||
struct regcache * | regs, | ||
struct displaced_step_closure * | dsc, | ||
int | size | ||
) | [static] |
Definition at line 6684 of file arm-tdep.c.
References ARM_PC_REGNUM, bit, bits, CANNOT_WRITE_PC, displaced_step_closure::cleanup, cleanup_load(), debug_displaced, displaced_read_reg(), displaced_write_reg(), fprintf_unfiltered(), gdb_stdlog, displaced_step_closure::insn_addr, displaced_step_closure::ldst, displaced_step_closure::modinsn, displaced_step_closure::numinsns, displaced_step_closure::rd, size, displaced_step_closure::tmp, displaced_step_closure::u, and ULONGEST.
Referenced by decode_thumb_32bit_ld_mem_hints().
static int thumb2_copy_load_reg_imm | ( | struct gdbarch * | gdbarch, |
uint16_t | insn1, | ||
uint16_t | insn2, | ||
struct regcache * | regs, | ||
struct displaced_step_closure * | dsc, | ||
int | writeback, | ||
int | immed | ||
) | [static] |
Definition at line 6740 of file arm-tdep.c.
References ARM_PC_REGNUM, bits, debug_displaced, fprintf_unfiltered(), gdb_stdlog, install_load_store(), displaced_step_closure::ldst, displaced_step_closure::modinsn, displaced_step_closure::numinsns, thumb_copy_unmodified_32bit(), and displaced_step_closure::u.
Referenced by decode_thumb_32bit_ld_mem_hints().
static int thumb2_copy_preload | ( | struct gdbarch * | gdbarch, |
uint16_t | insn1, | ||
uint16_t | insn2, | ||
struct regcache * | regs, | ||
struct displaced_step_closure * | dsc | ||
) | [static] |
Definition at line 5768 of file arm-tdep.c.
References ARM_PC_REGNUM, bit, bits, CANNOT_WRITE_PC, displaced_step_closure::cleanup, cleanup_preload(), debug_displaced, displaced_read_reg(), displaced_write_reg(), fprintf_unfiltered(), gdb_stdlog, displaced_step_closure::insn_addr, displaced_step_closure::modinsn, displaced_step_closure::numinsns, displaced_step_closure::preload, thumb_copy_unmodified_32bit(), displaced_step_closure::tmp, displaced_step_closure::u, and ULONGEST.
Referenced by decode_thumb_32bit_ld_mem_hints().
static int thumb2_copy_table_branch | ( | struct gdbarch * | gdbarch, |
uint16_t | insn1, | ||
uint16_t | insn2, | ||
struct regcache * | regs, | ||
struct displaced_step_closure * | dsc | ||
) | [static] |
Definition at line 8081 of file arm-tdep.c.
References bit, bits, displaced_step_closure::branch, displaced_step_closure::cleanup, cleanup_branch(), debug_displaced, displaced_read_reg(), extract_unsigned_integer(), fprintf_unfiltered(), gdb_stdlog, gdbarch_byte_order(), displaced_step_closure::insn_addr, INST_AL, target_read_memory(), displaced_step_closure::u, and ULONGEST.
Referenced by thumb_process_displaced_32bit_insn().
static int thumb2_decode_dp_shift_reg | ( | struct gdbarch * | gdbarch, |
uint16_t | insn1, | ||
uint16_t | insn2, | ||
struct regcache * | regs, | ||
struct displaced_step_closure * | dsc | ||
) | [static] |
Definition at line 7761 of file arm-tdep.c.
References bits, thumb2_copy_alu_imm(), and thumb_copy_unmodified_32bit().
Referenced by thumb_process_displaced_32bit_insn().
static int thumb2_decode_ext_reg_ld_st | ( | struct gdbarch * | gdbarch, |
uint16_t | insn1, | ||
uint16_t | insn2, | ||
struct regcache * | regs, | ||
struct displaced_step_closure * | dsc | ||
) | [static] |
Definition at line 7782 of file arm-tdep.c.
References bits, thumb2_copy_copro_load_store(), and thumb_copy_unmodified_32bit().
Referenced by thumb2_decode_svc_copro().
static int thumb2_decode_svc_copro | ( | struct gdbarch * | gdbarch, |
uint16_t | insn1, | ||
uint16_t | insn2, | ||
struct regcache * | regs, | ||
struct displaced_step_closure * | dsc | ||
) | [static] |
Definition at line 7864 of file arm-tdep.c.
References bit, bits, thumb2_copy_copro_load_store(), thumb2_decode_ext_reg_ld_st(), thumb_32bit_copy_undef(), and thumb_copy_unmodified_32bit().
Referenced by thumb_process_displaced_32bit_insn().
static int thumb2_instruction_changes_pc | ( | unsigned short | inst1, |
unsigned short | inst2 | ||
) | [static] |
Definition at line 596 of file arm-tdep.c.
Referenced by thumb_analyze_prologue(), and thumb_deal_with_atomic_sequence_raw().
static int thumb_32bit_copy_undef | ( | struct gdbarch * | gdbarch, |
uint16_t | insn1, | ||
uint16_t | insn2, | ||
struct displaced_step_closure * | dsc | ||
) | [static] |
Definition at line 7346 of file arm-tdep.c.
References debug_displaced, fprintf_unfiltered(), gdb_stdlog, displaced_step_closure::modinsn, and displaced_step_closure::numinsns.
Referenced by decode_thumb_32bit_ld_mem_hints(), and thumb2_decode_svc_copro().
static int thumb_advance_itstate | ( | unsigned int | itstate | ) | [static] |
Definition at line 4308 of file arm-tdep.c.
Referenced by thumb_get_next_pc_raw().
static CORE_ADDR thumb_analyze_prologue | ( | struct gdbarch * | gdbarch, |
CORE_ADDR | start, | ||
CORE_ADDR | limit, | ||
struct arm_prologue_cache * | cache | ||
) | [static] |
Definition at line 694 of file arm-tdep.c.
References trad_frame_saved_reg::addr, arm_debug, ARM_FP_REGNUM, ARM_LR_REGNUM, ARM_SP_REGNUM, bit, bits, do_cleanups(), EXTRACT_MOVW_MOVT_IMM_T, fprintf_unfiltered(), arm_prologue_cache::framereg, arm_prologue_cache::framesize, gdb_stdlog, gdbarch_addr_bit(), gdbarch_byte_order(), gdbarch_byte_order_for_code(), prologue_value::k, make_cleanup_free_pv_area(), make_pv_area(), offset, paddress(), pv_add(), pv_add_constant(), pv_area_find_reg(), pv_area_store(), pv_area_store_would_trash(), pv_constant(), pv_is_constant(), pv_is_register(), pv_register(), read_memory_unsigned_integer(), arm_prologue_cache::saved_regs, sbits, skip_prologue_function(), thumb2_instruction_changes_pc(), thumb_expand_immediate(), THUMB_FP_REGNUM, thumb_insn_size(), and thumb_instruction_changes_pc().
Referenced by arm_skip_prologue(), and thumb_scan_prologue().
static int thumb_copy_16bit_ldr_literal | ( | struct gdbarch * | gdbarch, |
unsigned short | insn1, | ||
struct regcache * | regs, | ||
struct displaced_step_closure * | dsc | ||
) | [static] |
Definition at line 7992 of file arm-tdep.c.
References ARM_PC_REGNUM, bits, CANNOT_WRITE_PC, displaced_step_closure::cleanup, cleanup_load(), debug_displaced, displaced_read_reg(), displaced_write_reg(), fprintf_unfiltered(), from, gdb_stdlog, displaced_step_closure::insn_addr, displaced_step_closure::ldst, displaced_step_closure::modinsn, displaced_step_closure::rd, displaced_step_closure::tmp, and displaced_step_closure::u.
Referenced by thumb_process_displaced_16bit_insn().
static int thumb_copy_alu_reg | ( | struct gdbarch * | gdbarch, |
uint16_t | insn, | ||
struct regcache * | regs, | ||
struct displaced_step_closure * | dsc | ||
) | [static] |
Definition at line 6390 of file arm-tdep.c.
References ARM_PC_REGNUM, bit, bits, debug_displaced, fprintf_unfiltered(), gdb_stdlog, install_alu_reg(), displaced_step_closure::modinsn, and thumb_copy_unmodified_16bit().
Referenced by thumb_process_displaced_16bit_insn().
static int thumb_copy_b | ( | struct gdbarch * | gdbarch, |
unsigned short | insn, | ||
struct displaced_step_closure * | dsc | ||
) | [static] |
Definition at line 6101 of file arm-tdep.c.
References bits, displaced_step_closure::branch, displaced_step_closure::cleanup, cleanup_branch(), debug_displaced, fprintf_unfiltered(), from, gdb_stdlog, displaced_step_closure::insn_addr, INST_AL, displaced_step_closure::modinsn, offset, sbits, THUMB_NOP, and displaced_step_closure::u.
Referenced by thumb_process_displaced_16bit_insn().
static int thumb_copy_bx_blx_reg | ( | struct gdbarch * | gdbarch, |
uint16_t | insn, | ||
struct regcache * | regs, | ||
struct displaced_step_closure * | dsc | ||
) | [static] |
Definition at line 6184 of file arm-tdep.c.
References bit, bits, debug_displaced, fprintf_unfiltered(), gdb_stdlog, INST_AL, install_bx_blx_reg(), displaced_step_closure::modinsn, and THUMB_NOP.
Referenced by thumb_process_displaced_16bit_insn().
static int thumb_copy_cbnz_cbz | ( | struct gdbarch * | gdbarch, |
uint16_t | insn1, | ||
struct regcache * | regs, | ||
struct displaced_step_closure * | dsc | ||
) | [static] |
Definition at line 8043 of file arm-tdep.c.
References bit, bits, displaced_step_closure::branch, displaced_step_closure::cleanup, cleanup_branch(), debug_displaced, displaced_read_reg(), fprintf_unfiltered(), from, gdb_stdlog, displaced_step_closure::insn_addr, INST_AL, displaced_step_closure::modinsn, THUMB_NOP, and displaced_step_closure::u.
Referenced by thumb_process_displaced_16bit_insn().
static int thumb_copy_pc_relative_16bit | ( | struct gdbarch * | gdbarch, |
struct regcache * | regs, | ||
struct displaced_step_closure * | dsc, | ||
int | rd, | ||
unsigned int | imm | ||
) | [static] |
Definition at line 7925 of file arm-tdep.c.
References install_pc_relative(), and displaced_step_closure::modinsn.
Referenced by thumb_decode_pc_relative_16bit().
static int thumb_copy_pc_relative_32bit | ( | struct gdbarch * | gdbarch, |
uint16_t | insn1, | ||
uint16_t | insn2, | ||
struct regcache * | regs, | ||
struct displaced_step_closure * | dsc | ||
) | [static] |
Definition at line 7955 of file arm-tdep.c.
References bit, bits, debug_displaced, fprintf_unfiltered(), gdb_stdlog, install_pc_relative(), displaced_step_closure::modinsn, and displaced_step_closure::numinsns.
Referenced by thumb_process_displaced_32bit_insn().
static int thumb_copy_pop_pc_16bit | ( | struct gdbarch * | gdbarch, |
unsigned short | insn1, | ||
struct regcache * | regs, | ||
struct displaced_step_closure * | dsc | ||
) | [static] |
Definition at line 8142 of file arm-tdep.c.
References _, bit, bitcount(), displaced_step_closure::block, displaced_step_closure::cleanup, cleanup_block_load_pc(), cleanup_pop_pc_16bit_all(), debug_displaced, displaced_read_reg(), fprintf_unfiltered(), from, gdb_stdlog, INST_AL, displaced_step_closure::modinsn, displaced_step_closure::numinsns, displaced_step_closure::tmp, to, and displaced_step_closure::u.
Referenced by thumb_process_displaced_16bit_insn().
static int thumb_copy_svc | ( | struct gdbarch * | gdbarch, |
uint16_t | insn, | ||
struct regcache * | regs, | ||
struct displaced_step_closure * | dsc | ||
) | [static] |
Definition at line 7316 of file arm-tdep.c.
References debug_displaced, fprintf_unfiltered(), gdb_stdlog, install_svc(), and displaced_step_closure::modinsn.
Referenced by thumb_process_displaced_16bit_insn().
static int thumb_copy_unmodified_16bit | ( | struct gdbarch * | gdbarch, |
unsigned int | insn, | ||
const char * | iname, | ||
struct displaced_step_closure * | dsc | ||
) | [static] |
Definition at line 5703 of file arm-tdep.c.
References debug_displaced, fprintf_unfiltered(), gdb_stdlog, and displaced_step_closure::modinsn.
Referenced by thumb_copy_alu_reg(), and thumb_process_displaced_16bit_insn().
static int thumb_copy_unmodified_32bit | ( | struct gdbarch * | gdbarch, |
uint16_t | insn1, | ||
uint16_t | insn2, | ||
const char * | iname, | ||
struct displaced_step_closure * | dsc | ||
) | [static] |
Definition at line 5684 of file arm-tdep.c.
References debug_displaced, fprintf_unfiltered(), gdb_stdlog, displaced_step_closure::modinsn, and displaced_step_closure::numinsns.
Referenced by decode_thumb_32bit_ld_mem_hints(), thumb2_copy_alu_imm(), thumb2_copy_block_xfer(), thumb2_copy_copro_load_store(), thumb2_copy_load_reg_imm(), thumb2_copy_preload(), thumb2_decode_dp_shift_reg(), thumb2_decode_ext_reg_ld_st(), thumb2_decode_svc_copro(), and thumb_process_displaced_32bit_insn().
static int thumb_deal_with_atomic_sequence_raw | ( | struct frame_info * | frame | ) | [static] |
Definition at line 5014 of file arm-tdep.c.
References arm_insert_single_step_breakpoint(), ARM_PS_REGNUM, bit, bits, gdbarch_byte_order_for_code(), get_frame_address_space(), get_frame_arch(), get_frame_pc(), get_frame_register_unsigned(), MAKE_THUMB_ADDR, offset, read_memory_unsigned_integer(), sbits, exsummary::status, thumb2_instruction_changes_pc(), thumb_insn_size(), thumb_instruction_changes_pc(), and ULONGEST.
Referenced by arm_deal_with_atomic_sequence().
static int thumb_decode_pc_relative_16bit | ( | struct gdbarch * | gdbarch, |
uint16_t | insn, | ||
struct regcache * | regs, | ||
struct displaced_step_closure * | dsc | ||
) | [static] |
Definition at line 7939 of file arm-tdep.c.
References bits, debug_displaced, fprintf_unfiltered(), gdb_stdlog, and thumb_copy_pc_relative_16bit().
Referenced by thumb_process_displaced_16bit_insn().
static unsigned int thumb_expand_immediate | ( | unsigned int | imm | ) | [static] |
Definition at line 544 of file arm-tdep.c.
Referenced by thumb_analyze_prologue().
static CORE_ADDR thumb_get_next_pc_raw | ( | struct frame_info * | frame, |
CORE_ADDR | pc | ||
) | [static] |
Definition at line 4328 of file arm-tdep.c.
References arm_insert_single_step_breakpoint(), ARM_LR_REGNUM, ARM_PC_REGNUM, ARM_PS_REGNUM, ARM_SP_REGNUM, bit, bitcount(), bits, condition_true(), gdb_assert, gdbarch_byte_order(), gdbarch_byte_order_for_code(), gdbarch_tdep(), get_frame_address_space(), get_frame_arch(), get_frame_memory_unsigned(), get_frame_register_unsigned(), INT_REGISTER_SIZE, gdb::printing::long, MAKE_THUMB_ADDR, offset, read_memory_unsigned_integer(), sbits, sp, exsummary::status, gdbarch_tdep::syscall_next_pc, gdbarch_tdep::thumb2_breakpoint, thumb_advance_itstate(), thumb_insn_size(), ULONGEST, and UNMAKE_THUMB_ADDR.
Referenced by arm_get_next_pc().
static int thumb_in_function_epilogue_p | ( | struct gdbarch * | gdbarch, |
CORE_ADDR | pc | ||
) | [static] |
Definition at line 3157 of file arm-tdep.c.
References gdbarch::byte_order_for_code, extract_unsigned_integer(), find_pc_partial_function(), gdbarch_byte_order_for_code(), target_read_memory(), and thumb_insn_size().
Referenced by arm_in_function_epilogue_p().
static int thumb_insn_size | ( | unsigned short | inst1 | ) | [static] |
Definition at line 4299 of file arm-tdep.c.
Referenced by arm_adjust_breakpoint_address(), arm_breakpoint_from_pc(), thumb_analyze_prologue(), thumb_deal_with_atomic_sequence_raw(), thumb_get_next_pc_raw(), thumb_in_function_epilogue_p(), and thumb_process_displaced_insn().
static int thumb_instruction_changes_pc | ( | unsigned short | inst | ) | [static] |
Definition at line 569 of file arm-tdep.c.
Referenced by thumb_analyze_prologue(), and thumb_deal_with_atomic_sequence_raw().
static void thumb_process_displaced_16bit_insn | ( | struct gdbarch * | gdbarch, |
uint16_t | insn1, | ||
struct regcache * | regs, | ||
struct displaced_step_closure * | dsc | ||
) | [static] |
Definition at line 8215 of file arm-tdep.c.
References _, bit, bits, internal_error(), thumb_copy_16bit_ldr_literal(), thumb_copy_alu_reg(), thumb_copy_b(), thumb_copy_bx_blx_reg(), thumb_copy_cbnz_cbz(), thumb_copy_pop_pc_16bit(), thumb_copy_svc(), thumb_copy_unmodified_16bit(), and thumb_decode_pc_relative_16bit().
Referenced by thumb_process_displaced_insn().
static void thumb_process_displaced_32bit_insn | ( | struct gdbarch * | gdbarch, |
uint16_t | insn1, | ||
uint16_t | insn2, | ||
struct regcache * | regs, | ||
struct displaced_step_closure * | dsc | ||
) | [static] |
Definition at line 8399 of file arm-tdep.c.
References _, bit, bits, decode_thumb_32bit_ld_mem_hints(), internal_error(), thumb2_copy_b_bl_blx(), thumb2_copy_block_xfer(), thumb2_copy_table_branch(), thumb2_decode_dp_shift_reg(), thumb2_decode_svc_copro(), thumb_copy_pc_relative_32bit(), and thumb_copy_unmodified_32bit().
Referenced by thumb_process_displaced_insn().
static void thumb_process_displaced_insn | ( | struct gdbarch * | gdbarch, |
CORE_ADDR | from, | ||
CORE_ADDR | to, | ||
struct regcache * | regs, | ||
struct displaced_step_closure * | dsc | ||
) | [static] |
Definition at line 8527 of file arm-tdep.c.
References debug_displaced, fprintf_unfiltered(), gdb_stdlog, gdbarch_byte_order_for_code(), displaced_step_closure::insn_size, displaced_step_closure::is_thumb, read_memory_unsigned_integer(), thumb_insn_size(), thumb_process_displaced_16bit_insn(), and thumb_process_displaced_32bit_insn().
Referenced by arm_process_displaced_insn().
static int thumb_record_add_sub_cmp_mov | ( | insn_decode_record * | thumb_insn_r | ) | [static] |
Definition at line 11986 of file arm-tdep.c.
References insn_decode_record_t::arm_insn, ARM_PS_REGNUM, insn_decode_record_t::arm_regs, bits, REG_ALLOC, and insn_decode_record_t::reg_rec_count.
Referenced by decode_insn().
static int thumb_record_branch | ( | insn_decode_record * | thumb_insn_r | ) | [static] |
Definition at line 12388 of file arm-tdep.c.
References insn_decode_record_t::arm_insn, ARM_LR_REGNUM, ARM_PS_REGNUM, insn_decode_record_t::arm_regs, bits, REG_ALLOC, and insn_decode_record_t::reg_rec_count.
Referenced by decode_insn().
static int thumb_record_ld_st_imm_offset | ( | insn_decode_record * | thumb_insn_r | ) | [static] |
Definition at line 12095 of file arm-tdep.c.
References insn_decode_record_t::arm_insn, insn_decode_record_t::arm_mems, insn_decode_record_t::arm_regs, bits, MEM_ALLOC, insn_decode_record_t::mem_rec_count, REG_ALLOC, insn_decode_record_t::reg_rec_count, insn_decode_record_t::regcache, regcache_raw_read_unsigned(), and ULONGEST.
Referenced by decode_insn().
static int thumb_record_ld_st_reg_offset | ( | insn_decode_record * | thumb_insn_r | ) | [static] |
Definition at line 12005 of file arm-tdep.c.
References insn_decode_record_t::arm_insn, insn_decode_record_t::arm_mems, ARM_PS_REGNUM, insn_decode_record_t::arm_regs, bit, bits, MEM_ALLOC, insn_decode_record_t::mem_rec_count, REG_ALLOC, insn_decode_record_t::reg_rec_count, insn_decode_record_t::regcache, regcache_raw_read_unsigned(), and ULONGEST.
Referenced by decode_insn().
static int thumb_record_ld_st_stack | ( | insn_decode_record * | thumb_insn_r | ) | [static] |
Definition at line 12135 of file arm-tdep.c.
References insn_decode_record_t::arm_insn, insn_decode_record_t::arm_mems, insn_decode_record_t::arm_regs, ARM_SP_REGNUM, bits, MEM_ALLOC, insn_decode_record_t::mem_rec_count, REG_ALLOC, insn_decode_record_t::reg_rec_count, insn_decode_record_t::regcache, regcache_raw_read_unsigned(), and ULONGEST.
Referenced by decode_insn().
static int thumb_record_ldm_stm_swi | ( | insn_decode_record * | thumb_insn_r | ) | [static] |
Definition at line 12298 of file arm-tdep.c.
References _, insn_decode_record_t::arm_insn, insn_decode_record_t::arm_mems, insn_decode_record_t::arm_regs, gdbarch_tdep::arm_swi_record, bits, insn_decode_record_t::gdbarch, gdbarch_tdep(), MEM_ALLOC, insn_decode_record_t::mem_rec_count, printf_unfiltered(), REG_ALLOC, insn_decode_record_t::reg_rec_count, insn_decode_record_t::regcache, regcache_raw_read_unsigned(), and ULONGEST.
Referenced by decode_insn().
static int thumb_record_misc | ( | insn_decode_record * | thumb_insn_r | ) | [static] |
Definition at line 12191 of file arm-tdep.c.
References _, insn_decode_record_t::arm_insn, ARM_LR_REGNUM, insn_decode_record_t::arm_mems, ARM_PC_REGNUM, ARM_PS_REGNUM, insn_decode_record_t::arm_regs, ARM_SP_REGNUM, bit, bits, insn_decode_record_t::gdbarch, MEM_ALLOC, insn_decode_record_t::mem_rec_count, paddress(), printf_unfiltered(), REG_ALLOC, insn_decode_record_t::reg_rec_count, insn_decode_record_t::regcache, regcache_raw_read_unsigned(), insn_decode_record_t::this_addr, and ULONGEST.
Referenced by decode_insn().
static int thumb_record_shift_add_sub | ( | insn_decode_record * | thumb_insn_r | ) | [static] |
Definition at line 11966 of file arm-tdep.c.
References insn_decode_record_t::arm_insn, ARM_PS_REGNUM, insn_decode_record_t::arm_regs, bits, REG_ALLOC, and insn_decode_record_t::reg_rec_count.
static void thumb_scan_prologue | ( | struct gdbarch * | gdbarch, |
CORE_ADDR | prev_pc, | ||
CORE_ADDR | block_addr, | ||
struct arm_prologue_cache * | cache | ||
) | [static] |
Definition at line 1533 of file arm-tdep.c.
References find_pc_partial_function(), min, and thumb_analyze_prologue().
Referenced by arm_scan_prologue().
static struct value* value_of_arm_user_reg | ( | struct frame_info * | frame, |
const void * | baton | ||
) | [static, read] |
Definition at line 9749 of file arm-tdep.c.
References value_of_register().
Referenced by arm_gdbarch_init().
Referenced by _initialize_arm_tdep(), and initialize_all_files().
enum arm_abi_kind arm_abi_global = ARM_ABI_AUTO [static] |
Definition at line 130 of file arm-tdep.c.
Referenced by arm_gdbarch_init(), arm_set_abi(), and arm_show_abi().
const char* arm_abi_string = "auto" [static] |
Definition at line 131 of file arm-tdep.c.
Referenced by _initialize_arm_tdep(), arm_set_abi(), and arm_show_abi().
const char* const arm_abi_strings[] [static] |
{ "auto", "APCS", "AAPCS", NULL }
Definition at line 121 of file arm-tdep.c.
Referenced by _initialize_arm_tdep(), arm_set_abi(), and arm_show_abi().
int arm_apcs_32 = 1 |
Definition at line 279 of file arm-tdep.c.
Referenced by _initialize_arm_tdep(), arm_addr_bits_remove(), arm_get_next_pc_raw(), arm_linux_collect_gregset(), arm_linux_supply_gregset(), arm_supply_gregset(), arm_write_pc(), fetch_register(), fetch_regs(), store_register(), and store_regs().
Definition at line 69 of file arm-tdep.c.
Referenced by _initialize_arm_tdep(), arm_analyze_prologue(), arm_push_dummy_call(), and thumb_analyze_prologue().
const gdb_byte arm_default_arm_be_breakpoint[] = ARM_BE_BREAKPOINT [static] |
Definition at line 8779 of file arm-tdep.c.
Referenced by arm_gdbarch_init().
const gdb_byte arm_default_arm_le_breakpoint[] = ARM_LE_BREAKPOINT [static] |
Definition at line 8778 of file arm-tdep.c.
Referenced by arm_gdbarch_init().
const gdb_byte arm_default_thumb_be_breakpoint[] = THUMB_BE_BREAKPOINT [static] |
Definition at line 8781 of file arm-tdep.c.
Referenced by arm_gdbarch_init().
const gdb_byte arm_default_thumb_le_breakpoint[] = THUMB_LE_BREAKPOINT [static] |
Definition at line 8780 of file arm-tdep.c.
Referenced by arm_gdbarch_init().
struct objfile_data* arm_exidx_data_key [static] |
Definition at line 2137 of file arm-tdep.c.
Referenced by _initialize_arm_tdep(), arm_exidx_new_objfile(), and arm_find_exidx_entry().
struct frame_unwind arm_exidx_unwind |
{ NORMAL_FRAME, default_frame_unwind_stop_reason, arm_prologue_this_id, arm_prologue_prev_register, NULL, arm_exidx_unwind_sniffer }
Definition at line 2863 of file arm-tdep.c.
const char* arm_fallback_mode_string = "auto" [static] |
Definition at line 142 of file arm-tdep.c.
Referenced by _initialize_arm_tdep(), arm_pc_is_thumb(), and arm_show_fallback_mode().
const char* arm_force_mode_string = "auto" [static] |
Definition at line 143 of file arm-tdep.c.
Referenced by _initialize_arm_tdep(), arm_pc_is_thumb(), and arm_show_force_mode().
enum arm_float_model arm_fp_model = ARM_FLOAT_AUTO [static] |
Definition at line 117 of file arm-tdep.c.
Referenced by arm_gdbarch_init(), set_fp_model_sfunc(), and show_fp_model().
{ SIGTRAMP_FRAME, default_frame_unwind_stop_reason, arm_m_exception_this_id, arm_m_exception_prev_register, NULL, arm_m_exception_unwind_sniffer }
Definition at line 3039 of file arm-tdep.c.
const char* const arm_mode_strings[] [static] |
{ "auto", "arm", "thumb", NULL }
Definition at line 134 of file arm-tdep.c.
Referenced by _initialize_arm_tdep().
struct frame_base arm_normal_base |
{ &arm_prologue_unwind, arm_normal_frame_base, arm_normal_frame_base, arm_normal_frame_base }
Definition at line 3061 of file arm-tdep.c.
struct objfile_data* arm_objfile_data_key [static] |
Definition at line 85 of file arm-tdep.c.
Referenced by _initialize_arm_tdep(), arm_find_mapping_symbol(), and arm_record_special_symbol().
int arm_override_mode = -1 [static] |
Definition at line 150 of file arm-tdep.c.
Referenced by arm_insert_single_step_breakpoint(), and arm_pc_is_thumb().
struct frame_unwind arm_prologue_unwind |
{ NORMAL_FRAME, default_frame_unwind_stop_reason, arm_prologue_this_id, arm_prologue_prev_register, NULL, default_frame_sniffer }
Definition at line 2123 of file arm-tdep.c.
struct { ... } arm_register_aliases[] [static] |
Referenced by arm_gdbarch_init().
const char* const arm_register_names[] [static] |
{"r0", "r1", "r2", "r3", "r4", "r5", "r6", "r7", "r8", "r9", "r10", "r11", "r12", "sp", "lr", "pc", "f0", "f1", "f2", "f3", "f4", "f5", "f6", "f7", "fps", "cpsr" }
Definition at line 206 of file arm-tdep.c.
Referenced by arm_gdbarch_init(), arm_register_name(), and arm_register_type().
struct frame_unwind arm_stub_unwind |
{ NORMAL_FRAME, default_frame_unwind_stop_reason, arm_stub_this_id, arm_prologue_prev_register, NULL, arm_stub_unwind_sniffer }
Definition at line 2919 of file arm-tdep.c.
const char* current_fp_model = "auto" [static] |
Definition at line 118 of file arm-tdep.c.
Referenced by _initialize_arm_tdep(), and set_fp_model_sfunc().
const char* disassembly_style [static] |
Definition at line 219 of file arm-tdep.c.
Referenced by _initialize_arm_tdep(), and set_disassembly_style().
const char* const fp_model_strings[] [static] |
{ "auto", "softfpa", "fpa", "softvfp", "vfp", NULL }
Definition at line 106 of file arm-tdep.c.
Referenced by _initialize_arm_tdep(), set_fp_model_sfunc(), and show_fp_model().
Definition at line 161 of file arm-tdep.c.
int num_disassembly_options [static] |
Definition at line 153 of file arm-tdep.c.
Referenced by _initialize_arm_tdep(), and set_disassembly_style().
Definition at line 162 of file arm-tdep.c.
struct cmd_list_element* setarmcmdlist = NULL [static] |
Definition at line 101 of file arm-tdep.c.
struct cmd_list_element* showarmcmdlist = NULL [static] |
Definition at line 102 of file arm-tdep.c.
const char** valid_disassembly_styles [static] |
Definition at line 216 of file arm-tdep.c.
Referenced by _initialize_arm_tdep(), and set_disassembly_style().