[PATCH v3 06/29] Change two windows_thread_info members to "bool"

Tom Tromey
2020-03-13T19:08:59Z

This changes a couple of fields of windows_thread_info to have type
"bool". It also updates the comment of another field, to clarify the
possible values it can hold.

gdb/ChangeLog
2020-03-13 Tom Tromey <tromey@adacore.com>

* windows-nat.c (thread_rec)
(windows_nat_target::fetch_registers): Update.
* nat/windows-nat.h (struct windows_thread_info) <suspended>:
Update comment.
<debug_registers_changed, reload_context>: Now bool.

gdbserver/ChangeLog
2020-03-13 Tom Tromey <tromey@adacore.com>

* win32-i386-low.c (update_debug_registers)
(i386_prepare_to_resume, i386_thread_added): Update.
---
gdb/ChangeLog | 8 ++++++++
gdb/nat/windows-nat.h | 9 ++++++---
gdb/windows-nat.c | 4 ++--
gdbserver/ChangeLog | 5 +++++
gdbserver/win32-i386-low.cc | 6 +++---
5 files changed, 24 insertions(+), 8 deletions(-)

diff --git a/gdb/nat/windows-nat.h b/gdb/nat/windows-nat.h
index a3da2686422..27fd7ed19da 100644
--- a/gdb/nat/windows-nat.h
+++ b/gdb/nat/windows-nat.h
@@ -48,7 +48,10 @@ struct windows_thread_info
/* Thread Information Block address. */
CORE_ADDR thread_local_base;

- /* Non zero if SuspendThread was called on this thread. */
+ /* This keeps track of whether SuspendThread was called on this
+ thread. -1 means there was a failure or that the thread was
+ explicitly not suspended, 1 means it was called, and 0 means it
+ was not. */
int suspended = 0;

#ifdef _WIN32_WCE
@@ -67,11 +70,11 @@ struct windows_thread_info

/* Whether debug registers changed since we last set CONTEXT back to
the thread. */
- int debug_registers_changed = 0;
+ bool debug_registers_changed = false;

/* Nonzero if CONTEXT is invalidated and must be re-read from the
inferior thread. */
- int reload_context = 0;
+ bool reload_context = false;

/* The name of the thread, allocated by xmalloc. */
char *name = nullptr;
diff --git a/gdb/windows-nat.c b/gdb/windows-nat.c
index 095a0da75dc..866afffa262 100644
--- a/gdb/windows-nat.c
+++ b/gdb/windows-nat.c
@@ -439,7 +439,7 @@ thread_rec (DWORD id, int get_context)
}
else if (get_context < 0)
th->suspended = -1;
- th->reload_context = 1;
+ th->reload_context = true;
}
return th;
}
@@ -695,7 +695,7 @@ windows_nat_target::fetch_registers (struct regcache *regcache, int r)
dr[7] = th->context.Dr7;
}
}
- th->reload_context = 0;
+ th->reload_context = false;
}

if (r < 0)
diff --git a/gdbserver/win32-i386-low.cc b/gdbserver/win32-i386-low.cc
index 29ee49fcd03..1b78cf98b33 100644
--- a/gdbserver/win32-i386-low.cc
+++ b/gdbserver/win32-i386-low.cc
@@ -44,7 +44,7 @@ update_debug_registers (thread_info *thread)

/* The actual update is done later just before resuming the lwp,
we just mark that the registers need updating. */
- th->debug_registers_changed = 1;
+ th->debug_registers_changed = true;
}

/* Update the inferior's debug register REGNUM from STATE. */
@@ -253,14 +253,14 @@ i386_prepare_to_resume (windows_thread_info *th)
FIXME: should we set dr6 also ?? */
th->context.Dr7 = dr->dr_control_mirror;

- th->debug_registers_changed = 0;
+ th->debug_registers_changed = false;
}
}

static void
i386_thread_added (windows_thread_info *th)
{
- th->debug_registers_changed = 1;
+ th->debug_registers_changed = true;
}

static void
--
2.21.1