gdb requires watchpoints to fire after the write

Tom Tromey tom@tromey.com
Wed Aug 29 20:58:00 GMT 2018


>>>>> "Pedro" == Pedro Alves <palves@redhat.com> writes:

Pedro> Yeah, it's confusing.

[... great explanation ... ]

This would be great as comments in gdbarch.sh and target.h.
None of these things have comments currently.

Pedro> We could most probably streamline all of this and come up with a better
Pedro> design with some thought.  See also the comment in mips-tdep.c:

Pedro>   /* FIXME: cagney/2003-08-29: The macros target_have_steppable_watchpoint,
Pedro>      HAVE_NONSTEPPABLE_WATCHPOINT, and target_have_continuable_watchpoint
Pedro>      need to all be folded into the target vector.  Since they are
Pedro>      being used as guards for target_stopped_by_watchpoint, why not have
Pedro>      target_stopped_by_watchpoint return the type of watchpoint that the code
Pedro>      is sitting on?  */
Pedro>   set_gdbarch_have_nonsteppable_watchpoint (gdbarch, 1);

I'm curious about why this should be in the target rather than in the
gdbarch.  It seems like a property of the ISA.

Is it possible for gdbserver to do the single-step itself, avoiding a
round trip?  That was the only rationale I could think of.

Tom



More information about the Gdb mailing list