diff options
author | Yao Qi <yao.qi@linaro.org> | 2015-08-25 11:38:29 +0100 |
---|---|---|
committer | Yao Qi <yao.qi@linaro.org> | 2015-08-25 11:39:14 +0100 |
commit | db3cb7cb3e51e5eb834412adbf90e81bb76846c6 (patch) | |
tree | 7523d968e5775db256e5ccf76ee193fbe48c40bf /gdb/gdbserver/linux-aarch64-low.c | |
parent | f6011a1c84b1bd616617bfde84dca63f250c950d (diff) | |
download | gdb-db3cb7cb3e51e5eb834412adbf90e81bb76846c6.zip gdb-db3cb7cb3e51e5eb834412adbf90e81bb76846c6.tar.gz gdb-db3cb7cb3e51e5eb834412adbf90e81bb76846c6.tar.bz2 |
Move aarch64_linux_prepare_to_resume to nat/aarch64-linux.c
gdb:
2015-08-25 Yao Qi <yao.qi@linaro.org>
* Makefile.in (aarch64-liunx.o): New rule.
(HFILES_NO_SRCDIR): Add aarch64-linux.h.
* config/aarch64/linux.mh (NAT_FILE): Add aarch64-linux.o.
* aarch64-linux-nat.c: Include nat/aarch64-linux.h.
* aarch64-linux-nat.c (aarch64_get_debug_reg_state): Make it
extern.
(aarch64_linux_prepare_to_resume): Move it nat/aarch64-linux.c.
* nat/aarch64-linux-hw-point.h (aarch64_debug_reg_state): Declare
* nat/aarch64-linux.c: New file.
* nat/aarch64-linux.h: New file.
gdb/gdbserver:
2015-08-25 Yao Qi <yao.qi@linaro.org>
* Makefile.in (aarch64-linux.o): New rule.
* configure.srv (aarch64*-*-linux*): Append aarch64-linux.o to
srv_tgtobj.
* linux-aarch64-low.c: Include nat/aarch64-linux.h.
(aarch64_init_debug_reg_state): Make it extern.
(aarch64_linux_prepare_to_resume): Remove.
Diffstat (limited to 'gdb/gdbserver/linux-aarch64-low.c')
-rw-r--r-- | gdb/gdbserver/linux-aarch64-low.c | 39 |
1 files changed, 2 insertions, 37 deletions
diff --git a/gdb/gdbserver/linux-aarch64-low.c b/gdb/gdbserver/linux-aarch64-low.c index 4b1d7d5..d35d4e9 100644 --- a/gdb/gdbserver/linux-aarch64-low.c +++ b/gdb/gdbserver/linux-aarch64-low.c @@ -21,6 +21,7 @@ #include "server.h" #include "linux-low.h" +#include "nat/aarch64-linux.h" #include "nat/aarch64-linux-hw-point.h" #include "linux-aarch32-low.h" #include "elf/common.h" @@ -237,7 +238,7 @@ aarch64_init_debug_reg_state (struct aarch64_debug_reg_state *state) /* Return the pointer to the debug register state structure in the current process' arch-specific data area. */ -static struct aarch64_debug_reg_state * +struct aarch64_debug_reg_state * aarch64_get_debug_reg_state (pid_t pid) { struct process_info *proc = find_process_pid (pid); @@ -482,42 +483,6 @@ aarch64_linux_new_fork (struct process_info *parent, *child->priv->arch_private = *parent->priv->arch_private; } -/* Implementation of linux_target_ops method "linux_prepare_to_resume". - - If the debug regs have changed, update the thread's copies. */ - -static void -aarch64_linux_prepare_to_resume (struct lwp_info *lwp) -{ - struct arch_lwp_info *info = lwp_arch_private_info (lwp); - - if (DR_HAS_CHANGED (info->dr_changed_bp) - || DR_HAS_CHANGED (info->dr_changed_wp)) - { - ptid_t ptid = ptid_of_lwp (lwp); - int tid = ptid_get_lwp (ptid); - struct aarch64_debug_reg_state *state - = aarch64_get_debug_reg_state (ptid_get_pid (ptid)); - - if (show_debug_regs) - fprintf (stderr, "prepare_to_resume thread %d\n", tid); - - /* Watchpoints. */ - if (DR_HAS_CHANGED (info->dr_changed_wp)) - { - aarch64_linux_set_debug_regs (state, tid, 1); - DR_CLEAR_CHANGED (info->dr_changed_wp); - } - - /* Breakpoints. */ - if (DR_HAS_CHANGED (info->dr_changed_bp)) - { - aarch64_linux_set_debug_regs (state, tid, 0); - DR_CLEAR_CHANGED (info->dr_changed_bp); - } - } -} - /* Return the right target description according to the ELF file of current thread. */ |