forked from Imagelibrary/binutils-gdb
Share windows_thread_info between gdb and gdbserver
This introduces a new file, nat/windows-nat.h, which holds the
definition of windows_thread_info. This is now shared between gdb and
gdbserver.
Note that the two implementations different slightly. gdb had a
couple of fields ("name" and "reload_context") that gdbserver did not;
while gdbserver had one field ("base_context") that gdb did not, plus
better comments. The new file preserves all the fields, and the
comments.
gdb/ChangeLog
2020-04-08 Tom Tromey <tromey@adacore.com>
* windows-nat.c (struct windows_thread_info): Remove.
* nat/windows-nat.h: New file.
gdbserver/ChangeLog
2020-04-08 Tom Tromey <tromey@adacore.com>
* win32-low.h (struct windows_thread_info): Remove.
This commit is contained in:
@@ -20,6 +20,7 @@
|
||||
#define GDBSERVER_WIN32_LOW_H
|
||||
|
||||
#include <windows.h>
|
||||
#include "nat/windows-nat.h"
|
||||
|
||||
struct target_desc;
|
||||
|
||||
@@ -27,35 +28,6 @@ struct target_desc;
|
||||
Windows ports support neither bi-arch nor multi-process. */
|
||||
extern const struct target_desc *win32_tdesc;
|
||||
|
||||
/* Thread information structure used to track extra information about
|
||||
each thread. */
|
||||
struct windows_thread_info
|
||||
{
|
||||
/* The Win32 thread identifier. */
|
||||
DWORD tid;
|
||||
|
||||
/* The handle to the thread. */
|
||||
HANDLE h;
|
||||
|
||||
/* Thread Information Block address. */
|
||||
CORE_ADDR thread_local_base;
|
||||
|
||||
/* Non zero if SuspendThread was called on this thread. */
|
||||
int suspended;
|
||||
|
||||
#ifdef _WIN32_WCE
|
||||
/* The context as retrieved right after suspending the thread. */
|
||||
CONTEXT base_context;
|
||||
#endif
|
||||
|
||||
/* The context of the thread, including any manipulations. */
|
||||
CONTEXT context;
|
||||
|
||||
/* Whether debug registers changed since we last set CONTEXT back to
|
||||
the thread. */
|
||||
int debug_registers_changed;
|
||||
};
|
||||
|
||||
struct win32_target_ops
|
||||
{
|
||||
/* Architecture-specific setup. */
|
||||
|
||||
Reference in New Issue
Block a user