Mirror of the gdb-patches mailing list
 help / color / mirror / Atom feed
From: Tom Tromey <tromey@redhat.com>
To: Jan Kratochvil <jan.kratochvil@redhat.com>
Cc: gdb-patches@sourceware.org
Subject: Re: [FYI] Inlining support, rough patch
Date: Tue, 30 Jun 2009 16:11:00 -0000	[thread overview]
Message-ID: <m3tz1x66sd.fsf@fleche.redhat.com> (raw)
In-Reply-To: <20090628101621.GA31457@host0.dyn.jankratochvil.net> (Jan Kratochvil's message of "Sun\, 28 Jun 2009 12\:16\:21 +0200")

>>>>> "Jan" == Jan Kratochvil <jan.kratochvil@redhat.com> writes:

Jan> ### Whether this or that case is shown is also dependent on the current
Jan> ### architecture - currently the behavior differs depending of whether there
Jan> ### is at least one instruction of the same source line after the call
Jan> ### instruction.  Next `step' will have to do _nothing_ to the inferior, just
Jan> ### display the next line in GDB.

This is interesting.  Alexandre Oliva has talked about something
similar -- a dwarf extension which would let gdb users "step" through
a sequence of source statements, even when the compiler has optimized
them away.  The idea would be to emit debug info describing the
variables virtually, and this "step" would simply advance through the
debuginfo without updating the PC.  (I'm not really doing this
justice, but I can't find Alexandre's note to the gcc list atm.)

About your proposal: IIUC, it is trying a bit to hide more of the
underlying reality from the user.  Can it really work in all cases?
I'm wondering about things like multiple levels of inlining (you may
need several do-nothing steps?); multiple levels of inlining where the
user wants to "finish" out of each one (you may need a do-nothing
finish as well?); or inlining that results in a tail-call optimization
being applied (there's no good spot to return to).

Does any of this make sense?  I can't tell if I actually understand :-)

Tom


  parent reply	other threads:[~2009-06-30 16:11 UTC|newest]

Thread overview: 38+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2008-06-13 19:39 Daniel Jacobowitz
2008-06-13 19:43 ` Daniel Jacobowitz
2008-06-23 12:03 ` Jan Kratochvil
2008-06-23 14:23   ` Daniel Jacobowitz
2008-07-02 19:15   ` Daniel Jacobowitz
2008-07-03 11:22     ` [FYI] Inlining support, rough patch [break-by-function-name] Jan Kratochvil
2008-07-03 16:01       ` Daniel Jacobowitz
2008-07-12  7:41         ` Jan Kratochvil
2008-07-08  0:12     ` [FYI] Inlining support, rough patch Daniel Jacobowitz
2008-07-15 19:21 ` Daniel Jacobowitz
2008-07-17 23:53   ` Mark Kettenis
2008-07-18 13:03     ` Daniel Jacobowitz
     [not found]       ` <200807251446.m6PEkfwc027635@brahms.sibelius.xs4all.nl>
2008-07-25 17:47         ` Daniel Jacobowitz
2009-03-31  3:06           ` Tom Tromey
2009-03-31 20:49             ` Mark Kettenis
2009-03-31 22:13               ` Daniel Jacobowitz
2009-04-20 15:49               ` Daniel Jacobowitz
2009-04-20 15:54                 ` Jan Kratochvil
2009-06-27 18:01                   ` Daniel Jacobowitz
2009-06-28 10:16                     ` Jan Kratochvil
2009-06-28 13:35                       ` Daniel Jacobowitz
2009-06-30 16:11                       ` Tom Tromey [this message]
2009-06-30 16:50                         ` Jan Kratochvil
2009-04-22 22:04                 ` Mark Kettenis
2009-04-23  3:17                   ` Eli Zaretskii
2009-04-23  5:56                   ` Stan Shebs
2009-04-23 12:48                   ` Daniel Jacobowitz
2009-06-18 17:55                     ` Tom Tromey
2009-06-20  9:57                       ` Mark Kettenis
2009-06-20 19:28                         ` Samuel Bronson
2009-04-24 21:44                   ` Thiago Jung Bauermann
2008-07-18  2:02   ` Paul Pluzhnikov
2008-07-18  3:07     ` Daniel Jacobowitz
2008-07-20 14:41   ` Eli Zaretskii
2008-07-25 13:54   ` Eli Zaretskii
2008-07-25 14:26     ` Daniel Jacobowitz
2008-07-25 16:11       ` Daniel Jacobowitz
2008-07-26  5:58       ` Eli Zaretskii

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=m3tz1x66sd.fsf@fleche.redhat.com \
    --to=tromey@redhat.com \
    --cc=gdb-patches@sourceware.org \
    --cc=jan.kratochvil@redhat.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