From: Eli Zaretskii <eliz@gnu.org>
To: Michael Snyder <msnyder@vmware.com>
Cc: gdb-patches@sourceware.org, drow@false.org,
pedro@codesourcery.com, teawater@gmail.com
Subject: Re: [RFA] Reverse Debugging, 5/5
Date: Fri, 03 Oct 2008 06:30:00 -0000 [thread overview]
Message-ID: <uhc7ui43o.fsf@gnu.org> (raw)
In-Reply-To: <48E53FE3.8090306@vmware.com>
> Date: Thu, 02 Oct 2008 14:40:51 -0700
> From: Michael Snyder <msnyder@vmware.com>
> CC: "gdb-patches@sourceware.org" <gdb-patches@sourceware.org>,
> "drow@false.org" <drow@false.org>,
> "pedro@codesourcery.com" <pedro@codesourcery.com>,
> "teawater@gmail.com" <teawater@gmail.com>
>
> >> + case EXEC_ERROR:
> >> + default:
> >> + fprintf_filtered, (out,
> >> + _("Target `%s' does not support execution-direction."),
> >> + target_shortname);
> >> + break;
> >
> > Why print an error message? isn't it better to say the direction is
> > "forward" (which is documented as the default in your patch for the
> > manual)?
>
> Maybe. I'm open to discussion.
>
> The context is, the user says "show exec-direction"
> with a target that doesn't support reverse.
>
> Is it better to just say "Forward", with no comment,
> or is it better to let the user know that the question
> is not applicable? Or both?
Both, I'd say.
> >> + if (dir == EXEC_REVERSE)
> >> + error (_("Already in reverse mode. Use '%s' or 'set exec-dir forward'."),
> >> + cmd);
> >
> > Isn't it better to silently do the equivalent of "cmd"?
>
> Possibly. Again, I'm open to discussion. But I think
> we've discussed this one before
Well, at least I'm consistent... ;-)
> > ALL side effects? I thought some of them cannot be undone,
> > un-outputting to the various I/O devices etc.
>
> That depends on the implementation on the target side.
> For instance, VMware's implementation can undo device I/O,
> so long as the device is virtual, but gdb-freeplay cannot.
>
> GDB has no way of knowing this, but perhaps I should say
> something more explicit about it in the doc?
Yes.
> >> Starting from
> >> +the first line of a function, @code{reverse-next} will take you back
> >> +to the caller of that function, @emph{before} the function was called.
> >
> > Shouldn't we have some kind of caveat here regarding function prologue
> > and epilogue?
>
> Like what?
>
> If I've done my job right, prologues and epilogues
> should be handled transparently, just like they are
> when stepping forward.
Are they treated transparently when we step forward? I had an
impression that in optimized code, they aren't always transparent.
next prev parent reply other threads:[~2008-10-03 6:30 UTC|newest]
Thread overview: 15+ messages / expand[flat|nested] mbox.gz Atom feed top
2008-10-01 19:21 Michael Snyder
2008-10-02 19:49 ` Eli Zaretskii
2008-10-02 21:42 ` Michael Snyder
2008-10-03 6:30 ` Eli Zaretskii [this message]
2008-10-03 18:07 ` Michael Snyder
2008-10-04 8:13 ` Eli Zaretskii
2008-10-04 17:56 ` Michael Snyder
2008-10-02 22:43 ` Michael Snyder
2008-10-03 6:35 ` Eli Zaretskii
2008-10-02 22:54 ` Michael Snyder
2008-10-03 6:25 ` Eli Zaretskii
2008-10-03 17:45 ` Daniel Jacobowitz
2008-10-03 17:58 ` Michael Snyder
2008-10-07 3:30 ` Joel Brobecker
2008-10-07 18:25 ` Michael Snyder
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=uhc7ui43o.fsf@gnu.org \
--to=eliz@gnu.org \
--cc=drow@false.org \
--cc=gdb-patches@sourceware.org \
--cc=msnyder@vmware.com \
--cc=pedro@codesourcery.com \
--cc=teawater@gmail.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox