GDB (xrefs)

Classes | Macros | Functions
/tmp/gdb-8.1/gdb/aarch64-tdep.h File Reference
`#include "arch/aarch64.h"`

Go to the source code of this file.

## Classes
struct | gdbarch_tdep

## Macros
#define | AARCH64_DWARF_X0 0
#define | AARCH64_DWARF_SP 31
#define | AARCH64_DWARF_V0 64
#define | X_REGISTER_SIZE 8
#define | B_REGISTER_SIZE 1
#define | H_REGISTER_SIZE 2
#define | S_REGISTER_SIZE 4
#define | D_REGISTER_SIZE 8
#define | V_REGISTER_SIZE 16
#define | Q_REGISTER_SIZE 16
#define | AARCH64_X_REGISTER_COUNT 32
#define | AARCH64_D_REGISTER_COUNT 32
#define | DISPLACED_MODIFIED_INSNS 1

## Functions
const target_desc * | aarch64_read_description ()
int | aarch64_process_record (struct gdbarch *gdbarch, struct regcache *regcache, CORE_ADDR addr)
struct displaced_step_closure * | aarch64_displaced_step_copy_insn (struct gdbarch *gdbarch, CORE_ADDR from, CORE_ADDR to, struct regcache *regs)
void | aarch64_displaced_step_fixup (struct gdbarch *gdbarch, struct displaced_step_closure *dsc, CORE_ADDR from, CORE_ADDR to, struct regcache *regs)
int | aarch64_displaced_step_hw_singlestep (struct gdbarch *gdbarch, struct displaced_step_closure *closure)

## Macro Definition Documentation

## ◆ AARCH64_D_REGISTER_COUNT

#define AARCH64_D_REGISTER_COUNT 32

Definition at line 48 of file aarch64-tdep.h.

Referenced by aarch64_analyze_prologue().

## ◆ AARCH64_DWARF_SP

#define AARCH64_DWARF_SP 31

Definition at line 33 of file aarch64-tdep.h.

Referenced by aarch64_dwarf_reg_to_regnum().

## ◆ AARCH64_DWARF_V0

#define AARCH64_DWARF_V0 64

Definition at line 34 of file aarch64-tdep.h.

Referenced by aarch64_dwarf_reg_to_regnum().

## ◆ AARCH64_DWARF_X0

#define AARCH64_DWARF_X0 0

Definition at line 32 of file aarch64-tdep.h.

Referenced by aarch64_dwarf_reg_to_regnum(), and aarch64_linux_get_syscall_number().

## ◆ AARCH64_X_REGISTER_COUNT

#define AARCH64_X_REGISTER_COUNT 32

Definition at line 46 of file aarch64-tdep.h.

Referenced by aarch64_analyze_prologue().

## ◆ B_REGISTER_SIZE

#define B_REGISTER_SIZE 1

Definition at line 38 of file aarch64-tdep.h.

Referenced by aarch64_pseudo_read_value(), and aarch64_pseudo_write().

## ◆ D_REGISTER_SIZE

#define D_REGISTER_SIZE 8

Definition at line 41 of file aarch64-tdep.h.

Referenced by aarch64_pseudo_read_value(), and aarch64_pseudo_write().

## ◆ DISPLACED_MODIFIED_INSNS

#define DISPLACED_MODIFIED_INSNS 1

Definition at line 52 of file aarch64-tdep.h.

Referenced by aarch64_displaced_step_copy_insn(), aarch64_linux_init_abi(), arm_gdbarch_init(), and arm_linux_cleanup_svc().

## ◆ H_REGISTER_SIZE

#define H_REGISTER_SIZE 2

Definition at line 39 of file aarch64-tdep.h.

Referenced by aarch64_pseudo_read_value(), and aarch64_pseudo_write().

## ◆ Q_REGISTER_SIZE

#define Q_REGISTER_SIZE 16

Definition at line 43 of file aarch64-tdep.h.

Referenced by aarch64_pseudo_read_value(), and aarch64_pseudo_write().

## ◆ S_REGISTER_SIZE

#define S_REGISTER_SIZE 4

Definition at line 40 of file aarch64-tdep.h.

Referenced by aarch64_pseudo_read_value(), and aarch64_pseudo_write().

## ◆ V_REGISTER_SIZE

#define V_REGISTER_SIZE 16

Definition at line 42 of file aarch64-tdep.h.

Referenced by aarch64_pseudo_read_value(), aarch64_pseudo_write(), aarch64_store_return_value(), BP_MANIPULATION(), and pass_in_v().

## ◆ X_REGISTER_SIZE

#define X_REGISTER_SIZE 8

Definition at line 37 of file aarch64-tdep.h.

Referenced by aarch64_get_longjmp_target(), aarch64_linux_get_syscall_number(), aarch64_store_return_value(), BP_MANIPULATION(), pass_in_x(), and pass_in_x_or_stack().

## Function Documentation

## ◆ aarch64_displaced_step_copy_insn()

struct displaced_step_closure* aarch64_displaced_step_copy_insn | ( | struct gdbarch * | gdbarch,
|  | CORE_ADDR | from,
|  | CORE_ADDR | to,
|  | struct regcache * | regs
| ) |  |

Definition at line 2723 of file aarch64-tdep.c.

References aarch64_relocate_instruction(), aarch64_displaced_step_data::base, bit, debug_displaced, debug_printf(), DISPLACED_MODIFIED_INSNS, aarch64_displaced_step_data::dsc, gdb_assert, gdbarch_byte_order_for_code(), aarch64_insn_data::insn_addr, aarch64_displaced_step_data::insn_count, aarch64_displaced_step_data::new_addr, paddress(), read_memory_unsigned_integer(), aarch64_displaced_step_data::regs, visitor, and write_memory_unsigned_integer().

Referenced by aarch64_linux_init_abi().

## ◆ aarch64_displaced_step_fixup()

void aarch64_displaced_step_fixup | ( | struct gdbarch * | gdbarch,
|  | struct displaced_step_closure * | dsc,
|  | CORE_ADDR | from,
|  | CORE_ADDR | to,
|  | struct regcache * | regs
| ) |  |

Definition at line 2782 of file aarch64-tdep.c.

References AARCH64_PC_REGNUM, aarch64_displaced_step_closure::cond, debug_displaced, debug_printf(), aarch64_displaced_step_data::dsc, gdb_assert_not_reached, paddress(), aarch64_displaced_step_closure::pc_adjust, regcache_cooked_read_unsigned(), regcache_cooked_write_unsigned(), and aarch64_displaced_step_data::regs.

Referenced by aarch64_linux_init_abi().

## ◆ aarch64_displaced_step_hw_singlestep()

int aarch64_displaced_step_hw_singlestep | ( | struct gdbarch * | gdbarch,
|  | struct displaced_step_closure * | closure
| ) |  |

Definition at line 2822 of file aarch64-tdep.c.

Referenced by aarch64_linux_init_abi().

## ◆ aarch64_process_record()

int aarch64_process_record | ( | struct gdbarch * | gdbarch,
|  | struct regcache * | regcache,
|  | CORE_ADDR | addr
| ) |  |

Definition at line 4021 of file aarch64-tdep.c.

References _, AARCH64_CPSR_REGNUM, insn_decode_record_t::aarch64_insn, insn_decode_record_t::aarch64_mems, AARCH64_PC_REGNUM, aarch64_record_decode_insn_handler(), AARCH64_RECORD_UNSUPPORTED, insn_decode_record_t::aarch64_regs, aarch64_mem_r::addr, deallocate_reg_mem(), extract_unsigned_integer(), insn_decode_record_t::gdbarch, gdbarch_byte_order(), aarch64_mem_r::len, insn_decode_record_t::mem_rec_count, memset(), paddress(), printf_unfiltered(), 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, target_read_memory(), and insn_decode_record_t::this_addr.

Referenced by aarch64_linux_init_abi().

## ◆ aarch64_read_description()

const target_desc* aarch64_read_description | ( |  | ) |

Definition at line 2831 of file aarch64-tdep.c.

References aarch64_create_target_description().

Referenced by aarch64_gdbarch_init(), aarch64_linux_core_read_description(), and aarch64_linux_read_description().