|
GDB (xrefs)
|
#include "defs.h"#include <ctype.h>#include "frame.h"#include "inferior.h"#include "infrun.h"#include "gdbcmd.h"#include "gdbcore.h"#include "dis-asm.h"#include "disasm.h"#include "regcache.h"#include "reggroups.h"#include "target-float.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 "arch/arm.h"#include "arch/arm-get-next-pcs.h"#include "arm-tdep.h"#include "gdb/sim-arm.h"#include "elf-bfd.h"#include "coff/internal.h"#include "elf/arm.h"#include "vec.h"#include "record.h"#include "record-full.h"#include <algorithm>#include "features/arm/arm-with-m.c"#include "features/arm/arm-with-m-fpa-layout.c"#include "features/arm/arm-with-m-vfp-d16.c"#include "features/arm/arm-with-iwmmxt.c"#include "features/arm/arm-with-vfpv2.c"#include "features/arm/arm-with-vfpv3.c"#include "features/arm/arm-with-neon.c"#include "bfd-in2.h"#include "libcoff.h"Go to the source code of this file.
Classes | |
| struct | arm_mapping_symbol |
| struct | arm_per_objfile |
| struct | arm_prologue_cache |
| struct | arm_exidx_entry |
| struct | arm_exidx_data |
| struct | stack_item |
| struct | arm_mem_r |
| struct | insn_decode_record_t |
Macros | |
| #define | MSYMBOL_SET_SPECIAL(msym) MSYMBOL_TARGET_FLAG_1 (msym) = 1 |
| #define | MSYMBOL_IS_SPECIAL(msym) MSYMBOL_TARGET_FLAG_1 (msym) |
| #define | DISPLACED_STEPPING_ARCH_VERSION 5 |
| #define | EXTRACT_MOVW_MOVT_IMM_T(insn1, insn2) |
| #define | EXTRACT_MOVW_MOVT_IMM_A(insn) |
| #define | MAX_IT_BLOCK_PREFIX 14 |
| #define | IT_SCAN_THRESHOLD 32 |
| #define | ARM_NOP 0xe1a00000 |
| #define | THUMB_NOP 0x4600 |
| #define | ARM_LE_BREAKPOINT {0xFE,0xDE,0xFF,0xE7} |
| #define | ARM_BE_BREAKPOINT {0xE7,0xFF,0xDE,0xFE} |
| #define | THUMB_LE_BREAKPOINT {0xbe,0xbe} |
| #define | THUMB_BE_BREAKPOINT {0xbe,0xbe} |
| #define | ARM_INSN_SIZE_BYTES 4 |
| #define | THUMB_INSN_SIZE_BYTES 2 |
| #define | THUMB2_INSN_SIZE_BYTES 4 |
| #define | INSN_S_L_BIT_NUM 20 |
| #define | REG_ALLOC(REGS, LENGTH, RECORD_BUF) |
| #define | MEM_ALLOC(MEMS, LENGTH, RECORD_BUF) |
| #define | INSN_RECORDED(ARM_RECORD) (0 != (ARM_RECORD)->reg_rec_count || 0 != (ARM_RECORD)->mem_rec_count) |
Typedefs | |
| typedef struct arm_mapping_symbol | arm_mapping_symbol_s |
| typedef struct arm_exidx_entry | arm_exidx_entry_s |
| typedef struct insn_decode_record_t | insn_decode_record |
| typedef int(* | sti_arm_hdl_fp_t) (insn_decode_record *) |
Enumerations | |
| enum | arm_vfp_cprc_base_type { VFP_CPRC_UNKNOWN, VFP_CPRC_SINGLE, VFP_CPRC_DOUBLE, VFP_CPRC_VEC64, VFP_CPRC_VEC128 } |
| enum | arm_record_result { ARM_RECORD_SUCCESS = 0, ARM_RECORD_FAILURE = 1 } |
| enum | arm_record_strx_t { ARM_RECORD_STRH =1, ARM_RECORD_STRD } |
| enum | record_type_t { ARM_RECORD =1, THUMB_RECORD, THUMB2_RECORD } |
| #define ARM_BE_BREAKPOINT {0xE7,0xFF,0xDE,0xFE} |
Definition at line 7771 of file arm-tdep.c.
| #define ARM_INSN_SIZE_BYTES 4 |
Definition at line 9686 of file arm-tdep.c.
Referenced by arm_process_record().
| #define ARM_LE_BREAKPOINT {0xFE,0xDE,0xFF,0xE7} |
Definition at line 7770 of file arm-tdep.c.
| #define ARM_NOP 0xe1a00000 |
Definition at line 4409 of file arm-tdep.c.
Referenced by arm_copy_b_bl_blx(), arm_copy_block_xfer(), and arm_copy_bx_blx_reg().
| #define DISPLACED_STEPPING_ARCH_VERSION 5 |
Definition at line 277 of file arm-tdep.c.
Referenced by alu_write_pc(), and load_write_pc().
| #define EXTRACT_MOVW_MOVT_IMM_A | ( | insn | ) |
Definition at line 597 of file arm-tdep.c.
Referenced by arm_analyze_load_stack_chk_guard().
| #define EXTRACT_MOVW_MOVT_IMM_T | ( | insn1, | |
| insn2 | |||
| ) |
Definition at line 589 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 9721 of file arm-tdep.c.
Referenced by arm_record_extension_space().
| #define INSN_S_L_BIT_NUM 20 |
Definition at line 9693 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(), arm_record_ld_st_reg_offset(), thumb2_record_ld_st_dual_ex_tbb(), and thumb2_record_ld_st_multiple().
| #define IT_SCAN_THRESHOLD 32 |
Definition at line 4229 of file arm-tdep.c.
Referenced by arm_adjust_breakpoint_address().
| #define MAX_IT_BLOCK_PREFIX 14 |
Definition at line 4225 of file arm-tdep.c.
Referenced by arm_adjust_breakpoint_address().
| #define MEM_ALLOC | ( | MEMS, | |
| LENGTH, | |||
| RECORD_BUF | |||
| ) |
Definition at line 9707 of file arm-tdep.c.
Referenced by arm_record_data_proc_imm(), arm_record_data_proc_misc_ld_str(), arm_record_exreg_ld_st_insn(), arm_record_extension_space(), arm_record_ld_st_imm_offset(), arm_record_ld_st_multiple(), arm_record_ld_st_reg_offset(), thumb2_record_asimd_struct_ld_st(), thumb2_record_ld_st_dual_ex_tbb(), thumb2_record_ld_st_multiple(), thumb2_record_str_single_data(), 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 88 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 85 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 | |||
| ) |
Definition at line 9695 of file arm-tdep.c.
Referenced by arm_record_asimd_vfp_coproc(), arm_record_b_bl(), arm_record_coproc_data_proc(), arm_record_data_proc_imm(), arm_record_data_proc_misc_ld_str(), arm_record_exreg_ld_st_insn(), arm_record_extension_space(), arm_record_ld_st_imm_offset(), arm_record_ld_st_multiple(), arm_record_ld_st_reg_offset(), arm_record_media(), arm_record_vdata_transfer_insn(), arm_record_vfp_data_proc_insn(), thumb2_record_asimd_struct_ld_st(), thumb2_record_branch_misc_cntrl(), thumb2_record_data_proc_sreg_mimm(), thumb2_record_ld_mem_hints(), thumb2_record_ld_st_dual_ex_tbb(), thumb2_record_ld_st_multiple(), thumb2_record_ld_word(), thumb2_record_lmul_lmla_div(), thumb2_record_ps_dest_generic(), thumb2_record_str_single_data(), 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 THUMB2_INSN_SIZE_BYTES 4 |
Definition at line 9688 of file arm-tdep.c.
Referenced by arm_process_record().
| #define THUMB_BE_BREAKPOINT {0xbe,0xbe} |
Definition at line 7773 of file arm-tdep.c.
| #define THUMB_INSN_SIZE_BYTES 2 |
Definition at line 9687 of file arm-tdep.c.
Referenced by arm_process_record().
| #define THUMB_LE_BREAKPOINT {0xbe,0xbe} |
Definition at line 7772 of file arm-tdep.c.
| #define THUMB_NOP 0x4600 |
Definition at line 4410 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().
| typedef struct arm_exidx_entry arm_exidx_entry_s |
Definition at line 1981 of file arm-tdep.c.
| typedef struct arm_mapping_symbol arm_mapping_symbol_s |
Definition at line 99 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 12946 of file arm-tdep.c.
| enum arm_record_result |
| Enumerator | |
|---|---|
| ARM_RECORD_SUCCESS | |
| ARM_RECORD_FAILURE | |
Definition at line 9776 of file arm-tdep.c.
| enum arm_record_strx_t |
| Enumerator | |
|---|---|
| ARM_RECORD_STRH | |
| ARM_RECORD_STRD | |
Definition at line 9782 of file arm-tdep.c.
| Enumerator | |
|---|---|
| VFP_CPRC_UNKNOWN | |
| VFP_CPRC_SINGLE | |
| VFP_CPRC_DOUBLE | |
| VFP_CPRC_VEC64 | |
| VFP_CPRC_VEC128 | |
Definition at line 3415 of file arm-tdep.c.
| enum record_type_t |
| Enumerator | |
|---|---|
| ARM_RECORD | |
| THUMB_RECORD | |
| THUMB2_RECORD | |
Definition at line 9788 of file arm-tdep.c.
| void _initialize_arm_tdep | ( | void | ) |
Definition at line 9546 of file arm-tdep.c.
References _, add_prefix_cmd(), add_setshow_boolean_cmd(), add_setshow_enum_cmd(), arm_abi_string, arm_abi_strings, arm_apcs_32, arm_debug, arm_disassembler_options, 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, 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(), no_class, observer_attach_new_objfile(), offset, selftests::register_test(), set_arm_command(), set_disassembly_style_sfunc(), set_fp_model_sfunc(), setarmcmdlist, setdebuglist, setlist, show_arm_command(), show_disassembly_style_sfunc(), show_fp_model(), showarmcmdlist, showdebuglist, showlist, string, string_printf(), valid_disassembly_styles, and XNEWVEC.
|
static |
Definition at line 4523 of file arm-tdep.c.
References branch_write_pc(), bx_write_pc(), DISPLACED_STEPPING_ARCH_VERSION, and arm_displaced_step_closure::is_thumb.
Referenced by displaced_write_reg().
Definition at line 518 of file arm-tdep.c.
References arm_apcs_32, arm_m_addr_is_magic(), and UNMAKE_THUMB_ADDR.
Referenced by arm_dwarf2_prev_register(), arm_gdbarch_init(), arm_prologue_prev_register(), and arm_unwind_pc().
|
static |
Definition at line 4235 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, target_read_code(), thumb_insn_size(), xfree(), and xmalloc().
Referenced by arm_gdbarch_init().
|
static |
Definition at line 1122 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(), offset, read_code_unsigned_integer(), and read_memory_unsigned_integer().
Referenced by arm_skip_stack_protector().
|
static |
Definition at line 1478 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_instruction_restores_sp(), ARM_IP_REGNUM, ARM_PC_REGNUM, ARM_SP_REGNUM, bits, BranchDest, pv_area::find_reg(), fprintf_unfiltered(), arm_prologue_cache::framereg, arm_prologue_cache::framesize, gdb_stdlog, gdbarch_addr_bit(), gdbarch_byte_order_for_code(), prologue_value::k, offset, paddress(), pv_add_constant(), pv_is_register(), pv_register(), read_code_unsigned_integer(), arm_prologue_cache::saved_regs, skip_prologue_function(), pv_area::store(), and pv_area::store_would_trash().
Referenced by arm_scan_prologue(), and arm_skip_prologue().
|
static |
Definition at line 7841 of file arm-tdep.c.
References ARM_BP_KIND_ARM, arm_breakpoint_kind_from_pc(), arm_get_next_pcs(), arm_get_next_pcs_ctor(), gdbarch_byte_order(), gdbarch_byte_order_for_code(), IS_THUMB_ADDR, MAKE_THUMB_ADDR, regcache_read_pc(), target_read_memory(), and UNMAKE_THUMB_ADDR.
Referenced by arm_gdbarch_init().
Definition at line 7783 of file arm-tdep.c.
References ARM_BP_KIND_ARM, ARM_BP_KIND_THUMB, ARM_BP_KIND_THUMB2, arm_pc_is_thumb(), extract_unsigned_integer(), gdbarch_byte_order_for_code(), gdbarch_tdep(), target_read_memory(), gdbarch_tdep::thumb2_breakpoint, thumb_insn_size(), and UNMAKE_THUMB_ADDR.
Referenced by arm_breakpoint_kind_from_current_state(), and arm_gdbarch_init().
|
static |
Definition at line 8905 of file arm-tdep.c.
References get_frame_type(), and SIGTRAMP_FRAME.
Referenced by arm_gdbarch_init().
|
static |
Definition at line 8586 of file arm-tdep.c.
References coff_sym_is_thumb(), and MSYMBOL_SET_SPECIAL.
Referenced by arm_gdbarch_init().
|
inlinestatic |
Definition at line 2000 of file arm-tdep.c.
References arm_exidx_entry::addr.
Referenced by arm_find_exidx_entry().
|
inlinestatic |
Definition at line 327 of file arm-tdep.c.
References arm_mapping_symbol::value.
Referenced by arm_find_mapping_symbol(), and arm_record_special_symbol().
|
static |
Definition at line 5166 of file arm-tdep.c.
References arm_copy_unmodified(), bits, CANNOT_WRITE_PC, arm_displaced_step_closure::cleanup, cleanup_alu_imm(), debug_displaced, displaced_read_reg(), displaced_write_reg(), fprintf_unfiltered(), gdb_stdlog, insn_references_pc(), arm_displaced_step_closure::modinsn, arm_displaced_step_closure::rd, and arm_displaced_step_closure::tmp.
Referenced by arm_decode_dp_misc().
|
static |
Definition at line 5316 of file arm-tdep.c.
References arm_copy_unmodified(), bits, debug_displaced, fprintf_unfiltered(), gdb_stdlog, insn_references_pc(), install_alu_reg(), and arm_displaced_step_closure::modinsn.
Referenced by arm_decode_dp_misc().
|
static |
Definition at line 5418 of file arm-tdep.c.
References arm_copy_unmodified(), bits, debug_displaced, fprintf_unfiltered(), gdb_stdlog, insn_references_pc(), install_alu_shifted_reg(), and arm_displaced_step_closure::modinsn.
Referenced by arm_decode_dp_misc().
|
static |
Definition at line 4966 of file arm-tdep.c.
References ARM_NOP, bit, bits, debug_displaced, fprintf_unfiltered(), gdb_stdlog, install_b_bl_blx(), arm_displaced_step_closure::modinsn, and offset.
Referenced by arm_decode_b_bl_ldmstm(), and arm_decode_unconditional().
|
static |
Definition at line 6014 of file arm-tdep.c.
References _, arm_copy_unmodified(), ARM_NOP, ARM_PC_REGNUM, bit, bitcount(), bits, arm_displaced_step_closure::block, arm_displaced_step_closure::cleanup, cleanup_block_load_all(), cleanup_block_load_pc(), cleanup_block_store_pc(), debug_displaced, displaced_read_reg(), fprintf_unfiltered(), gdb_stdlog, arm_displaced_step_closure::modinsn, arm_displaced_step_closure::tmp, arm_displaced_step_closure::u, and warning().
Referenced by arm_decode_b_bl_ldmstm().
|
static |
Definition at line 5114 of file arm-tdep.c.
References ARM_NOP, bit, bits, debug_displaced, fprintf_unfiltered(), gdb_stdlog, install_bx_blx_reg(), and arm_displaced_step_closure::modinsn.
Referenced by arm_decode_miscellaneous().
|
static |
Definition at line 4856 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 arm_displaced_step_closure::modinsn.
Referenced by arm_decode_ext_reg_ld_st(), arm_decode_svc_copro(), and arm_decode_unconditional().
|
static |
Definition at line 5504 of file arm-tdep.c.
References _, arm_copy_unmodified(), bit, bits, CANNOT_WRITE_PC, arm_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(), arm_displaced_step_closure::ldst, arm_displaced_step_closure::modinsn, arm_displaced_step_closure::rd, arm_displaced_step_closure::tmp, and arm_displaced_step_closure::u.
Referenced by arm_decode_dp_misc().
|
static |
Definition at line 5738 of file arm-tdep.c.
References arm_copy_unmodified(), ARM_PC_REGNUM, bit, bits, arm_displaced_step_closure::cleanup, cleanup_load(), cleanup_store(), debug_displaced, fprintf_unfiltered(), gdb_stdlog, insn_references_pc(), install_load_store(), arm_displaced_step_closure::ldst, arm_displaced_step_closure::modinsn, arm_displaced_step_closure::numinsns, size, and arm_displaced_step_closure::u.
Referenced by arm_decode_ld_st_word_ubyte().
|
static |
Definition at line 4698 of file arm-tdep.c.
References arm_copy_unmodified(), bits, debug_displaced, fprintf_unfiltered(), gdb_stdlog, insn_references_pc(), install_preload(), and arm_displaced_step_closure::modinsn.
Referenced by arm_decode_misc_memhint_neon().
|
static |
Definition at line 4792 of file arm-tdep.c.
References arm_copy_unmodified(), bits, debug_displaced, fprintf_unfiltered(), gdb_stdlog, insn_references_pc(), install_preload_reg(), and arm_displaced_step_closure::modinsn.
Referenced by arm_decode_misc_memhint_neon().
|
static |
Definition at line 6313 of file arm-tdep.c.
References debug_displaced, fprintf_unfiltered(), gdb_stdlog, install_svc(), and arm_displaced_step_closure::modinsn.
Referenced by arm_decode_svc_copro().
|
static |
Definition at line 6343 of file arm-tdep.c.
References debug_displaced, fprintf_unfiltered(), gdb_stdlog, and arm_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 |
Definition at line 4620 of file arm-tdep.c.
References debug_displaced, fprintf_unfiltered(), gdb_stdlog, and arm_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 |
Definition at line 6376 of file arm-tdep.c.
References debug_displaced, fprintf_unfiltered(), gdb_stdlog, and arm_displaced_step_closure::modinsn.
Referenced by arm_decode_misc_memhint_neon().
|
static |
Definition at line 6726 of file arm-tdep.c.
References arm_copy_b_bl_blx(), arm_copy_block_xfer(), and bit.
Referenced by arm_process_displaced_insn().
|
static |
Definition at line 6587 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 |
Definition at line 6737 of file arm-tdep.c.
References arm_copy_copro_load_store(), arm_copy_unmodified(), and bits.
Referenced by arm_decode_svc_copro().
|
static |
Definition at line 6633 of file arm-tdep.c.
References arm_copy_ldr_str_ldrb_strb(), bit, and bits.
Referenced by arm_process_displaced_insn().
|
static |
Definition at line 6670 of file arm-tdep.c.
References arm_copy_undef(), arm_copy_unmodified(), and bits.
Referenced by arm_process_displaced_insn().
|
static |
Definition at line 6392 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 |
Definition at line 6537 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 |
Definition at line 6827 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 |
Definition at line 6452 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, | ||
| arm_displaced_step_closure * | dsc | ||
| ) |
Definition at line 7616 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(), arm_displaced_step_closure::is_thumb, arm_displaced_step_closure::modinsn, arm_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_linux_displaced_step_copy_insn().
| 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 7673 of file arm-tdep.c.
References ARM_PC_REGNUM, arm_displaced_step_closure::cleanup, arm_displaced_step_closure::insn_addr, arm_displaced_step_closure::insn_size, regcache_cooked_write_unsigned(), gdbarch_tdep::regs, and arm_displaced_step_closure::wrote_to_pc.
Referenced by arm_linux_init_abi().
|
static |
Definition at line 3074 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().
Definition at line 9527 of file arm-tdep.c.
References _, fprintf_unfiltered(), gdbarch_tdep(), and gdbarch_tdep::lowest_pc.
Referenced by _initialize_arm_tdep().
|
static |
Definition at line 3135 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, and regnum.
Referenced by arm_gdbarch_init().
|
static |
Definition at line 3100 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 regnum.
Referenced by arm_dwarf2_frame_init_reg().
|
static |
Definition at line 4110 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 |
Definition at line 8576 of file arm-tdep.c.
References MSYMBOL_SET_SPECIAL.
Referenced by arm_gdbarch_init().
|
static |
Definition at line 8825 of file arm-tdep.c.
References GDB_OSABI_UNKNOWN, and generic_elf_osabi_sniff_abi_tag_sections().
Referenced by _initialize_arm_tdep().
|
static |
Definition at line 2765 of file arm-tdep.c.
References arm_make_epilogue_frame_cache(), arm_prologue_prev_register(), and regnum.
|
static |
Definition at line 2783 of file arm-tdep.c.
References arm_frame_is_thumb(), arm_stack_frame_destroyed_p_1(), frame_relative_level(), get_frame_arch(), get_frame_pc(), and thumb_stack_frame_destroyed_p().
|
static |
Definition at line 2739 of file arm-tdep.c.
References arm_make_epilogue_frame_cache(), frame_id_build(), func, get_frame_func(), get_frame_pc(), and arm_prologue_cache::prev_sp.
|
static |
Definition at line 1990 of file arm-tdep.c.
References objfile::obfd, and VEC_free.
Referenced by _initialize_arm_tdep().
|
static |
Definition at line 2318 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(), and trad_frame_realreg_p().
Referenced by arm_exidx_unwind_sniffer().
|
static |
Definition at line 2041 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, lookup_minimal_symbol_by_pc_name(), make_cleanup(), null_cleanup(), objfile::obfd, obj_section_offset, OBSTACK_CALLOC, OBSTACK_ZALLOC, obj_section::the_bfd_section, UNMAKE_THUMB_ADDR, VEC, VEC_safe_push, xfree(), and xmalloc().
Referenced by _initialize_arm_tdep().
|
static |
Definition at line 2613 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(), NORMAL_FRAME, and safe_read_memory_unsigned_integer().
Definition at line 3973 of file arm-tdep.c.
References arch_float_type(), gdbarch_tdep::arm_ext_type, floatformats_arm_ext, and gdbarch_tdep().
Referenced by arm_extract_return_value(), arm_register_type(), and arm_store_return_value().
|
static |
Definition at line 7887 of file arm-tdep.c.
References _, regcache::arch(), ARM_A1_REGNUM, arm_ext_type(), ARM_F0_REGNUM, ARM_FLOAT_FPA, ARM_FLOAT_SOFT_FPA, ARM_FLOAT_SOFT_VFP, ARM_FLOAT_VFP, gdbarch::byte_order, FP_REGISTER_SIZE, gdbarch_byte_order(), INT_REGISTER_SIZE, internal_error(), regcache_cooked_read(), regcache_cooked_read_unsigned(), store_unsigned_integer(), target_float_convert(), TYPE_CODE, TYPE_CODE_BOOL, TYPE_CODE_CHAR, TYPE_CODE_ENUM, TYPE_CODE_FLT, TYPE_CODE_INT, TYPE_CODE_PTR, TYPE_IS_REFERENCE, and TYPE_LENGTH.
Referenced by arm_return_value().
Definition at line 2255 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().
Definition at line 338 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().
Definition at line 3927 of file arm-tdep.c.
Referenced by arm_gdbarch_init().
| int arm_frame_is_thumb | ( | struct frame_info * | frame | ) |
Definition at line 310 of file arm-tdep.c.
References ARM_PS_REGNUM, arm_psr_thumb_bit(), get_frame_arch(), and get_frame_register_unsigned().
Referenced by arm_epilogue_frame_sniffer(), arm_exidx_unwind_sniffer(), arm_pc_is_thumb(), arm_scan_prologue(), and arm_skip_bx_reg().
|
static |
Definition at line 8927 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_kind_from_current_state(), arm_breakpoint_kind_from_pc(), gdbarch_tdep::arm_breakpoint_size, arm_code_of_frame_writable(), 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_disassembler_options, arm_dummy_id(), arm_dwarf2_frame_init_reg(), arm_dwarf_reg_to_regnum(), arm_elf_make_msymbol_special(), arm_epilogue_frame_unwind, arm_exidx_unwind, 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_LR_REGNUM, arm_m_exception_unwind, arm_normal_base, ARM_NUM_REGS, ARM_PC_REGNUM, arm_print_float_info(), arm_prologue_unwind, 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_return_value(), arm_skip_prologue(), arm_skip_stub(), ARM_SP_REGNUM, arm_stack_frame_destroyed_p(), arm_stub_unwind, arm_sw_breakpoint_from_kind(), 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_assert, 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_wmmx_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_kind_from_current_state(), set_gdbarch_breakpoint_kind_from_pc(), set_gdbarch_char_signed(), set_gdbarch_code_of_frame_writable(), set_gdbarch_coff_make_msymbol_special(), set_gdbarch_disassembler_options(), 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_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_return_value(), set_gdbarch_skip_prologue(), set_gdbarch_skip_trampoline_code(), set_gdbarch_sp_regnum(), set_gdbarch_stack_frame_destroyed_p(), set_gdbarch_sw_breakpoint_from_kind(), set_gdbarch_unwind_pc(), set_gdbarch_unwind_sp(), set_gdbarch_valid_disassembler_options(), set_gdbarch_vbit_in_delta(), set_gdbarch_wchar_signed(), 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(), gdbarch_tdep::vfp_register_count, warning(), and XCNEW.
Referenced by _initialize_arm_tdep().
|
static |
Definition at line 8260 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, gdbarch_tdep::pc, and target_read_memory().
Referenced by arm_gdbarch_init().
| CORE_ADDR arm_get_next_pcs_addr_bits_remove | ( | struct arm_get_next_pcs * | self, |
| CORE_ADDR | val | ||
| ) |
Definition at line 6223 of file arm-tdep.c.
References gdbarch_addr_bits_remove().
| int arm_get_next_pcs_is_thumb | ( | struct arm_get_next_pcs * | self | ) |
Definition at line 6240 of file arm-tdep.c.
References arm_is_thumb().
| ULONGEST arm_get_next_pcs_read_memory_unsigned_integer | ( | CORE_ADDR | memaddr, |
| int | len, | ||
| int | byte_order | ||
| ) |
Definition at line 6213 of file arm-tdep.c.
References read_memory_unsigned_integer().
|
static |
Definition at line 6232 of file arm-tdep.c.
|
static |
Definition at line 1447 of file arm-tdep.c.
Referenced by arm_analyze_prologue(), and arm_stack_frame_destroyed_p_1().
| int arm_is_thumb | ( | struct regcache * | regcache | ) |
Definition at line 297 of file arm-tdep.c.
References regcache::arch(), ARM_PS_REGNUM, arm_psr_thumb_bit(), and regcache_raw_get_unsigned().
Referenced by arm_get_next_pcs_is_thumb(), and arm_linux_get_next_pcs_syscall_next_pc().
|
static |
Definition at line 495 of file arm-tdep.c.
Referenced by arm_addr_bits_remove(), and arm_m_exception_unwind_sniffer().
|
static |
Definition at line 2939 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(), 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 |
Definition at line 3000 of file arm-tdep.c.
References arm_m_exception_cache(), ARM_SP_REGNUM, frame_unwind_got_constant(), arm_prologue_cache::prev_sp, arm_prologue_cache::saved_regs, and trad_frame_get_prev_register().
|
static |
Definition at line 2981 of file arm-tdep.c.
References arm_m_exception_cache(), frame_id_build(), get_frame_pc(), and arm_prologue_cache::prev_sp.
|
static |
Definition at line 3023 of file arm-tdep.c.
References arm_m_addr_is_magic(), and get_frame_pc().
|
static |
Definition at line 2712 of file arm-tdep.c.
References trad_frame_saved_reg::addr, arm_scan_prologue(), ARM_SP_REGNUM, FRAME_OBSTACK_ZALLOC, 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_epilogue_frame_prev_register(), and arm_epilogue_frame_this_id().
|
static |
Definition at line 1823 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(), arm_prologue_this_id(), and arm_prologue_unwind_stop_reason().
|
static |
Definition at line 2872 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().
Definition at line 3986 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 |
Definition at line 8681 of file arm-tdep.c.
References gdbarch_byte_order(), offset, REG_VALID, regcache_raw_read(), regnum, status, user_reg_map_name_to_regnum(), and xsnprintf().
Referenced by arm_pseudo_read(), and arm_return_value().
Definition at line 4025 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 |
Definition at line 8760 of file arm-tdep.c.
References gdbarch_byte_order(), offset, regcache_raw_write(), regnum, user_reg_map_name_to_regnum(), and xsnprintf().
Referenced by arm_pseudo_write(), arm_push_dummy_call(), and arm_return_value().
|
static |
Definition at line 3049 of file arm-tdep.c.
References arm_make_prologue_cache(), arm_prologue_cache::framesize, and arm_prologue_cache::prev_sp.
|
static |
Definition at line 2007 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 |
Definition at line 8593 of file arm-tdep.c.
References objfile::obfd, and VEC_free.
Referenced by _initialize_arm_tdep().
Definition at line 398 of file arm-tdep.c.
References arm_fallback_mode_string, arm_find_mapping_symbol(), arm_force_mode_string, arm_frame_is_thumb(), debug_displaced, fprintf_unfiltered(), gdb_stdlog, get_current_frame(), get_displaced_step_closure_by_addr(), arm_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_kind_from_pc(), arm_linux_hw_breakpoint_initialize(), arm_push_dummy_call(), arm_skip_prologue(), arm_skip_stack_protector(), arm_stack_frame_destroyed_p(), arm_write_pc(), and gdb_print_insn_arm().
|
static |
Definition at line 3952 of file arm-tdep.c.
References _, ARM_FPS_REGNUM, fprintf_filtered(), fputs_filtered(), get_frame_register_unsigned(), print_fpu_flags(), 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, | ||
| arm_displaced_step_closure * | dsc | ||
| ) |
Definition at line 7556 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(), arm_get_next_pcs::byte_order_for_code, arm_displaced_step_closure::cleanup, debug_displaced, displaced_in_arm_mode(), err, fprintf_unfiltered(), gdb_stdlog, gdbarch_byte_order_for_code(), arm_displaced_step_closure::insn_addr, arm_displaced_step_closure::insn_size, internal_error(), arm_displaced_step_closure::is_thumb, arm_displaced_step_closure::numinsns, read_memory_unsigned_integer(), arm_displaced_step_closure::scratch_base, thumb_process_displaced_insn(), and arm_displaced_step_closure::wrote_to_pc.
Referenced by arm_linux_displaced_step_copy_insn().
| int arm_process_record | ( | struct gdbarch * | gdbarch, |
| struct regcache * | regcache, | ||
| CORE_ADDR | insn_addr | ||
| ) |
Definition at line 13176 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, 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, and THUMB_RECORD.
Referenced by arm_linux_init_abi().
|
static |
Definition at line 1903 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, and trad_frame_get_prev_register().
Referenced by arm_epilogue_frame_prev_register().
|
static |
Definition at line 1878 of file arm-tdep.c.
References arm_make_prologue_cache(), frame_id_build(), func, get_frame_func(), get_frame_pc(), and arm_prologue_cache::prev_sp.
|
static |
Definition at line 1852 of file arm-tdep.c.
References arm_make_prologue_cache(), get_frame_arch(), get_frame_pc(), and arm_prologue_cache::prev_sp.
|
static |
Definition at line 8714 of file arm-tdep.c.
References arm_neon_quad_read(), gdb_assert, gdbarch_byte_order(), gdbarch_num_regs(), gdbarch::num_regs, offset, REG_VALID, regcache_raw_read(), regnum, status, user_reg_map_name_to_regnum(), and xsnprintf().
Referenced by arm_gdbarch_init().
|
static |
Definition at line 8782 of file arm-tdep.c.
References arm_neon_quad_write(), gdb_assert, gdbarch_byte_order(), gdbarch_num_regs(), gdbarch::num_regs, offset, regcache_raw_read(), regcache_raw_write(), regnum, user_reg_map_name_to_regnum(), and xsnprintf().
Referenced by arm_gdbarch_init().
| int arm_psr_thumb_bit | ( | struct gdbarch * | gdbarch | ) |
Definition at line 286 of file arm-tdep.c.
References CPSR_T, and XPSR_T.
Referenced by arm_dwarf2_prev_register(), arm_frame_is_thumb(), arm_is_thumb(), arm_linux_get_syscall_number(), arm_linux_restart_syscall_init(), arm_linux_sigreturn_next_pc(), arm_linux_sigreturn_return_addr(), arm_process_record(), arm_prologue_prev_register(), arm_write_pc(), bx_write_pc(), and displaced_in_arm_mode().
|
static |
Definition at line 3689 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, stack_item::len, MAKE_THUMB_ADDR, memset(), 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 |
Definition at line 11526 of file arm-tdep.c.
References insn_decode_record_t::arm_insn, arm_record_exreg_ld_st_insn(), arm_record_unsupported_insn(), insn_decode_record_t::arm_regs, bit, bits, REG_ALLOC, and insn_decode_record_t::reg_rec_count.
Referenced by decode_insn(), and thumb2_record_coproc_insn().
|
static |
Definition at line 11002 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 |
Definition at line 11580 of file arm-tdep.c.
References _, insn_decode_record_t::arm_insn, ARM_PS_REGNUM, arm_record_unsupported_insn(), arm_record_vdata_transfer_insn(), arm_record_vfp_data_proc_insn(), insn_decode_record_t::arm_regs, gdbarch_tdep::arm_syscall_record, bit, bits, insn_decode_record_t::gdbarch, gdbarch_tdep(), insn_decode_record_t::opcode, printf_unfiltered(), REG_ALLOC, insn_decode_record_t::reg_rec_count, insn_decode_record_t::regcache, and regcache_raw_read_unsigned().
Referenced by decode_insn(), and thumb2_record_coproc_insn().
|
static |
Definition at line 10417 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 |
Definition at line 10228 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_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 sbo_sbz().
Referenced by decode_insn().
|
static |
Definition at line 11120 of file arm-tdep.c.
References ARM_D0_REGNUM, insn_decode_record_t::arm_insn, insn_decode_record_t::arm_mems, 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, and regcache_raw_read_unsigned().
Referenced by arm_record_asimd_vfp_coproc().
|
static |
Definition at line 9965 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, in_inclusive_range(), INSN_RECORDED, 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, and regcache_raw_read_unsigned().
Referenced by decode_insn().
|
static |
Definition at line 10545 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_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, and regcache_raw_read_unsigned().
Referenced by decode_insn().
|
static |
Definition at line 10902 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, INT_REGISTER_SIZE, MEM_ALLOC, insn_decode_record_t::mem_rec_count, REG_ALLOC, insn_decode_record_t::reg_rec_count, insn_decode_record_t::regcache, and regcache_raw_read_unsigned().
Referenced by decode_insn().
|
static |
Definition at line 10636 of file arm-tdep.c.
References insn_decode_record_t::arm_insn, insn_decode_record_t::arm_mems, ARM_PS_REGNUM, arm_record_media(), 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_signed(), and regcache_raw_read_unsigned().
Referenced by decode_insn().
|
static |
Definition at line 10461 of file arm-tdep.c.
References insn_decode_record_t::arm_insn, ARM_PS_REGNUM, insn_decode_record_t::arm_regs, bit, bits, REG_ALLOC, and insn_decode_record_t::reg_rec_count.
Referenced by arm_record_ld_st_reg_offset().
|
static |
Definition at line 8603 of file arm-tdep.c.
References arm_compare_mapping_symbols(), arm_objfile_data_key, gdb_assert, name, objfile::obfd, 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 |
Definition at line 9797 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, and regcache_raw_read_unsigned().
Referenced by arm_record_data_proc_misc_ld_str(), and arm_record_extension_space().
|
static |
Definition at line 11022 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 arm_record_asimd_vfp_coproc(), arm_record_coproc_data_proc(), decode_insn(), thumb2_record_branch_misc_cntrl(), and thumb2_record_ld_st_multiple().
|
static |
Definition at line 11034 of file arm-tdep.c.
References ARM_D0_REGNUM, ARM_FPSCR_REGNUM, insn_decode_record_t::arm_insn, ARM_PS_REGNUM, insn_decode_record_t::arm_regs, bit, bits, REG_ALLOC, and insn_decode_record_t::reg_rec_count.
Referenced by arm_record_coproc_data_proc().
|
static |
Definition at line 11315 of file arm-tdep.c.
References ARM_D0_REGNUM, ARM_FPSCR_REGNUM, insn_decode_record_t::arm_insn, insn_decode_record_t::arm_regs, bit, bits, gdb_assert_not_reached, REG_ALLOC, and insn_decode_record_t::reg_rec_count.
Referenced by arm_record_coproc_data_proc().
|
static |
Definition at line 8869 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 |
Definition at line 8519 of file arm-tdep.c.
References arm_register_names, gdbarch_num_regs(), and gdbarch::num_regs.
Referenced by arm_gdbarch_init().
|
static |
Definition at line 8844 of file arm-tdep.c.
References all_reggroup, ARM_FPS_REGNUM, default_register_reggroup_p(), float_reggroup, regnum, restore_reggroup, and save_reggroup.
Referenced by arm_gdbarch_init().
|
static |
Definition at line 4170 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().
Definition at line 4060 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, regnum, tdesc_has_registers(), tdesc_register_type(), TYPE_CODE, and TYPE_CODE_FLT.
Referenced by arm_gdbarch_init().
Definition at line 7981 of file arm-tdep.c.
References ARM_ABI_APCS, check_typedef(), code, INT_REGISTER_SIZE, TYPE_CODE, TYPE_CODE_ARRAY, TYPE_CODE_COMPLEX, TYPE_CODE_FLT, TYPE_CODE_STRUCT, TYPE_CODE_UNION, TYPE_FIELD_BITPOS, TYPE_FIELD_BITSIZE, TYPE_FIELD_TYPE, TYPE_LENGTH, TYPE_NFIELDS, and TYPE_VECTOR.
Referenced by arm_return_value().
|
static |
Definition at line 8189 of file arm-tdep.c.
References 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(), 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, user_reg_map_name_to_regnum(), value_type(), and xsnprintf().
Referenced by arm_gdbarch_init().
|
static |
Definition at line 1732 of file arm-tdep.c.
References arm_analyze_prologue(), ARM_FP_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(), gdbarch::return_value, safe_read_memory_unsigned_integer(), and thumb_scan_prologue().
Referenced by arm_make_epilogue_frame_cache(), and arm_make_prologue_cache().
|
static |
Definition at line 8427 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 |
Definition at line 8447 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 |
Definition at line 8463 of file arm-tdep.c.
References _, arm_fallback_mode_string, and fprintf_filtered().
Referenced by _initialize_arm_tdep().
|
static |
Definition at line 8473 of file arm-tdep.c.
References _, arm_force_mode_string, and fprintf_filtered().
Referenced by _initialize_arm_tdep().
|
static |
Definition at line 2840 of file arm-tdep.c.
References arm_frame_is_thumb(), bits, gdbarch::byte_order_for_code, extract_unsigned_integer(), gdbarch_byte_order_for_code(), get_frame_arch(), get_frame_register_unsigned(), target_read_memory(), and UNMAKE_THUMB_ADDR.
Referenced by arm_skip_stub(), and arm_stub_unwind_sniffer().
Definition at line 1317 of file arm-tdep.c.
References arm_analyze_prologue(), arm_pc_is_thumb(), arm_skip_stack_protector(), COMPUNIT_PRODUCER, find_pc_compunit_symtab(), find_pc_partial_function(), skip_prologue_using_sal(), startswith(), and thumb_analyze_prologue().
Referenced by arm_gdbarch_init().
Definition at line 1230 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, MSYMBOL_LINKAGE_NAME, offset, read_code_unsigned_integer(), and startswith().
Referenced by arm_skip_prologue().
| CORE_ADDR arm_skip_stub | ( | struct frame_info * | frame, |
| CORE_ADDR | pc | ||
| ) |
Definition at line 8282 of file arm-tdep.c.
References arm_skip_bx_reg(), BMSYMBOL_VALUE_ADDRESS, find_pc_partial_function(), find_pc_section(), get_frame_register_unsigned(), lookup_minimal_symbol(), bound_minimal_symbol::minsym, name, obj_section::objfile, objfile::objfile(), offset, gdbarch_tdep::pc, startswith(), and target_name.
Referenced by arm_gdbarch_init(), arm_linux_skip_trampoline_code(), and arm_pe_skip_trampoline_code().
Definition at line 6251 of file arm-tdep.c.
References regcache::arch(), arm_get_next_pcs(), arm_get_next_pcs_ctor(), gdbarch_addr_bits_remove(), gdbarch_byte_order(), and gdbarch_byte_order_for_code().
Referenced by arm_fbsd_init_abi(), arm_netbsd_init_abi_common(), arm_wince_init_abi(), and armobsd_init_abi().
Definition at line 3314 of file arm-tdep.c.
References arm_pc_is_thumb(), arm_stack_frame_destroyed_p_1(), and thumb_stack_frame_destroyed_p().
Referenced by arm_gdbarch_init().
Definition at line 3263 of file arm-tdep.c.
References arm_instruction_restores_sp(), bits, gdbarch::byte_order_for_code, find_pc_partial_function(), gdbarch_byte_order_for_code(), INST_NV, and read_memory_unsigned_integer().
Referenced by arm_epilogue_frame_sniffer(), and arm_stack_frame_destroyed_p().
|
static |
Definition at line 8096 of file arm-tdep.c.
References _, regcache::arch(), ARM_A1_REGNUM, arm_ext_type(), ARM_F0_REGNUM, ARM_FLOAT_FPA, ARM_FLOAT_SOFT_FPA, ARM_FLOAT_SOFT_VFP, ARM_FLOAT_VFP, gdbarch::byte_order, FP_REGISTER_SIZE, gdbarch_byte_order(), INT_REGISTER_SIZE, internal_error(), regcache_cooked_write(), store_signed_integer(), target_float_convert(), TYPE_CODE, TYPE_CODE_BOOL, TYPE_CODE_CHAR, TYPE_CODE_ENUM, TYPE_CODE_FLT, TYPE_CODE_INT, TYPE_CODE_PTR, TYPE_IS_REFERENCE, TYPE_LENGTH, and unpack_long().
Referenced by arm_return_value().
|
static |
Definition at line 2887 of file arm-tdep.c.
References arm_make_stub_cache(), frame_id_build(), get_frame_pc(), and arm_prologue_cache::prev_sp.
|
static |
Definition at line 2901 of file arm-tdep.c.
References arm_skip_bx_reg(), dummy, find_pc_partial_function(), get_frame_address_in_block(), get_frame_pc(), in_plt_section(), name, and target_read_memory().
|
static |
Definition at line 7818 of file arm-tdep.c.
References ARM_BP_KIND_ARM, ARM_BP_KIND_THUMB, ARM_BP_KIND_THUMB2, gdbarch_tdep::arm_breakpoint, gdbarch_tdep::arm_breakpoint_size, gdb_assert_not_reached, gdbarch_tdep(), size, gdbarch_tdep::thumb2_breakpoint, gdbarch_tdep::thumb2_breakpoint_size, gdbarch_tdep::thumb_breakpoint, and gdbarch_tdep::thumb_breakpoint_size.
Referenced by arm_gdbarch_init().
|
static |
Definition at line 3358 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_RVALUE_REF, TYPE_CODE_SET, TYPE_CODE_STRUCT, TYPE_CODE_UNION, TYPE_FIELD_TYPE, TYPE_LENGTH, TYPE_NFIELDS, TYPE_TARGET_TYPE, and TYPE_VECTOR.
Referenced by arm_push_dummy_call().
|
static |
Definition at line 3086 of file arm-tdep.c.
References arm_addr_bits_remove(), ARM_PC_REGNUM, and frame_unwind_register_unsigned().
Referenced by arm_gdbarch_init().
|
static |
Definition at line 3094 of file arm-tdep.c.
References ARM_SP_REGNUM, and frame_unwind_register_unsigned().
Referenced by arm_gdbarch_init().
|
static |
Definition at line 8374 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().
Definition at line 3670 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 |
Definition at line 3653 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 |
Definition at line 3449 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 |
Definition at line 3481 of file arm-tdep.c.
References arm_vfp_cprc_unit_length(), check_typedef(), field_is_static(), gdb_assert, TYPE_CODE, TYPE_CODE_ARRAY, TYPE_CODE_COMPLEX, TYPE_CODE_FLT, TYPE_CODE_STRUCT, TYPE_CODE_UNION, TYPE_FIELD, TYPE_FIELD_TYPE, TYPE_LENGTH, TYPE_NFIELDS, TYPE_TARGET_TYPE, TYPE_VECTOR, VFP_CPRC_DOUBLE, VFP_CPRC_SINGLE, VFP_CPRC_UNKNOWN, VFP_CPRC_VEC128, and VFP_CPRC_VEC64.
Referenced by arm_vfp_call_candidate().
|
static |
Definition at line 3427 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().
Definition at line 8653 of file arm-tdep.c.
References regcache::arch(), arm_apcs_32, arm_pc_is_thumb(), ARM_PC_REGNUM, ARM_PS_REGNUM, arm_psr_thumb_bit(), regcache_cooked_read_unsigned(), and regcache_cooked_write_unsigned().
Referenced by arm_gdbarch_init().
|
static |
Definition at line 4465 of file arm-tdep.c.
References ARM_PC_REGNUM, arm_displaced_step_closure::is_thumb, and regcache_cooked_write_unsigned().
Referenced by alu_write_pc(), displaced_write_reg(), and load_write_pc().
Definition at line 4481 of file arm-tdep.c.
References _, regcache::arch(), ARM_PC_REGNUM, ARM_PS_REGNUM, arm_psr_thumb_bit(), cleanup_check::ps, regcache_cooked_read_unsigned(), regcache_cooked_write_unsigned(), and warning().
Referenced by alu_write_pc(), displaced_write_reg(), and load_write_pc().
|
static |
Definition at line 5156 of file arm-tdep.c.
References ALU_WRITE_PC, CANNOT_WRITE_PC, displaced_read_reg(), displaced_write_reg(), arm_displaced_step_closure::rd, and arm_displaced_step_closure::tmp.
Referenced by arm_copy_alu_imm(), and thumb2_copy_alu_imm().
|
static |
Definition at line 5268 of file arm-tdep.c.
References ALU_WRITE_PC, CANNOT_WRITE_PC, displaced_read_reg(), displaced_write_reg(), arm_displaced_step_closure::rd, and arm_displaced_step_closure::tmp.
Referenced by install_alu_reg().
|
static |
Definition at line 5366 of file arm-tdep.c.
References ALU_WRITE_PC, CANNOT_WRITE_PC, displaced_read_reg(), displaced_write_reg(), arm_displaced_step_closure::rd, and arm_displaced_step_closure::tmp.
Referenced by install_alu_shifted_reg().
|
static |
Definition at line 5823 of file arm-tdep.c.
References _, ARM_PC_REGNUM, ARM_PS_REGNUM, arm_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(), status, and arm_displaced_step_closure::u.
Referenced by arm_copy_block_xfer().
|
static |
Definition at line 5934 of file arm-tdep.c.
References _, ARM_PC_REGNUM, ARM_PS_REGNUM, bitcount(), arm_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, status, arm_displaced_step_closure::tmp, and arm_displaced_step_closure::u.
Referenced by arm_copy_block_xfer(), thumb2_copy_block_xfer(), and thumb_copy_pop_pc_16bit().
|
static |
Definition at line 5884 of file arm-tdep.c.
References ARM_PS_REGNUM, bitcount(), arm_displaced_step_closure::block, condition_true(), debug_displaced, displaced_read_reg(), fprintf_unfiltered(), gdb_stdlog, gdbarch_byte_order(), arm_displaced_step_closure::insn_addr, offset, read_memory_unsigned_integer(), arm_displaced_step_closure::scratch_base, status, arm_displaced_step_closure::u, and write_memory_unsigned_integer().
Referenced by arm_copy_block_xfer(), and thumb2_copy_block_xfer().
|
static |
Definition at line 4906 of file arm-tdep.c.
References ARM_LR_REGNUM, ARM_PC_REGNUM, ARM_PS_REGNUM, arm_displaced_step_closure::branch, BRANCH_WRITE_PC, BX_WRITE_PC, CANNOT_WRITE_PC, condition_true(), displaced_read_reg(), displaced_write_reg(), arm_displaced_step_closure::insn_addr, arm_displaced_step_closure::insn_size, arm_displaced_step_closure::is_thumb, status, and arm_displaced_step_closure::u.
Referenced by install_b_bl_blx(), install_bx_blx_reg(), thumb2_copy_table_branch(), thumb_copy_b(), and thumb_copy_cbnz_cbz().
|
static |
Definition at line 4816 of file arm-tdep.c.
References CANNOT_WRITE_PC, displaced_read_reg(), displaced_write_reg(), arm_displaced_step_closure::ldst, LOAD_WRITE_PC, arm_displaced_step_closure::tmp, and arm_displaced_step_closure::u.
Referenced by install_copro_load_store().
|
static |
Definition at line 5452 of file arm-tdep.c.
References CANNOT_WRITE_PC, displaced_read_reg(), displaced_write_reg(), arm_displaced_step_closure::ldst, LOAD_WRITE_PC, arm_displaced_step_closure::rd, arm_displaced_step_closure::tmp, and arm_displaced_step_closure::u.
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 |
Definition at line 7130 of file arm-tdep.c.
References ARM_PC_REGNUM, BX_WRITE_PC, CANNOT_WRITE_PC, displaced_read_reg(), displaced_write_reg(), and arm_displaced_step_closure::tmp.
Referenced by thumb_copy_pop_pc_16bit().
|
static |
Definition at line 4670 of file arm-tdep.c.
References CANNOT_WRITE_PC, displaced_write_reg(), arm_displaced_step_closure::preload, arm_displaced_step_closure::tmp, and arm_displaced_step_closure::u.
Referenced by install_preload(), install_preload_reg(), and thumb2_copy_preload().
|
static |
Definition at line 5481 of file arm-tdep.c.
References CANNOT_WRITE_PC, displaced_read_reg(), displaced_write_reg(), arm_displaced_step_closure::ldst, arm_displaced_step_closure::tmp, and arm_displaced_step_closure::u.
Referenced by arm_copy_extra_ld_st(), arm_copy_ldr_str_ldrb_strb(), and install_load_store().
|
static |
Definition at line 6275 of file arm-tdep.c.
References ARM_PC_REGNUM, BRANCH_WRITE_PC, debug_displaced, displaced_write_reg(), fprintf_unfiltered(), gdb_stdlog, arm_displaced_step_closure::insn_addr, and arm_displaced_step_closure::insn_size.
Referenced by install_svc().
|
static |
Definition at line 8559 of file arm-tdep.c.
Referenced by arm_coff_make_msymbol_special().
|
static |
Definition at line 13164 of file arm-tdep.c.
References arm-linux::record(), and xfree().
Referenced by arm_process_record().
|
static |
Definition at line 12952 of file arm-tdep.c.
References _, insn_decode_record_t::arm_insn, ARM_RECORD, arm_record_asimd_vfp_coproc(), arm_record_b_bl(), 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_SUCCESS, arm_record_unsupported_insn(), bits, insn_decode_record_t::cond, extract_arm_insn(), gdb_assert_not_reached, insn_decode_record_t::gdbarch, paddress(), printf_unfiltered(), record_debug, insn_decode_record_t::this_addr, THUMB2_RECORD, thumb2_record_decode_insn_handler(), 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 |
Definition at line 7323 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().
| DEF_VEC_O | ( | arm_mapping_symbol_s | ) |
| DEF_VEC_O | ( | arm_exidx_entry_s | ) |
|
static |
Definition at line 4452 of file arm-tdep.c.
References regcache::arch(), ARM_PS_REGNUM, arm_psr_thumb_bit(), cleanup_check::ps, and regcache_cooked_read_unsigned().
Referenced by arm_process_displaced_insn().
| ULONGEST displaced_read_reg | ( | struct regcache * | regs, |
| arm_displaced_step_closure * | dsc, | ||
| int | regno | ||
| ) |
Definition at line 4417 of file arm-tdep.c.
References ARM_PC_REGNUM, debug_displaced, fprintf_unfiltered(), gdb_stdlog, arm_displaced_step_closure::insn_addr, arm_displaced_step_closure::is_thumb, and regcache_cooked_read_unsigned().
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, |
| arm_displaced_step_closure * | dsc, | ||
| int | regno, | ||
| ULONGEST | val, | ||
| enum pc_write_style | write_pc | ||
| ) |
Definition at line 4537 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 arm_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 |
Definition at line 4204 of file arm-tdep.c.
References target_read_code(), xfree(), and xmalloc().
Referenced by arm_adjust_breakpoint_address().
|
static |
Definition at line 12931 of file arm-tdep.c.
References insn_decode_record_t::arm_insn, extract_unsigned_integer(), insn_decode_record_t::gdbarch, gdbarch_byte_order_for_code(), memset(), and insn_decode_record_t::this_addr.
Referenced by arm_process_record(), and decode_insn().
|
static |
Definition at line 7693 of file arm-tdep.c.
References gdb_disassembler::arch(), arm_pc_is_thumb(), default_print_insn(), exec_bfd, and UNMAKE_THUMB_ADDR.
Referenced by arm_gdbarch_init().
|
static |
Definition at line 4591 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 |
Definition at line 5283 of file arm-tdep.c.
References CANNOT_WRITE_PC, arm_displaced_step_closure::cleanup, cleanup_alu_reg(), displaced_read_reg(), displaced_write_reg(), arm_displaced_step_closure::rd, and arm_displaced_step_closure::tmp.
Referenced by arm_copy_alu_reg(), and thumb_copy_alu_reg().
|
static |
Definition at line 5380 of file arm-tdep.c.
References CANNOT_WRITE_PC, arm_displaced_step_closure::cleanup, cleanup_alu_shifted_reg(), displaced_read_reg(), displaced_write_reg(), arm_displaced_step_closure::rd, and arm_displaced_step_closure::tmp.
Referenced by arm_copy_alu_shifted_reg().
|
static |
Definition at line 4937 of file arm-tdep.c.
References arm_displaced_step_closure::branch, arm_displaced_step_closure::cleanup, cleanup_branch(), arm_displaced_step_closure::insn_addr, arm_displaced_step_closure::is_thumb, offset, and arm_displaced_step_closure::u.
Referenced by arm_copy_b_bl_blx(), and thumb2_copy_b_bl_blx().
|
static |
Definition at line 5091 of file arm-tdep.c.
References arm_displaced_step_closure::branch, arm_displaced_step_closure::cleanup, cleanup_branch(), displaced_read_reg(), and arm_displaced_step_closure::u.
Referenced by arm_copy_bx_blx_reg(), and thumb_copy_bx_blx_reg().
|
static |
Definition at line 4829 of file arm-tdep.c.
References CANNOT_WRITE_PC, arm_displaced_step_closure::cleanup, cleanup_copro_load_store(), displaced_read_reg(), displaced_write_reg(), arm_displaced_step_closure::ldst, arm_displaced_step_closure::tmp, and arm_displaced_step_closure::u.
Referenced by arm_copy_copro_load_store(), and thumb2_copy_copro_load_store().
|
static |
Definition at line 5578 of file arm-tdep.c.
References CANNOT_WRITE_PC, arm_displaced_step_closure::cleanup, cleanup_load(), cleanup_store(), displaced_read_reg(), displaced_write_reg(), arm_displaced_step_closure::ldst, arm_displaced_step_closure::rd, size, arm_displaced_step_closure::tmp, and arm_displaced_step_closure::u.
Referenced by arm_copy_ldr_str_ldrb_strb(), and thumb2_copy_load_reg_imm().
|
static |
Definition at line 6913 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 |
Definition at line 4679 of file arm-tdep.c.
References CANNOT_WRITE_PC, arm_displaced_step_closure::cleanup, cleanup_preload(), displaced_read_reg(), displaced_write_reg(), arm_displaced_step_closure::preload, arm_displaced_step_closure::tmp, and arm_displaced_step_closure::u.
Referenced by arm_copy_preload().
|
static |
Definition at line 4768 of file arm-tdep.c.
References CANNOT_WRITE_PC, arm_displaced_step_closure::cleanup, cleanup_preload(), displaced_read_reg(), displaced_write_reg(), arm_displaced_step_closure::preload, arm_displaced_step_closure::tmp, and arm_displaced_step_closure::u.
Referenced by arm_copy_preload_reg().
|
static |
Definition at line 6291 of file arm-tdep.c.
References arm_displaced_step_closure::cleanup, cleanup_svc(), arm_displaced_step_closure::svc, arm_displaced_step_closure::u, and arm_displaced_step_closure::wrote_to_pc.
Referenced by arm_copy_svc(), and thumb_copy_svc().
|
static |
Definition at line 4511 of file arm-tdep.c.
References branch_write_pc(), bx_write_pc(), and DISPLACED_STEPPING_ARCH_VERSION.
Referenced by displaced_write_reg().
|
static |
Definition at line 3345 of file arm-tdep.c.
References stack_item::data, stack_item::prev, and xfree().
Referenced by arm_push_dummy_call().
|
static |
Definition at line 3934 of file arm-tdep.c.
References flags, fputc_filtered(), and fputs_filtered().
Referenced by arm_print_float_info().
|
static |
Definition at line 3333 of file arm-tdep.c.
References stack_item::data, stack_item::len, stack_item::prev, xmalloc(), and XNEW.
Referenced by arm_push_dummy_call().
|
static |
Definition at line 9755 of file arm-tdep.c.
References bits, and arm_mem_r::len.
Referenced by arm_record_data_proc_imm(), and arm_record_data_proc_misc_ld_str().
|
static |
Definition at line 8360 of file arm-tdep.c.
References _, all_commands, gdb_stdout, help_list(), printf_unfiltered(), and setarmcmdlist.
Referenced by _initialize_arm_tdep().
|
static |
Definition at line 8488 of file arm-tdep.c.
References disassembly_style, set_disassembler_options(), and string.
Referenced by _initialize_arm_tdep().
|
static |
Definition at line 8390 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 |
Definition at line 8368 of file arm-tdep.c.
References cmd_show_list(), and showarmcmdlist.
Referenced by _initialize_arm_tdep().
|
static |
Definition at line 8498 of file arm-tdep.c.
References fprintf_unfiltered(), get_current_arch(), and get_disassembler_options().
Referenced by _initialize_arm_tdep().
|
static |
Definition at line 8410 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().
Definition at line 537 of file arm-tdep.c.
References BMSYMBOL_VALUE_ADDRESS, gdbarch_byte_order_for_code(), lookup_minimal_symbol_by_pc(), MSYMBOL_LINKAGE_NAME, name, read_code_unsigned_integer(), and startswith().
Referenced by arm_analyze_prologue(), and thumb_analyze_prologue().
|
static |
Definition at line 5214 of file arm-tdep.c.
References ARM_PC_REGNUM, bits, CANNOT_WRITE_PC, arm_displaced_step_closure::cleanup, cleanup_alu_imm(), debug_displaced, displaced_read_reg(), displaced_write_reg(), fprintf_unfiltered(), gdb_assert, gdb_stdlog, arm_displaced_step_closure::modinsn, arm_displaced_step_closure::numinsns, arm_displaced_step_closure::rd, thumb_copy_unmodified_32bit(), and arm_displaced_step_closure::tmp.
Referenced by thumb2_decode_dp_shift_reg().
|
static |
Definition at line 4995 of file arm-tdep.c.
References bit, bits, debug_displaced, fprintf_unfiltered(), gdb_stdlog, INST_AL, install_b_bl_blx(), arm_displaced_step_closure::modinsn, offset, sbits, and THUMB_NOP.
Referenced by thumb_process_displaced_32bit_insn().
|
static |
Definition at line 6128 of file arm-tdep.c.
References _, ARM_PC_REGNUM, bit, bitcount(), bits, arm_displaced_step_closure::block, arm_displaced_step_closure::cleanup, cleanup_block_load_pc(), cleanup_block_store_pc(), debug_displaced, displaced_read_reg(), fprintf_unfiltered(), gdb_assert, gdb_stdlog, INST_AL, arm_displaced_step_closure::modinsn, arm_displaced_step_closure::numinsns, thumb_copy_unmodified_32bit(), arm_displaced_step_closure::tmp, arm_displaced_step_closure::u, and warning().
Referenced by thumb_process_displaced_32bit_insn().
|
static |
Definition at line 4877 of file arm-tdep.c.
References ARM_PC_REGNUM, bits, debug_displaced, fprintf_unfiltered(), gdb_stdlog, install_copro_load_store(), arm_displaced_step_closure::modinsn, arm_displaced_step_closure::numinsns, and thumb_copy_unmodified_32bit().
Referenced by thumb2_decode_ext_reg_ld_st(), and thumb2_decode_svc_copro().
|
static |
Definition at line 5633 of file arm-tdep.c.
References ARM_PC_REGNUM, bit, bits, CANNOT_WRITE_PC, arm_displaced_step_closure::cleanup, cleanup_load(), debug_displaced, displaced_read_reg(), displaced_write_reg(), fprintf_unfiltered(), gdb_stdlog, arm_displaced_step_closure::insn_addr, arm_displaced_step_closure::ldst, arm_displaced_step_closure::modinsn, arm_displaced_step_closure::numinsns, arm_displaced_step_closure::rd, size, arm_displaced_step_closure::tmp, and arm_displaced_step_closure::u.
Referenced by decode_thumb_32bit_ld_mem_hints().
|
static |
Definition at line 5689 of file arm-tdep.c.
References ARM_PC_REGNUM, bits, debug_displaced, fprintf_unfiltered(), gdb_stdlog, install_load_store(), arm_displaced_step_closure::ldst, arm_displaced_step_closure::modinsn, arm_displaced_step_closure::numinsns, thumb_copy_unmodified_32bit(), and arm_displaced_step_closure::u.
Referenced by decode_thumb_32bit_ld_mem_hints().
|
static |
Definition at line 4718 of file arm-tdep.c.
References ARM_PC_REGNUM, bit, bits, CANNOT_WRITE_PC, arm_displaced_step_closure::cleanup, cleanup_preload(), debug_displaced, displaced_read_reg(), displaced_write_reg(), fprintf_unfiltered(), gdb_stdlog, arm_displaced_step_closure::insn_addr, arm_displaced_step_closure::modinsn, arm_displaced_step_closure::numinsns, arm_displaced_step_closure::preload, thumb_copy_unmodified_32bit(), arm_displaced_step_closure::tmp, and arm_displaced_step_closure::u.
Referenced by decode_thumb_32bit_ld_mem_hints().
|
static |
Definition at line 7086 of file arm-tdep.c.
References bit, bits, arm_displaced_step_closure::branch, arm_get_next_pcs::byte_order, arm_displaced_step_closure::cleanup, cleanup_branch(), debug_displaced, displaced_read_reg(), extract_unsigned_integer(), fprintf_unfiltered(), gdb_stdlog, gdbarch_byte_order(), arm_displaced_step_closure::insn_addr, INST_AL, target_read_memory(), and arm_displaced_step_closure::u.
Referenced by thumb_process_displaced_32bit_insn().
|
static |
Definition at line 6770 of file arm-tdep.c.
References bits, thumb2_copy_alu_imm(), and thumb_copy_unmodified_32bit().
Referenced by thumb_process_displaced_32bit_insn().
|
static |
Definition at line 6791 of file arm-tdep.c.
References bits, thumb2_copy_copro_load_store(), and thumb_copy_unmodified_32bit().
Referenced by thumb2_decode_svc_copro().
|
static |
Definition at line 6872 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 |
Definition at line 12610 of file arm-tdep.c.
References ARM_D0_REGNUM, insn_decode_record_t::arm_insn, insn_decode_record_t::arm_mems, insn_decode_record_t::arm_regs, bit, bits, if(), MEM_ALLOC, insn_decode_record_t::mem_rec_count, REG_ALLOC, insn_decode_record_t::reg_rec_count, insn_decode_record_t::regcache, and regcache_raw_read_unsigned().
Referenced by thumb2_record_decode_insn_handler().
|
static |
Definition at line 12390 of file arm-tdep.c.
References insn_decode_record_t::arm_insn, ARM_LR_REGNUM, ARM_PS_REGNUM, ARM_RECORD_SUCCESS, arm_record_unsupported_insn(), insn_decode_record_t::arm_regs, bits, REG_ALLOC, and insn_decode_record_t::reg_rec_count.
Referenced by thumb2_record_decode_insn_handler().
|
static |
Definition at line 12599 of file arm-tdep.c.
References insn_decode_record_t::arm_insn, arm_record_asimd_vfp_coproc(), arm_record_coproc_data_proc(), and bit.
Referenced by thumb2_record_decode_insn_handler().
|
static |
Definition at line 12342 of file arm-tdep.c.
References insn_decode_record_t::arm_insn, ARM_PS_REGNUM, ARM_RECORD_SUCCESS, insn_decode_record_t::arm_regs, bits, REG_ALLOC, and insn_decode_record_t::reg_rec_count.
Referenced by thumb2_record_decode_insn_handler().
|
static |
Definition at line 12798 of file arm-tdep.c.
References insn_decode_record_t::arm_insn, bit, bits, thumb2_record_asimd_struct_ld_st(), thumb2_record_branch_misc_cntrl(), thumb2_record_coproc_insn(), thumb2_record_data_proc_sreg_mimm(), thumb2_record_ld_mem_hints(), thumb2_record_ld_st_dual_ex_tbb(), thumb2_record_ld_st_multiple(), thumb2_record_ld_word(), thumb2_record_lmul_lmla_div(), thumb2_record_ps_dest_generic(), and thumb2_record_str_single_data().
Referenced by decode_insn().
|
static |
Definition at line 12520 of file arm-tdep.c.
References insn_decode_record_t::arm_insn, ARM_PC_REGNUM, ARM_PS_REGNUM, ARM_RECORD_FAILURE, ARM_RECORD_SUCCESS, insn_decode_record_t::arm_regs, bits, REG_ALLOC, and insn_decode_record_t::reg_rec_count.
Referenced by thumb2_record_decode_insn_handler().
|
static |
Definition at line 12225 of file arm-tdep.c.
References insn_decode_record_t::arm_insn, insn_decode_record_t::arm_mems, ARM_PS_REGNUM, ARM_RECORD_SUCCESS, insn_decode_record_t::arm_regs, bit, bits, 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, and regcache_raw_read_unsigned().
Referenced by thumb2_record_decode_insn_handler().
|
static |
Definition at line 12130 of file arm-tdep.c.
References insn_decode_record_t::arm_insn, insn_decode_record_t::arm_mems, ARM_PS_REGNUM, ARM_RECORD_SUCCESS, arm_record_unsupported_insn(), insn_decode_record_t::arm_regs, bit, bits, 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, and regcache_raw_read_unsigned().
Referenced by thumb2_record_decode_insn_handler().
|
static |
Definition at line 12546 of file arm-tdep.c.
References insn_decode_record_t::arm_insn, ARM_PS_REGNUM, ARM_RECORD_SUCCESS, insn_decode_record_t::arm_regs, bits, REG_ALLOC, and insn_decode_record_t::reg_rec_count.
Referenced by thumb2_record_decode_insn_handler().
|
static |
Definition at line 12563 of file arm-tdep.c.
References insn_decode_record_t::arm_insn, ARM_PS_REGNUM, ARM_RECORD_FAILURE, ARM_RECORD_SUCCESS, insn_decode_record_t::arm_regs, bits, REG_ALLOC, and insn_decode_record_t::reg_rec_count.
Referenced by thumb2_record_decode_insn_handler().
|
static |
Definition at line 12371 of file arm-tdep.c.
References insn_decode_record_t::arm_insn, ARM_PS_REGNUM, ARM_RECORD_SUCCESS, insn_decode_record_t::arm_regs, bits, REG_ALLOC, and insn_decode_record_t::reg_rec_count.
Referenced by thumb2_record_decode_insn_handler().
|
static |
Definition at line 12430 of file arm-tdep.c.
References insn_decode_record_t::arm_insn, insn_decode_record_t::arm_mems, ARM_RECORD_SUCCESS, insn_decode_record_t::arm_regs, bit, bits, gdb_assert_not_reached, MEM_ALLOC, insn_decode_record_t::mem_rec_count, REG_ALLOC, insn_decode_record_t::reg_rec_count, insn_decode_record_t::regcache, and regcache_raw_read_unsigned().
Referenced by thumb2_record_decode_insn_handler().
|
static |
Definition at line 6357 of file arm-tdep.c.
References debug_displaced, fprintf_unfiltered(), gdb_stdlog, arm_displaced_step_closure::modinsn, and arm_displaced_step_closure::numinsns.
Referenced by decode_thumb_32bit_ld_mem_hints(), and thumb2_decode_svc_copro().
|
static |
Definition at line 643 of file arm-tdep.c.
References trad_frame_saved_reg::addr, arm_debug, ARM_FP_REGNUM, ARM_LR_REGNUM, ARM_SP_REGNUM, bit, bits, EXTRACT_MOVW_MOVT_IMM_T, pv_area::find_reg(), 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, loc, offset, paddress(), pv_add(), pv_add_constant(), pv_constant(), pv_is_constant(), pv_is_register(), pv_register(), read_code_unsigned_integer(), read_memory_unsigned_integer(), arm_prologue_cache::saved_regs, sbits, skip_prologue_function(), pv_area::store(), pv_area::store_would_trash(), thumb2_instruction_changes_pc(), thumb_expand_immediate(), THUMB_FP_REGNUM, thumb_insn_size(), thumb_instruction_changes_pc(), and thumb_instruction_restores_sp().
Referenced by arm_skip_prologue(), and thumb_scan_prologue().
|
static |
Definition at line 6998 of file arm-tdep.c.
References ARM_PC_REGNUM, bits, CANNOT_WRITE_PC, arm_displaced_step_closure::cleanup, cleanup_load(), debug_displaced, displaced_read_reg(), displaced_write_reg(), fprintf_unfiltered(), gdb_stdlog, arm_displaced_step_closure::ldst, arm_displaced_step_closure::modinsn, arm_displaced_step_closure::rd, arm_displaced_step_closure::tmp, and arm_displaced_step_closure::u.
Referenced by thumb_process_displaced_16bit_insn().
|
static |
Definition at line 5340 of file arm-tdep.c.
References ARM_PC_REGNUM, bit, bits, debug_displaced, fprintf_unfiltered(), gdb_stdlog, install_alu_reg(), arm_displaced_step_closure::modinsn, and thumb_copy_unmodified_16bit().
Referenced by thumb_process_displaced_16bit_insn().
|
static |
Definition at line 5051 of file arm-tdep.c.
References bits, arm_displaced_step_closure::branch, arm_displaced_step_closure::cleanup, cleanup_branch(), debug_displaced, fprintf_unfiltered(), gdb_stdlog, arm_displaced_step_closure::insn_addr, INST_AL, arm_displaced_step_closure::modinsn, offset, sbits, THUMB_NOP, and arm_displaced_step_closure::u.
Referenced by thumb_process_displaced_16bit_insn().
|
static |
Definition at line 5134 of file arm-tdep.c.
References bit, bits, debug_displaced, fprintf_unfiltered(), gdb_stdlog, INST_AL, install_bx_blx_reg(), arm_displaced_step_closure::modinsn, and THUMB_NOP.
Referenced by thumb_process_displaced_16bit_insn().
|
static |
Definition at line 7048 of file arm-tdep.c.
References bit, bits, arm_displaced_step_closure::branch, arm_displaced_step_closure::cleanup, cleanup_branch(), debug_displaced, displaced_read_reg(), fprintf_unfiltered(), gdb_stdlog, arm_displaced_step_closure::insn_addr, INST_AL, arm_displaced_step_closure::modinsn, THUMB_NOP, and arm_displaced_step_closure::u.
Referenced by thumb_process_displaced_16bit_insn().
|
static |
Definition at line 6931 of file arm-tdep.c.
References install_pc_relative(), and arm_displaced_step_closure::modinsn.
Referenced by thumb_decode_pc_relative_16bit().
|
static |
Definition at line 6961 of file arm-tdep.c.
References bit, bits, debug_displaced, fprintf_unfiltered(), gdb_stdlog, install_pc_relative(), arm_displaced_step_closure::modinsn, and arm_displaced_step_closure::numinsns.
Referenced by thumb_process_displaced_32bit_insn().
|
static |
Definition at line 7147 of file arm-tdep.c.
References _, bitcount(), arm_displaced_step_closure::block, arm_displaced_step_closure::cleanup, cleanup_block_load_pc(), cleanup_pop_pc_16bit_all(), debug_displaced, displaced_read_reg(), fprintf_unfiltered(), gdb_stdlog, INST_AL, arm_displaced_step_closure::modinsn, arm_displaced_step_closure::numinsns, arm_displaced_step_closure::tmp, and arm_displaced_step_closure::u.
Referenced by thumb_process_displaced_16bit_insn().
|
static |
Definition at line 6327 of file arm-tdep.c.
References debug_displaced, fprintf_unfiltered(), gdb_stdlog, install_svc(), and arm_displaced_step_closure::modinsn.
Referenced by thumb_process_displaced_16bit_insn().
|
static |
Definition at line 4653 of file arm-tdep.c.
References debug_displaced, fprintf_unfiltered(), gdb_stdlog, and arm_displaced_step_closure::modinsn.
Referenced by thumb_copy_alu_reg(), and thumb_process_displaced_16bit_insn().
|
static |
Definition at line 4634 of file arm-tdep.c.
References debug_displaced, fprintf_unfiltered(), gdb_stdlog, arm_displaced_step_closure::modinsn, and arm_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 |
Definition at line 6945 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 |
Definition at line 604 of file arm-tdep.c.
Referenced by thumb_analyze_prologue().
|
static |
Definition at line 629 of file arm-tdep.c.
Referenced by thumb_analyze_prologue(), and thumb_stack_frame_destroyed_p().
|
static |
Definition at line 7220 of file arm-tdep.c.
References _, bit, bits, err, 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 |
Definition at line 7403 of file arm-tdep.c.
References _, bit, bits, decode_thumb_32bit_ld_mem_hints(), err, 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 |
Definition at line 7531 of file arm-tdep.c.
References arm_get_next_pcs::byte_order_for_code, debug_displaced, fprintf_unfiltered(), gdb_stdlog, gdbarch_byte_order_for_code(), arm_displaced_step_closure::insn_size, arm_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 |
Definition at line 11677 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 |
Definition at line 12098 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 |
Definition at line 11788 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, and regcache_raw_read_unsigned().
Referenced by decode_insn().
|
static |
Definition at line 11696 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, in_inclusive_range(), MEM_ALLOC, insn_decode_record_t::mem_rec_count, REG_ALLOC, insn_decode_record_t::reg_rec_count, insn_decode_record_t::regcache, and regcache_raw_read_unsigned().
Referenced by decode_insn().
|
static |
Definition at line 11828 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, and regcache_raw_read_unsigned().
Referenced by decode_insn().
|
static |
Definition at line 12014 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_syscall_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, and regcache_raw_read_unsigned().
Referenced by decode_insn().
|
static |
Definition at line 11884 of file arm-tdep.c.
References _, insn_decode_record_t::arm_insn, ARM_LR_REGNUM, insn_decode_record_t::arm_mems, 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(), and insn_decode_record_t::this_addr.
Referenced by decode_insn().
|
static |
Definition at line 11657 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 |
Definition at line 1417 of file arm-tdep.c.
References find_pc_partial_function(), and thumb_analyze_prologue().
Referenced by arm_scan_prologue().
Definition at line 3155 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(), thumb_insn_size(), and thumb_instruction_restores_sp().
Referenced by arm_epilogue_frame_sniffer(), and arm_stack_frame_destroyed_p().
|
static |
Definition at line 8818 of file arm-tdep.c.
References value_of_register().
Referenced by arm_gdbarch_init().
|
static |
Definition at line 137 of file arm-tdep.c.
Referenced by arm_gdbarch_init(), arm_set_abi(), and arm_show_abi().
|
static |
Definition at line 138 of file arm-tdep.c.
Referenced by _initialize_arm_tdep(), arm_set_abi(), and arm_show_abi().
|
static |
Definition at line 128 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 281 of file arm-tdep.c.
Referenced by _initialize_arm_tdep(), aarch32_gp_regcache_collect(), aarch32_gp_regcache_supply(), arm_addr_bits_remove(), arm_linux_collect_gregset(), arm_linux_supply_gregset(), arm_supply_gregset(), arm_write_pc(), fetch_register(), fetch_regs(), store_register(), and store_regs().
|
static |
Definition at line 76 of file arm-tdep.c.
Referenced by _initialize_arm_tdep(), arm_analyze_prologue(), arm_push_dummy_call(), and thumb_analyze_prologue().
|
static |
Definition at line 7776 of file arm-tdep.c.
Referenced by arm_gdbarch_init().
|
static |
Definition at line 7775 of file arm-tdep.c.
Referenced by arm_gdbarch_init().
|
static |
Definition at line 7778 of file arm-tdep.c.
Referenced by arm_gdbarch_init().
|
static |
Definition at line 7777 of file arm-tdep.c.
Referenced by arm_gdbarch_init().
|
static |
Definition at line 213 of file arm-tdep.c.
Referenced by _initialize_arm_tdep(), and arm_gdbarch_init().
|
static |
Definition at line 2803 of file arm-tdep.c.
Referenced by arm_gdbarch_init().
|
static |
Definition at line 1974 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 |
Definition at line 2702 of file arm-tdep.c.
Referenced by arm_gdbarch_init().
|
static |
Definition at line 149 of file arm-tdep.c.
Referenced by _initialize_arm_tdep(), arm_pc_is_thumb(), and arm_show_fallback_mode().
|
static |
Definition at line 150 of file arm-tdep.c.
Referenced by _initialize_arm_tdep(), arm_pc_is_thumb(), and arm_show_force_mode().
|
static |
Definition at line 124 of file arm-tdep.c.
Referenced by arm_gdbarch_init(), set_fp_model_sfunc(), and show_fp_model().
|
static |
Definition at line 241 of file arm-tdep.c.
| struct frame_unwind arm_m_exception_unwind |
Definition at line 3038 of file arm-tdep.c.
Referenced by arm_gdbarch_init().
|
static |
Definition at line 141 of file arm-tdep.c.
Referenced by _initialize_arm_tdep().
| struct frame_base arm_normal_base |
Definition at line 3060 of file arm-tdep.c.
Referenced by arm_gdbarch_init().
|
static |
Definition at line 92 of file arm-tdep.c.
Referenced by _initialize_arm_tdep(), arm_find_mapping_symbol(), and arm_record_special_symbol().
| struct frame_unwind arm_prologue_unwind |
Definition at line 1960 of file arm-tdep.c.
Referenced by arm_gdbarch_init().
| const { ... } arm_register_aliases[] |
Referenced by arm_gdbarch_init().
|
static |
Definition at line 203 of file arm-tdep.c.
Referenced by arm_gdbarch_init(), arm_register_name(), and arm_register_type().
| struct frame_unwind arm_stub_unwind |
Definition at line 2925 of file arm-tdep.c.
Referenced by arm_gdbarch_init().
|
static |
Definition at line 125 of file arm-tdep.c.
Referenced by _initialize_arm_tdep(), and set_fp_model_sfunc().
|
static |
Definition at line 219 of file arm-tdep.c.
Referenced by _initialize_arm_tdep(), and set_disassembly_style_sfunc().
|
static |
Definition at line 113 of file arm-tdep.c.
Referenced by _initialize_arm_tdep(), set_fp_model_sfunc(), and show_fp_model().
| const char* name |
Definition at line 158 of file arm-tdep.c.
Referenced by arm_gdbarch_init(), arm_record_special_symbol(), arm_skip_stub(), arm_stub_unwind_sniffer(), and skip_prologue_function().
| int regnum |
Definition at line 159 of file arm-tdep.c.
Referenced by arm_dwarf2_frame_init_reg(), arm_dwarf2_prev_register(), arm_epilogue_frame_prev_register(), arm_gdbarch_init(), arm_neon_quad_read(), arm_neon_quad_write(), arm_pseudo_read(), arm_pseudo_write(), arm_push_dummy_call(), arm_register_reggroup_p(), arm_register_sim_regno(), arm_register_type(), and arm_return_value().
|
static |
Definition at line 108 of file arm-tdep.c.
Referenced by _initialize_arm_tdep(), and set_arm_command().
|
static |
Definition at line 109 of file arm-tdep.c.
Referenced by _initialize_arm_tdep(), and show_arm_command().
|
static |
Definition at line 216 of file arm-tdep.c.
Referenced by _initialize_arm_tdep().
1.8.14