RFA: Breakpoint infrastructure cleanups [0/8]

Eli Zaretskii eliz@elta.co.il
Sat Oct 18 08:43:00 GMT 2003


> Date: Fri, 17 Oct 2003 14:38:52 -0700
> From: Michael Snyder <msnyder@redhat.com>
> 
> Debugging using tracepoints is a totally different process
> than debugging with breakpoints.  It's like planning and
> setting up a photo or video shoot, going away while someone
> else does the filming, then coming back and looking at
> the results.

Debugging with tracepoints indeed uses a different paradigm, but
_operations_ on tracepoints are almost identical to those for
breakpoints: they have the same syntax and a very similar semantics.
Like breakpoints, each tracepoint is a trap in some point of code,
designed to do something when the program gets to that point.

> Asynchronous signals aren't like traps at all.

I didn't mean to say they were.  I meant to say that catching forks,
signals, longjmps, and syscalls works by setting traps in some
specific portions of the program's code.  So it's the same as setting
a breakpoint, we just give the user a convenience feature to ease the
way of specifying the place where to set the trap.

In other words, all these features use breakpoints of some kind, it's
only their use in the higher-level view of the debugging process is
different.  When discussing the syntax and semantics of these
commands, I think the lower-level similarity is what matters, not the
higher-level distinction of their application.



More information about the Gdb-patches mailing list