Eliminate target_have_continuable_watchpoint

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.
This commit is contained in:
Pedro Alves 2018-08-31 18:47:12 +01:00
parent 6e1453f681
commit 7eb65fafed
6 changed files with 11 additions and 45 deletions

View 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

View 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;

View 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;

View 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;
@ -1016,31 +1014,6 @@ debug_target::have_steppable_watchpoint ()
return result;
}
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)
{

View 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

View 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); }