From: Tom Tromey <tromey@adacore.com>
To: gdb-patches@sourceware.org
Cc: Tom Tromey <tromey@adacore.com>
Subject: [PATCH v3 02/29] Rename win32_thread_info to windows_thread_info
Date: Fri, 13 Mar 2020 13:08:28 -0600 [thread overview]
Message-ID: <20200313190855.28662-3-tromey@adacore.com> (raw)
In-Reply-To: <20200313190855.28662-1-tromey@adacore.com>
This renames win32_thread_info to windows_thread_info in gdbserver.
This renaming helps make it possible to share some code between gdb
and gdbserver.
gdbserver/ChangeLog
2020-03-13 Tom Tromey <tromey@adacore.com>
* win32-low.h (struct windows_thread_info): Rename from
win32_thread_info. Remove typedef.
(struct win32_target_ops, win32_require_context): Update.
* win32-low.c (win32_get_thread_context)
(win32_set_thread_context, win32_prepare_to_resume)
(win32_require_context, thread_rec, child_add_thread)
(delete_thread_info, continue_one_thread)
(child_fetch_inferior_registers, child_store_inferior_registers)
(win32_resume, suspend_one_thread, win32_get_tib_address):
Update.
* win32-i386-low.c (update_debug_registers)
(win32_get_current_dr, i386_get_thread_context)
(i386_prepare_to_resume, i386_thread_added, i386_single_step)
(i386_fetch_inferior_register, i386_store_inferior_register):
Update.
* win32-arm-low.c (arm_get_thread_context)
(arm_fetch_inferior_register, arm_store_inferior_register):
Update.
---
gdbserver/ChangeLog | 21 +++++++++++++++++++++
gdbserver/win32-arm-low.cc | 6 +++---
gdbserver/win32-i386-low.cc | 18 +++++++++---------
gdbserver/win32-low.cc | 32 ++++++++++++++++----------------
gdbserver/win32-low.h | 18 +++++++++---------
5 files changed, 58 insertions(+), 37 deletions(-)
diff --git a/gdbserver/win32-arm-low.cc b/gdbserver/win32-arm-low.cc
index 619847d10fc..c50c5dfdbf2 100644
--- a/gdbserver/win32-arm-low.cc
+++ b/gdbserver/win32-arm-low.cc
@@ -27,7 +27,7 @@ void init_registers_arm (void);
extern const struct target_desc *tdesc_arm;
static void
-arm_get_thread_context (win32_thread_info *th)
+arm_get_thread_context (windows_thread_info *th)
{
th->context.ContextFlags = \
CONTEXT_FULL | \
@@ -88,7 +88,7 @@ regptr (CONTEXT* c, int r)
/* Fetch register from gdbserver regcache data. */
static void
arm_fetch_inferior_register (struct regcache *regcache,
- win32_thread_info *th, int r)
+ windows_thread_info *th, int r)
{
char *context_offset = regptr (&th->context, r);
supply_register (regcache, r, context_offset);
@@ -97,7 +97,7 @@ arm_fetch_inferior_register (struct regcache *regcache,
/* Store a new register value into the thread context of TH. */
static void
arm_store_inferior_register (struct regcache *regcache,
- win32_thread_info *th, int r)
+ windows_thread_info *th, int r)
{
collect_register (regcache, r, regptr (&th->context, r));
}
diff --git a/gdbserver/win32-i386-low.cc b/gdbserver/win32-i386-low.cc
index f5f09e96a57..29ee49fcd03 100644
--- a/gdbserver/win32-i386-low.cc
+++ b/gdbserver/win32-i386-low.cc
@@ -40,7 +40,7 @@ static struct x86_debug_reg_state debug_reg_state;
static void
update_debug_registers (thread_info *thread)
{
- win32_thread_info *th = (win32_thread_info *) thread_target_data (thread);
+ windows_thread_info *th = (windows_thread_info *) thread_target_data (thread);
/* The actual update is done later just before resuming the lwp,
we just mark that the registers need updating. */
@@ -73,8 +73,8 @@ x86_dr_low_set_control (unsigned long control)
static DWORD64
win32_get_current_dr (int dr)
{
- win32_thread_info *th
- = (win32_thread_info *) thread_target_data (current_thread);
+ windows_thread_info *th
+ = (windows_thread_info *) thread_target_data (current_thread);
win32_require_context (th);
@@ -210,7 +210,7 @@ i386_initial_stuff (void)
}
static void
-i386_get_thread_context (win32_thread_info *th)
+i386_get_thread_context (windows_thread_info *th)
{
/* Requesting the CONTEXT_EXTENDED_REGISTERS register set fails if
the system doesn't support extended registers. */
@@ -237,7 +237,7 @@ i386_get_thread_context (win32_thread_info *th)
}
static void
-i386_prepare_to_resume (win32_thread_info *th)
+i386_prepare_to_resume (windows_thread_info *th)
{
if (th->debug_registers_changed)
{
@@ -258,13 +258,13 @@ i386_prepare_to_resume (win32_thread_info *th)
}
static void
-i386_thread_added (win32_thread_info *th)
+i386_thread_added (windows_thread_info *th)
{
th->debug_registers_changed = 1;
}
static void
-i386_single_step (win32_thread_info *th)
+i386_single_step (windows_thread_info *th)
{
th->context.EFlags |= FLAG_TRACE_BIT;
}
@@ -398,7 +398,7 @@ static const int mappings[] =
/* Fetch register from gdbserver regcache data. */
static void
i386_fetch_inferior_register (struct regcache *regcache,
- win32_thread_info *th, int r)
+ windows_thread_info *th, int r)
{
char *context_offset = (char *) &th->context + mappings[r];
@@ -420,7 +420,7 @@ i386_fetch_inferior_register (struct regcache *regcache,
/* Store a new register value into the thread context of TH. */
static void
i386_store_inferior_register (struct regcache *regcache,
- win32_thread_info *th, int r)
+ windows_thread_info *th, int r)
{
char *context_offset = (char *) &th->context + mappings[r];
collect_register (regcache, r, context_offset);
diff --git a/gdbserver/win32-low.cc b/gdbserver/win32-low.cc
index 8b2a16e86dc..55e8322cebb 100644
--- a/gdbserver/win32-low.cc
+++ b/gdbserver/win32-low.cc
@@ -125,7 +125,7 @@ debug_event_ptid (DEBUG_EVENT *event)
/* Get the thread context of the thread associated with TH. */
static void
-win32_get_thread_context (win32_thread_info *th)
+win32_get_thread_context (windows_thread_info *th)
{
memset (&th->context, 0, sizeof (CONTEXT));
(*the_low_target.get_thread_context) (th);
@@ -137,7 +137,7 @@ win32_get_thread_context (win32_thread_info *th)
/* Set the thread context of the thread associated with TH. */
static void
-win32_set_thread_context (win32_thread_info *th)
+win32_set_thread_context (windows_thread_info *th)
{
#ifdef _WIN32_WCE
/* Calling SuspendThread on a thread that is running kernel code
@@ -158,7 +158,7 @@ win32_set_thread_context (win32_thread_info *th)
/* Set the thread context of the thread associated with TH. */
static void
-win32_prepare_to_resume (win32_thread_info *th)
+win32_prepare_to_resume (windows_thread_info *th)
{
if (the_low_target.prepare_to_resume != NULL)
(*the_low_target.prepare_to_resume) (th);
@@ -167,7 +167,7 @@ win32_prepare_to_resume (win32_thread_info *th)
/* See win32-low.h. */
void
-win32_require_context (win32_thread_info *th)
+win32_require_context (windows_thread_info *th)
{
if (th->context.ContextFlags == 0)
{
@@ -189,30 +189,30 @@ win32_require_context (win32_thread_info *th)
/* Find a thread record given a thread id. If GET_CONTEXT is set then
also retrieve the context for this thread. */
-static win32_thread_info *
+static windows_thread_info *
thread_rec (ptid_t ptid, int get_context)
{
thread_info *thread = find_thread_ptid (ptid);
if (thread == NULL)
return NULL;
- win32_thread_info *th = (win32_thread_info *) thread_target_data (thread);
+ windows_thread_info *th = (windows_thread_info *) thread_target_data (thread);
if (get_context)
win32_require_context (th);
return th;
}
/* Add a thread to the thread list. */
-static win32_thread_info *
+static windows_thread_info *
child_add_thread (DWORD pid, DWORD tid, HANDLE h, void *tlb)
{
- win32_thread_info *th;
+ windows_thread_info *th;
ptid_t ptid = ptid_t (pid, tid, 0);
if ((th = thread_rec (ptid, FALSE)))
return th;
- th = XCNEW (win32_thread_info);
+ th = XCNEW (windows_thread_info);
th->tid = tid;
th->h = h;
th->thread_local_base = (CORE_ADDR) (uintptr_t) tlb;
@@ -229,7 +229,7 @@ child_add_thread (DWORD pid, DWORD tid, HANDLE h, void *tlb)
static void
delete_thread_info (thread_info *thread)
{
- win32_thread_info *th = (win32_thread_info *) thread_target_data (thread);
+ windows_thread_info *th = (windows_thread_info *) thread_target_data (thread);
remove_thread (thread);
CloseHandle (th->h);
@@ -424,7 +424,7 @@ do_initial_child_stuff (HANDLE proch, DWORD pid, int attached)
static void
continue_one_thread (thread_info *thread, int thread_id)
{
- win32_thread_info *th = (win32_thread_info *) thread_target_data (thread);
+ windows_thread_info *th = (windows_thread_info *) thread_target_data (thread);
if (thread_id == -1 || thread_id == th->tid)
{
@@ -473,7 +473,7 @@ static void
child_fetch_inferior_registers (struct regcache *regcache, int r)
{
int regno;
- win32_thread_info *th = thread_rec (current_thread_ptid (), TRUE);
+ windows_thread_info *th = thread_rec (current_thread_ptid (), TRUE);
if (r == -1 || r > NUM_REGS)
child_fetch_inferior_registers (regcache, NUM_REGS);
else
@@ -487,7 +487,7 @@ static void
child_store_inferior_registers (struct regcache *regcache, int r)
{
int regno;
- win32_thread_info *th = thread_rec (current_thread_ptid (), TRUE);
+ windows_thread_info *th = thread_rec (current_thread_ptid (), TRUE);
if (r == -1 || r == 0 || r > NUM_REGS)
child_store_inferior_registers (regcache, NUM_REGS);
else
@@ -911,7 +911,7 @@ win32_process_target::resume (thread_resume *resume_info, size_t n)
DWORD tid;
enum gdb_signal sig;
int step;
- win32_thread_info *th;
+ windows_thread_info *th;
DWORD continue_status = DBG_CONTINUE;
ptid_t ptid;
@@ -1349,7 +1349,7 @@ handle_exception (struct target_waitstatus *ourstatus)
static void
suspend_one_thread (thread_info *thread)
{
- win32_thread_info *th = (win32_thread_info *) thread_target_data (thread);
+ windows_thread_info *th = (windows_thread_info *) thread_target_data (thread);
if (!th->suspended)
{
@@ -1835,7 +1835,7 @@ win32_process_target::supports_get_tib_address ()
int
win32_process_target::get_tib_address (ptid_t ptid, CORE_ADDR *addr)
{
- win32_thread_info *th;
+ windows_thread_info *th;
th = thread_rec (ptid, 0);
if (th == NULL)
return 0;
diff --git a/gdbserver/win32-low.h b/gdbserver/win32-low.h
index 9d2f0b4fbec..2bd94e85288 100644
--- a/gdbserver/win32-low.h
+++ b/gdbserver/win32-low.h
@@ -29,7 +29,7 @@ extern const struct target_desc *win32_tdesc;
/* Thread information structure used to track extra information about
each thread. */
-typedef struct win32_thread_info
+struct windows_thread_info
{
/* The Win32 thread identifier. */
DWORD tid;
@@ -54,7 +54,7 @@ typedef struct win32_thread_info
/* Whether debug registers changed since we last set CONTEXT back to
the thread. */
int debug_registers_changed;
-} win32_thread_info;
+};
struct win32_target_ops
{
@@ -68,23 +68,23 @@ struct win32_target_ops
void (*initial_stuff) (void);
/* Fetch the context from the inferior. */
- void (*get_thread_context) (win32_thread_info *th);
+ void (*get_thread_context) (windows_thread_info *th);
/* Called just before resuming the thread. */
- void (*prepare_to_resume) (win32_thread_info *th);
+ void (*prepare_to_resume) (windows_thread_info *th);
/* Called when a thread was added. */
- void (*thread_added) (win32_thread_info *th);
+ void (*thread_added) (windows_thread_info *th);
/* Fetch register from gdbserver regcache data. */
void (*fetch_inferior_register) (struct regcache *regcache,
- win32_thread_info *th, int r);
+ windows_thread_info *th, int r);
/* Store a new register value into the thread context of TH. */
void (*store_inferior_register) (struct regcache *regcache,
- win32_thread_info *th, int r);
+ windows_thread_info *th, int r);
- void (*single_step) (win32_thread_info *th);
+ void (*single_step) (windows_thread_info *th);
const unsigned char *breakpoint;
int breakpoint_len;
@@ -171,7 +171,7 @@ class win32_process_target : public process_stratum_target
};
/* Retrieve the context for this thread, if not already retrieved. */
-extern void win32_require_context (win32_thread_info *th);
+extern void win32_require_context (windows_thread_info *th);
/* Map the Windows error number in ERROR to a locale-dependent error
message string and return a pointer to it. Typically, the values
--
2.21.1
next prev parent reply other threads:[~2020-03-13 19:08 UTC|newest]
Thread overview: 42+ messages / expand[flat|nested] mbox.gz Atom feed top
2020-03-13 19:08 [PATCH v3 00/29] Windows code sharing + bug fix Tom Tromey
2020-03-13 19:08 ` [PATCH v3 01/29] Remove the "next" field from windows_thread_info Tom Tromey
2020-03-13 19:08 ` Tom Tromey [this message]
2020-03-13 19:08 ` [PATCH v3 03/29] Rename windows_thread_info::id to "tid" Tom Tromey
2020-03-13 19:08 ` [PATCH v3 04/29] Share windows_thread_info between gdb and gdbserver Tom Tromey
2020-03-13 19:08 ` [PATCH v3 05/29] Use new and delete for windows_thread_info Tom Tromey
2020-03-13 19:08 ` [PATCH v3 06/29] Change two windows_thread_info members to "bool" Tom Tromey
2020-03-13 19:08 ` [PATCH v3 07/29] Make windows_thread_info::name a unique_xmalloc_ptr Tom Tromey
2020-03-13 19:08 ` [PATCH v3 08/29] Use lwp, not tid, for Windows thread id Tom Tromey
2020-03-13 19:08 ` [PATCH v3 09/29] Share Windows thread-suspend and -resume code Tom Tromey
2020-03-13 19:08 ` [PATCH v3 10/29] Change type of argument to windows-nat.c:thread_rec Tom Tromey
2020-03-13 19:08 ` [PATCH v3 11/29] Handle pending stops from the Windows kernel Tom Tromey
2020-03-13 19:08 ` [PATCH v3 12/29] Call CloseHandle from ~windows_thread_info Tom Tromey
2020-03-13 19:08 ` [PATCH v3 13/29] Wrap shared windows-nat code in windows_nat namespace Tom Tromey
2020-03-13 19:08 ` [PATCH v3 14/29] Share thread_rec between gdb and gdbserver Tom Tromey
2020-03-13 19:08 ` [PATCH v3 15/29] Share get_image_name " Tom Tromey
2020-03-13 19:08 ` [PATCH v3 16/29] Share some Windows-related globals Tom Tromey
2020-03-13 19:08 ` [PATCH v3 17/29] Normalize handle_output_debug_string API Tom Tromey
2020-03-13 19:08 ` [PATCH v3 18/29] Fix up complaints.h for namespace use Tom Tromey
2020-03-13 19:08 ` [PATCH v3 19/29] Share handle_load_dll and handle_unload_dll declarations Tom Tromey
2020-03-13 19:08 ` [PATCH v3 20/29] Remove some globals from windows-nat.c Tom Tromey
2020-03-13 19:08 ` [PATCH v3 21/29] Share handle_exception Tom Tromey
2020-04-15 15:27 ` Simon Marchi
2020-04-15 16:54 ` Tom Tromey
2020-04-15 17:54 ` Simon Marchi
2020-04-15 19:13 ` Tom Tromey
2020-04-16 0:52 ` Simon Marchi
2020-03-13 19:08 ` [PATCH v3 22/29] Share some inferior-related Windows code Tom Tromey
2020-03-13 19:08 ` [PATCH v3 23/29] Introduce fetch_pending_stop Tom Tromey
2020-03-13 19:08 ` [PATCH v3 24/29] Move wait_for_debug_event to nat/windows-nat.c Tom Tromey
2020-03-13 19:08 ` [PATCH v3 25/29] Make last_wait_event static Tom Tromey
2020-03-13 19:08 ` [PATCH v3 26/29] Add read_pc / write_pc support to win32-low Tom Tromey
2020-03-13 19:08 ` [PATCH v3 27/29] Introduce win32_target_ops::decr_pc_after_break Tom Tromey
2020-03-13 19:08 ` [PATCH v3 28/29] Implement stopped_by_sw_breakpoint for Windows gdbserver Tom Tromey
2020-03-13 19:08 ` [PATCH v3 29/29] Add pending stop support to gdbserver's Windows port Tom Tromey
2020-04-16 1:11 ` [pushed] gdbserver: fix format string warning in win32-low.cc (was: Re: [PATCH v3 29/29] Add pending stop support to gdbserver's Windows port) Simon Marchi
2020-04-08 20:33 ` [PATCH v3 00/29] Windows code sharing + bug fix Tom Tromey
2020-04-08 22:17 ` Hannes Domani
2020-04-09 2:49 ` Tom Tromey
2020-04-09 14:57 ` Jon Turney
2020-04-09 15:08 ` Hannes Domani
2020-04-09 17:54 ` Tom Tromey
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20200313190855.28662-3-tromey@adacore.com \
--to=tromey@adacore.com \
--cc=gdb-patches@sourceware.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox