aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTom Tromey <tom@tromey.com>2020-09-28 19:38:25 -0600
committerTom Tromey <tom@tromey.com>2020-09-28 19:52:21 -0600
commit9aed480c3a725d3651d9035cba05c2daaeb5d7d0 (patch)
tree62bc845a9f1d020027cf69b875ae4823aceb2610
parent8a3ecb79b031d578cbdbac5e70784c157ff6387d (diff)
downloadbinutils-9aed480c3a725d3651d9035cba05c2daaeb5d7d0.zip
binutils-9aed480c3a725d3651d9035cba05c2daaeb5d7d0.tar.gz
binutils-9aed480c3a725d3651d9035cba05c2daaeb5d7d0.tar.bz2
Turn target_have_steppable_watchpoint into function
This changes the object-like macro target_have_steppable_watchpoint into an inline function. gdb/ChangeLog 2020-09-28 Tom Tromey <tom@tromey.com> * infrun.c (displaced_step_fixup, thread_still_needs_step_over) (handle_signal_stop): Update. * procfs.c (procfs_target::insert_watchpoint): Update. * target.h (target_have_steppable_watchpoint): Now a function.
-rw-r--r--gdb/ChangeLog7
-rw-r--r--gdb/infrun.c6
-rw-r--r--gdb/procfs.c2
-rw-r--r--gdb/target.h7
4 files changed, 16 insertions, 6 deletions
diff --git a/gdb/ChangeLog b/gdb/ChangeLog
index fb533ae..fcfa751 100644
--- a/gdb/ChangeLog
+++ b/gdb/ChangeLog
@@ -1,5 +1,12 @@
2020-09-28 Tom Tromey <tom@tromey.com>
+ * infrun.c (displaced_step_fixup, thread_still_needs_step_over)
+ (handle_signal_stop): Update.
+ * procfs.c (procfs_target::insert_watchpoint): Update.
+ * target.h (target_have_steppable_watchpoint): Now a function.
+
+2020-09-28 Tom Tromey <tom@tromey.com>
+
* infrun.c (set_schedlock_func): Update.
* target.h (target_can_lock_scheduler): Now a function.
diff --git a/gdb/infrun.c b/gdb/infrun.c
index 17b406d..daf1041 100644
--- a/gdb/infrun.c
+++ b/gdb/infrun.c
@@ -1889,7 +1889,7 @@ displaced_step_fixup (thread_info *event_thread, enum gdb_signal signal)
if (signal == GDB_SIGNAL_TRAP
&& !(target_stopped_by_watchpoint ()
&& (gdbarch_have_nonsteppable_watchpoint (displaced->step_gdbarch)
- || target_have_steppable_watchpoint)))
+ || target_have_steppable_watchpoint ())))
{
/* Fix up the resulting state. */
gdbarch_displaced_step_fixup (displaced->step_gdbarch,
@@ -2811,7 +2811,7 @@ thread_still_needs_step_over (struct thread_info *tp)
what |= STEP_OVER_BREAKPOINT;
if (tp->stepping_over_watchpoint
- && !target_have_steppable_watchpoint)
+ && !target_have_steppable_watchpoint ())
what |= STEP_OVER_WATCHPOINT;
return what;
@@ -5933,7 +5933,7 @@ handle_signal_stop (struct execution_control_state *ecs)
/* If necessary, step over this watchpoint. We'll be back to display
it in a moment. */
if (stopped_by_watchpoint
- && (target_have_steppable_watchpoint
+ && (target_have_steppable_watchpoint ()
|| gdbarch_have_nonsteppable_watchpoint (gdbarch)))
{
/* At this point, we are stopped at an instruction which has
diff --git a/gdb/procfs.c b/gdb/procfs.c
index a06f035..c017f4a 100644
--- a/gdb/procfs.c
+++ b/gdb/procfs.c
@@ -3085,7 +3085,7 @@ procfs_target::insert_watchpoint (CORE_ADDR addr, int len,
enum target_hw_bp_type type,
struct expression *cond)
{
- if (!target_have_steppable_watchpoint
+ if (!target_have_steppable_watchpoint ()
&& !gdbarch_have_nonsteppable_watchpoint (target_gdbarch ()))
/* When a hardware watchpoint fires off the PC will be left at
the instruction following the one which caused the
diff --git a/gdb/target.h b/gdb/target.h
index 9ebb0c3..695f1b2 100644
--- a/gdb/target.h
+++ b/gdb/target.h
@@ -2009,8 +2009,11 @@ extern gdb::byte_vector target_thread_info_to_thread_handle
/* Non-zero if we have steppable watchpoints */
-#define target_have_steppable_watchpoint \
- (current_top_target ()->have_steppable_watchpoint ())
+static inline bool
+target_have_steppable_watchpoint ()
+{
+ return current_top_target ()->have_steppable_watchpoint ();
+}
/* Provide defaults for hardware watchpoint functions. */