This is the mail archive of the
gdb-cvs@sourceware.org
mailing list for the GDB project.
[binutils-gdb] Move aarch64_linux_new_thread to nat/aarch64-linux.c
- From: Yao Qi <qiyao at sourceware dot org>
- To: gdb-cvs at sourceware dot org
- Date: 25 Aug 2015 10:43:20 -0000
- Subject: [binutils-gdb] Move aarch64_linux_new_thread to nat/aarch64-linux.c
https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=ed8b7b421c98533b9b08995edd7363328b55921e
commit ed8b7b421c98533b9b08995edd7363328b55921e
Author: Yao Qi <yao.qi@linaro.org>
Date: Tue Aug 25 11:38:29 2015 +0100
Move aarch64_linux_new_thread to nat/aarch64-linux.c
This patch moves aarch64_linux_new_thread in GDB and GDBserver to
nat/aarch64-linux.c.
gdb:
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.
gdb/gdbserver:
2015-08-25 Yao Qi <yao.qi@linaro.org>
* linux-aarch64-low.c (aarch64_linux_new_thread): Remove.
Diff:
---
gdb/ChangeLog | 6 ++++++
gdb/aarch64-linux-nat.c | 13 -------------
gdb/gdbserver/ChangeLog | 4 ++++
gdb/gdbserver/linux-aarch64-low.c | 16 ----------------
gdb/nat/aarch64-linux.c | 16 ++++++++++++++++
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 */