Eliminate target_have_continuable_watchpoint
authorPedro Alves <palves@redhat.com>
Fri, 31 Aug 2018 17:47:12 +0000 (18:47 +0100)
committerPedro Alves <palves@redhat.com>
Fri, 31 Aug 2018 17:47:12 +0000 (18:47 +0100)
target_have_continuable_watchpoint isn't used anywhere so remove it.
The property isn't necessary because checking for "continuable" is the
same as checking for "!steppable && !non-steppable".

gdb/ChangeLog:
2018-08-31  Pedro Alves  <palves@redhat.com>

* nto-procfs.c (nto_procfs_target::have_continuable_watchpoint):
Delete.
* s390-linux-nat.c
(s390_linux_nat_target::have_continuable_watchpoint): Delete.
* target.h (target_ops::have_continuable_watchpoint): Delete.
(target_have_continuable_watchpoint): Delete.
* x86-nat.h (x86_nat_target::have_continuable_watchpoint): Delete.
* target-delegates.c: Regenerate.

gdb/ChangeLog
gdb/nto-procfs.c
gdb/s390-linux-nat.c
gdb/target-delegates.c
gdb/target.h
gdb/x86-nat.h

index 5cd6da7..30c0c6f 100644 (file)
@@ -1,3 +1,14 @@
+2018-08-31  Pedro Alves  <palves@redhat.com>
+
+       * nto-procfs.c (nto_procfs_target::have_continuable_watchpoint):
+       Delete.
+       * s390-linux-nat.c
+       (s390_linux_nat_target::have_continuable_watchpoint): Delete.
+       * target.h (target_ops::have_continuable_watchpoint): Delete.
+       (target_have_continuable_watchpoint): Delete.
+       * x86-nat.h (x86_nat_target::have_continuable_watchpoint): Delete.
+       * target-delegates.c: Regenerate.
+
 2018-08-31  Sergio Durigan Junior  <sergiodj@redhat.com>
 
        * gnulib/Makefile.in (aclocal_m4_deps): Update according to
index 117edb1..54357af 100644 (file)
@@ -119,9 +119,6 @@ struct nto_procfs_target : public inf_child_target
 
   void interrupt () override;
 
-  bool have_continuable_watchpoint ()
-  { return true; }
-
   const char *extra_thread_info (struct thread_info *) override;
 
   char *pid_to_exec_file (int pid) override;
index 2c60562..7a04e85 100644 (file)
@@ -122,7 +122,6 @@ public:
   int remove_hw_breakpoint (struct gdbarch *, struct bp_target_info *)
     override;
   int region_ok_for_hw_watchpoint (CORE_ADDR, int) override;
-  bool have_continuable_watchpoint () override { return true; }
   bool stopped_by_watchpoint () override;
   int insert_watchpoint (CORE_ADDR, int, enum target_hw_bp_type,
                         struct expression *) override;
index 319a9bb..03136df 100644 (file)
@@ -36,7 +36,6 @@ struct dummy_target : public target_ops
   int remove_mask_watchpoint (CORE_ADDR arg0, CORE_ADDR arg1, enum target_hw_bp_type arg2) override;
   bool stopped_by_watchpoint () override;
   int have_steppable_watchpoint () override;
-  bool have_continuable_watchpoint () override;
   bool stopped_data_address (CORE_ADDR *arg0) override;
   bool watchpoint_addr_within_range (CORE_ADDR arg0, CORE_ADDR arg1, int arg2) override;
   int region_ok_for_hw_watchpoint (CORE_ADDR arg0, int arg1) override;
@@ -204,7 +203,6 @@ struct debug_target : public target_ops
   int remove_mask_watchpoint (CORE_ADDR arg0, CORE_ADDR arg1, enum target_hw_bp_type arg2) override;
   bool stopped_by_watchpoint () override;
   int have_steppable_watchpoint () override;
-  bool have_continuable_watchpoint () override;
   bool stopped_data_address (CORE_ADDR *arg0) override;
   bool watchpoint_addr_within_range (CORE_ADDR arg0, CORE_ADDR arg1, int arg2) override;
   int region_ok_for_hw_watchpoint (CORE_ADDR arg0, int arg1) override;
@@ -1017,31 +1015,6 @@ debug_target::have_steppable_watchpoint ()
 }
 
 bool
-target_ops::have_continuable_watchpoint ()
-{
-  return this->beneath ()->have_continuable_watchpoint ();
-}
-
-bool
-dummy_target::have_continuable_watchpoint ()
-{
-  return false;
-}
-
-bool
-debug_target::have_continuable_watchpoint ()
-{
-  bool result;
-  fprintf_unfiltered (gdb_stdlog, "-> %s->have_continuable_watchpoint (...)\n", this->beneath ()->shortname ());
-  result = this->beneath ()->have_continuable_watchpoint ();
-  fprintf_unfiltered (gdb_stdlog, "<- %s->have_continuable_watchpoint (", this->beneath ()->shortname ());
-  fputs_unfiltered (") = ", gdb_stdlog);
-  target_debug_print_bool (result);
-  fputs_unfiltered ("\n", gdb_stdlog);
-  return result;
-}
-
-bool
 target_ops::stopped_data_address (CORE_ADDR *arg0)
 {
   return this->beneath ()->stopped_data_address (arg0);
index 39aa8c3..b29d34b 100644 (file)
@@ -552,8 +552,6 @@ struct target_ops
       TARGET_DEFAULT_RETURN (false);
     virtual int have_steppable_watchpoint ()
       TARGET_DEFAULT_RETURN (false);
-    virtual bool have_continuable_watchpoint ()
-      TARGET_DEFAULT_RETURN (false);
     virtual bool stopped_data_address (CORE_ADDR *)
       TARGET_DEFAULT_RETURN (false);
     virtual bool watchpoint_addr_within_range (CORE_ADDR, CORE_ADDR, int)
@@ -1933,11 +1931,6 @@ extern struct thread_info *target_thread_handle_to_thread_info
 #define target_have_steppable_watchpoint \
   (current_top_target ()->have_steppable_watchpoint ())
 
-/* Non-zero if we have continuable watchpoints  */
-
-#define target_have_continuable_watchpoint \
-  (current_top_target ()->have_continuable_watchpoint ())
-
 /* Provide defaults for hardware watchpoint functions.  */
 
 /* If the *_hw_beakpoint functions have not been defined
index cc27fa4..c912a00 100644 (file)
@@ -72,13 +72,6 @@ struct x86_nat_target : public BaseTarget
 {
   /* Hook in the x86 hardware watchpoints/breakpoints support.  */
 
-  /* After a watchpoint trap, the PC points to the instruction after
-     the one that caused the trap.  Therefore we don't need to step
-     over it.  But we do need to reset the status register to avoid
-     another trap.  */
-  bool have_continuable_watchpoint () override
-  { return true; }
-
   int can_use_hw_breakpoint (enum bptype type, int cnt, int othertype) override
   { return x86_can_use_hw_breakpoint (type, cnt, othertype); }