diff options
-rw-r--r-- | gdb/ChangeLog | 6 | ||||
-rw-r--r-- | gdb/aarch64-linux-nat.c | 13 | ||||
-rw-r--r-- | gdb/gdbserver/ChangeLog | 4 | ||||
-rw-r--r-- | gdb/gdbserver/linux-aarch64-low.c | 16 | ||||
-rw-r--r-- | gdb/nat/aarch64-linux.c | 16 | ||||
-rw-r--r-- | gdb/nat/aarch64-linux.h | 2 |
6 files changed, 28 insertions, 29 deletions
diff --git a/gdb/ChangeLog b/gdb/ChangeLog index 97c3a48..5dd90e7 100644 --- a/gdb/ChangeLog +++ b/gdb/ChangeLog @@ -1,5 +1,11 @@ 2015-08-25 Yao Qi <yao.qi@linaro.org> + * aarch64-linux-nat.c (aarch64_linux_new_thread): Move it to ... + * nat/aarch64-linux.c (aarch64_linux_new_thread): ... here. + * nat/aarch64-linux.h (aarch64_linux_new_thread): Declare. + +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. diff --git a/gdb/aarch64-linux-nat.c b/gdb/aarch64-linux-nat.c index ea56238..f6edb68 100644 --- a/gdb/aarch64-linux-nat.c +++ b/gdb/aarch64-linux-nat.c @@ -426,19 +426,6 @@ supply_fpregset (struct regcache *regcache, const gdb_fpregset_t *fpregsetp) AARCH64_LINUX_SIZEOF_FPREGSET); } -static void -aarch64_linux_new_thread (struct lwp_info *lp) -{ - struct arch_lwp_info *info = XCNEW (struct arch_lwp_info); - - /* Mark that all the hardware breakpoint/watchpoint register pairs - for this thread need to be initialized. */ - DR_MARK_ALL_CHANGED (info->dr_changed_bp, aarch64_num_bp_regs); - DR_MARK_ALL_CHANGED (info->dr_changed_wp, aarch64_num_wp_regs); - - lp->arch_private = info; -} - /* linux_nat_new_fork hook. */ static void diff --git a/gdb/gdbserver/ChangeLog b/gdb/gdbserver/ChangeLog index 274f850..6d77e94 100644 --- a/gdb/gdbserver/ChangeLog +++ b/gdb/gdbserver/ChangeLog @@ -1,5 +1,9 @@ 2015-08-25 Yao Qi <yao.qi@linaro.org> + * linux-aarch64-low.c (aarch64_linux_new_thread): Remove. + +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. diff --git a/gdb/gdbserver/linux-aarch64-low.c b/gdb/gdbserver/linux-aarch64-low.c index d35d4e9..dbe4951 100644 --- a/gdb/gdbserver/linux-aarch64-low.c +++ b/gdb/gdbserver/linux-aarch64-low.c @@ -438,22 +438,6 @@ aarch64_linux_new_process (void) return info; } -/* Implementation of linux_target_ops method "linux_new_thread". */ - -static void -aarch64_linux_new_thread (struct lwp_info *lwp) -{ - struct arch_lwp_info *info = xcalloc (1, sizeof (*info)); - - /* Mark that all the hardware breakpoint/watchpoint register pairs - for this thread need to be initialized (with data from - aarch_process_info.debug_reg_state). */ - DR_MARK_ALL_CHANGED (info->dr_changed_bp, aarch64_num_bp_regs); - DR_MARK_ALL_CHANGED (info->dr_changed_wp, aarch64_num_wp_regs); - - lwp->arch_private = info; -} - /* Implementation of linux_target_ops method "linux_new_fork". */ static void diff --git a/gdb/nat/aarch64-linux.c b/gdb/nat/aarch64-linux.c index 7b4ead7..121542a 100644 --- a/gdb/nat/aarch64-linux.c +++ b/gdb/nat/aarch64-linux.c @@ -62,3 +62,19 @@ aarch64_linux_prepare_to_resume (struct lwp_info *lwp) } } } + +/* Function to call when a new thread is detected. */ + +void +aarch64_linux_new_thread (struct lwp_info *lwp) +{ + struct arch_lwp_info *info = xcalloc (1, sizeof (*info)); + + /* Mark that all the hardware breakpoint/watchpoint register pairs + for this thread need to be initialized (with data from + aarch_process_info.debug_reg_state). */ + DR_MARK_ALL_CHANGED (info->dr_changed_bp, aarch64_num_bp_regs); + DR_MARK_ALL_CHANGED (info->dr_changed_wp, aarch64_num_wp_regs); + + lwp_set_arch_private_info (lwp, info); +} diff --git a/gdb/nat/aarch64-linux.h b/gdb/nat/aarch64-linux.h index cf4e468..5cb432c 100644 --- a/gdb/nat/aarch64-linux.h +++ b/gdb/nat/aarch64-linux.h @@ -21,4 +21,6 @@ void aarch64_linux_prepare_to_resume (struct lwp_info *lwp); +void aarch64_linux_new_thread (struct lwp_info *lwp); + #endif /* AARCH64_LINUX_H */ |