diff options
author | Omair Javaid <omair.javaid@linaro.org> | 2015-05-11 12:10:46 +0100 |
---|---|---|
committer | Yao Qi <yao.qi@linaro.org> | 2015-05-26 12:42:07 +0100 |
commit | 99afc88b396045cfe3755bede41a45ad3bed021d (patch) | |
tree | f663dbf78829f4cf535697af77ddb7fff19d5e1d /gdb/configure.tgt | |
parent | c16a3f522a71a20ff6e26599d684a61ac6acecca (diff) | |
download | gdb-99afc88b396045cfe3755bede41a45ad3bed021d.zip gdb-99afc88b396045cfe3755bede41a45ad3bed021d.tar.gz gdb-99afc88b396045cfe3755bede41a45ad3bed021d.tar.bz2 |
Implements aarch64 process record and reverse debugging support
This patch adds the support of aarch64-linux process record and reverse
debugging. The implementation is similar to ARM's counterpart.
2015-05-26 Omair Javaid <omair.javaid@linaro.org>
Yao Qi <yao.qi@linaro.org>
* aarch64-linux-tdep.c: Include linux-record.h and
record-full.h.
(struct linux_record_tdep aarch64_linux_record_tdep): Declare.
(aarch64_syscall): New enum.
(aarch64_canonicalize_syscall): New function.
(aarch64_all_but_pc_registers_record): New function.
(aarch64_linux_syscall_record): New function.
(aarch64_linux_init_abi): Install AArch64 process record
handler. Update to handle syscall recording.
* aarch64-tdep.c: Include record.h and record-full.h.
(submask, bit, bits, REG_ALLOC, MEM_ALLOC): New macros.
(struct aarch64_mem_r): Define.
(aarch64_record_result): New enum.
(struct insn_decode_record): Define.
(insn_decode_record): New typedef.
(aarch64_record_data_proc_reg): New function.
(aarch64_record_data_proc_imm): New function.
(aarch64_record_branch_except_sys): New function.
(aarch64_record_load_store): New function.
(aarch64_record_data_proc_simd_fp): New function.
(aarch64_record_asimd_load_store): New function.
(aarch64_record_decode_insn_handler): New function.
(deallocate_reg_mem): New function.
(aarch64_process_record): New function.
* aarch64-tdep.h (struct gdbarch_tdep) <aarch64_syscall_record>:
New field.
(aarch64_process_record): New extern declaration.
* configure.tgt: Add linux-record.o to gdb_target_obs.
* linux-record.h (struct linux_record_tdep) <arg7>: New field.
Diffstat (limited to 'gdb/configure.tgt')
-rw-r--r-- | gdb/configure.tgt | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/gdb/configure.tgt b/gdb/configure.tgt index 8feda7c..4e4d6a9 100644 --- a/gdb/configure.tgt +++ b/gdb/configure.tgt @@ -45,7 +45,7 @@ aarch64*-*-linux*) # Target: AArch64 linux gdb_target_obs="aarch64-tdep.o aarch64-linux-tdep.o \ glibc-tdep.o linux-tdep.o solib-svr4.o \ - symfile-mem.o" + symfile-mem.o linux-record.o" build_gdbserver=yes ;; |