This is the mail archive of the
gdb@sourceware.org
mailing list for the GDB project.
Re: MI *stopped versus silent breakpoint
- From: teawater <teawater at gmail dot com>
- To: Marc Khouzam <marc dot khouzam at ericsson dot com>
- Cc: gdb at sourceware dot org
- Date: Tue, 3 Feb 2009 13:36:14 +0800
- Subject: Re: MI *stopped versus silent breakpoint
- References: <6D19CA8D71C89C43A057926FE0D4ADAA06CB0F19@ecamlmw720.eamcs.ericsson.se>
Hi Marc,
When I try reverse-debug with MI what I got is:
(gdb)
reverse-finish
&"reverse-finish\n"
~"Run back to call of #0 cool () at 1.c:15\n"
^running
*running,thread-id="all"
(gdb)
*stopped
*running,thread-id="all"
~"main () at 1.c:25\n"
~"25\t b = cool ();\n"
*stopped
(gdb)
Could you give me some example about what you talk about ?
Thanks,
Hui
On Wed, Jan 21, 2009 at 23:41, Marc Khouzam <marc.khouzam@ericsson.com> wrote:
> Hi,
>
> I just found out that a breakpoint can be made silent, in which case
> there
> is no breakpoint output when it is hit. When doing a reverse-finish
> operation, a silent breakpoint is used, and when hit the inferior is
> resumed
> automatically, and then a single-step is done.
>
> In CLI, it makes it look like the inferior stopped only once, instead of
> twice.
>
> In MI though, with the *stopped events, we do get an empty
> *stopped for the silent breakpoint. So I see two *stopped events
> consecutively.
>
> I wondered if a silent breakpoint should in fact generate a *stopped
> event
> or not? For a frontend, it can be confusing to see two stopped events.
> FYI, what I did for DSF-GDB and reverse debugging, is to ignore empty
> *stopped.
> I stilled wondered about GDB though.
>
> Marc
>
>
>
>
>
>
>