aboutsummaryrefslogtreecommitdiff
path: root/gdbserver
diff options
context:
space:
mode:
authorSimon Marchi <simon.marchi@polymtl.ca>2024-12-04 11:30:42 -0500
committerSimon Marchi <simon.marchi@polymtl.ca>2024-12-04 15:05:58 -0500
commitc719eb2872a89b4ba4a12dbecf774f78762abccb (patch)
treed5bfaaff1e3a86d777e7a0d1efe3cee20dce0df1 /gdbserver
parent489b56a30c491476e2e36e2589786247a0424f38 (diff)
downloadgdb-c719eb2872a89b4ba4a12dbecf774f78762abccb.zip
gdb-c719eb2872a89b4ba4a12dbecf774f78762abccb.tar.gz
gdb-c719eb2872a89b4ba4a12dbecf774f78762abccb.tar.bz2
gdbserver: make thread_target_data a method of thread_info
Make the field private, change the free function to be a method. Change-Id: I05010e7d1bd58ce3895802eb263c029528427758 Approved-By: Tom Tromey <tom@tromey.com>
Diffstat (limited to 'gdbserver')
-rw-r--r--gdbserver/gdbthread.h8
-rw-r--r--gdbserver/inferiors.cc6
-rw-r--r--gdbserver/inferiors.h2
-rw-r--r--gdbserver/linux-low.h2
-rw-r--r--gdbserver/win32-i386-low.cc6
-rw-r--r--gdbserver/win32-low.cc8
6 files changed, 13 insertions, 19 deletions
diff --git a/gdbserver/gdbthread.h b/gdbserver/gdbthread.h
index 2f06be9..2ff0231 100644
--- a/gdbserver/gdbthread.h
+++ b/gdbserver/gdbthread.h
@@ -28,7 +28,7 @@ struct regcache;
struct thread_info : public intrusive_list_node<thread_info>
{
thread_info (ptid_t id, process_info *process, void *target_data)
- : id (id), target_data (target_data), m_process (process)
+ : id (id), m_process (process), m_target_data (target_data)
{}
~thread_info ()
@@ -46,11 +46,12 @@ struct thread_info : public intrusive_list_node<thread_info>
void set_regcache (struct regcache *regcache)
{ m_regcache = regcache; }
+ void *target_data ()
+ { return m_target_data; }
+
/* The id of this thread. */
ptid_t id;
- void *target_data;
-
/* The last resume GDB requested on this thread. */
enum resume_kind last_resume_kind = resume_continue;
@@ -94,6 +95,7 @@ struct thread_info : public intrusive_list_node<thread_info>
private:
process_info *m_process;
struct regcache *m_regcache = nullptr;
+ void *m_target_data;
};
/* Return a pointer to the first thread, or NULL if there isn't one. */
diff --git a/gdbserver/inferiors.cc b/gdbserver/inferiors.cc
index 96fb753..b0610d6 100644
--- a/gdbserver/inferiors.cc
+++ b/gdbserver/inferiors.cc
@@ -118,12 +118,6 @@ process_info::remove_thread (thread_info *thread)
m_thread_list.erase (m_thread_list.iterator_to (*thread));
}
-void *
-thread_target_data (struct thread_info *thread)
-{
- return thread->target_data;
-}
-
void
clear_inferiors (void)
{
diff --git a/gdbserver/inferiors.h b/gdbserver/inferiors.h
index cdf1006..f6eb3df 100644
--- a/gdbserver/inferiors.h
+++ b/gdbserver/inferiors.h
@@ -154,8 +154,6 @@ void switch_to_process (process_info *proc);
void clear_inferiors (void);
-void *thread_target_data (struct thread_info *);
-
/* Set the inferior current working directory. If CWD is empty, unset
the directory. */
void set_inferior_cwd (std::string cwd);
diff --git a/gdbserver/linux-low.h b/gdbserver/linux-low.h
index 9a25697..80825f6 100644
--- a/gdbserver/linux-low.h
+++ b/gdbserver/linux-low.h
@@ -715,7 +715,7 @@ extern linux_process_target *the_linux_target;
static inline lwp_info *
get_thread_lwp (thread_info *thr)
{
- return static_cast<lwp_info *> (thread_target_data (thr));
+ return static_cast<lwp_info *> (thr->target_data ());
}
/* Information about a signal that is to be delivered to a thread. */
diff --git a/gdbserver/win32-i386-low.cc b/gdbserver/win32-i386-low.cc
index 7898ac1..4d031d4 100644
--- a/gdbserver/win32-i386-low.cc
+++ b/gdbserver/win32-i386-low.cc
@@ -50,7 +50,7 @@ static struct x86_debug_reg_state debug_reg_state;
static void
update_debug_registers (thread_info *thread)
{
- windows_thread_info *th = (windows_thread_info *) thread_target_data (thread);
+ auto th = static_cast<windows_thread_info *> (thread->target_data ());
/* The actual update is done later just before resuming the lwp,
we just mark that the registers need updating. */
@@ -83,8 +83,8 @@ x86_dr_low_set_control (unsigned long control)
static DWORD64
win32_get_current_dr (int dr)
{
- windows_thread_info *th
- = (windows_thread_info *) thread_target_data (current_thread);
+ auto th
+ = static_cast<windows_thread_info *> (current_thread->target_data ());
win32_require_context (th);
diff --git a/gdbserver/win32-low.cc b/gdbserver/win32-low.cc
index 0174a32..d19e891 100644
--- a/gdbserver/win32-low.cc
+++ b/gdbserver/win32-low.cc
@@ -141,7 +141,7 @@ gdbserver_windows_process::thread_rec
if (thread == NULL)
return NULL;
- windows_thread_info *th = (windows_thread_info *) thread_target_data (thread);
+ auto th = static_cast<windows_thread_info *> (thread->target_data ());
if (disposition != DONT_INVALIDATE_CONTEXT)
win32_require_context (th);
return th;
@@ -178,7 +178,7 @@ child_add_thread (DWORD pid, DWORD tid, HANDLE h, void *tlb)
static void
delete_thread_info (thread_info *thread)
{
- windows_thread_info *th = (windows_thread_info *) thread_target_data (thread);
+ auto th = static_cast<windows_thread_info *> (thread->target_data ());
thread->process ()->remove_thread (thread);
delete th;
@@ -394,7 +394,7 @@ do_initial_child_stuff (HANDLE proch, DWORD pid, int attached)
static void
continue_one_thread (thread_info *thread, int thread_id)
{
- windows_thread_info *th = (windows_thread_info *) thread_target_data (thread);
+ auto th = static_cast<windows_thread_info *> (thread->target_data ());
if (thread_id == -1 || thread_id == th->tid)
{
@@ -923,7 +923,7 @@ gdbserver_windows_process::handle_unload_dll ()
static void
suspend_one_thread (thread_info *thread)
{
- windows_thread_info *th = (windows_thread_info *) thread_target_data (thread);
+ auto th = static_cast<windows_thread_info *> (thread->target_data ());
th->suspend ();
}