PR breakpoints/11531.

* config/i386/nm-i386sol2.h (CANNOT_STEP_HW_WATCHPOINTS): Remove
	macro definition and related comment.
	* infrun.c (CANNOT_STEP_HW_WATCHPOINTS): Remove macro.
	(resume): Remove code and comment related to this macro.

doc ChangeLog entry:
	* gdbint.texinfo (CANNOT_STEP_HW_WATCHPOINTS): Remove explanation
	of macro deleted from GDB code.
This commit is contained in:
Pierre Muller 2010-04-26 12:01:44 +00:00
parent 72f6eb52ad
commit b7da9e9f5f
5 changed files with 13 additions and 37 deletions

View file

@ -179,16 +179,6 @@ show_debug_infrun (struct ui_file *file, int from_tty,
#endif
/* Convert the #defines into values. This is temporary until wfi control
flow is completely sorted out. */
#ifndef CANNOT_STEP_HW_WATCHPOINTS
#define CANNOT_STEP_HW_WATCHPOINTS 0
#else
#undef CANNOT_STEP_HW_WATCHPOINTS
#define CANNOT_STEP_HW_WATCHPOINTS 1
#endif
/* Tables of how to react to signals; the user sets them. */
static unsigned char *signal_stop;
@ -1484,18 +1474,6 @@ resume (int step, enum target_signal sig)
"trap_expected=%d\n",
step, sig, tp->trap_expected);
/* Some targets (e.g. Solaris x86) have a kernel bug when stepping
over an instruction that causes a page fault without triggering
a hardware watchpoint. The kernel properly notices that it shouldn't
stop, because the hardware watchpoint is not triggered, but it forgets
the step request and continues the program normally.
Work around the problem by removing hardware watchpoints if a step is
requested, GDB will check for a hardware watchpoint trigger after the
step anyway. */
if (CANNOT_STEP_HW_WATCHPOINTS && step)
remove_hw_watchpoints ();
/* Normally, by the time we reach `resume', the breakpoints are either
removed or inserted, as appropriate. The exception is if we're sitting
at a permanent breakpoint; we need to step over it, but permanent