Mirror of the gdb-patches mailing list
 help / color / mirror / Atom feed
From: Michael Snyder <msnyder@redhat.com>
To: Elena Zannoni <ezannoni@redhat.com>
Cc: Daniel Jacobowitz <drow@mvista.com>, gdb-patches@sources.redhat.com
Subject: Re: [RFA/PATCH] breakpoint.c: fix until command
Date: Tue, 07 Jan 2003 02:09:00 -0000	[thread overview]
Message-ID: <3E1A36AD.78DAFA63@redhat.com> (raw)
In-Reply-To: <15898.12832.906305.726378@localhost.redhat.com>

Elena Zannoni wrote:
> 
> Michael Snyder writes:
>  > Elena Zannoni wrote:
>  > >
>  > > Daniel Jacobowitz writes:
>  > >  > On Fri, Jan 03, 2003 at 04:05:11PM -0800, Michael Snyder wrote:
>  > >  > > Well then...
>  > >  > > 1) Use find_pc_partial_function to determine bounds and
>  > >  > > distinguish between in-bounds and out-of-bounds locations.
>  > >  > > 2) For func_start > loc >= func_end, use a frame-relative bp.
>  > >  > > 3) For func_start == loc or loc < func_start or loc > func_end,
>  > >  > > use a frameless bp.
>  > >  > > 4) document, document, document!
>  > >  > > Including the recursive corner case.
>  > >  > >
>  > >  > > Agreed, Elena?
>  > >  >
>  > >  > So you're saying:
>  > >  >  - if the PC is in this function, only stop when this frame reaches it.
>  > >
>  > > yes
>  > >
>  > >  >  - if the PC is the _beginning_ of a function (what about prologue
>  > >  >    skipping, does that come into this?  I don't remember if
>  > >  >    decode_line_1 will skip the prologue, but I think it will.) or in
>  > >  >    some other function, stop in any frame.
>  > >
>  > > yes, but every time I think about this, I can find an example for
>  > > which we get in trouble. Another case that comes to mind is until
>  > > 0x12345 where the address is in the prologue of the same function.
>  > > What to do in this case.
>  >
>  > We've got to draw a line in the sand.  ;-)
>  > Making "until factorial" an exception is a big enough concession.
>  > I don't think the user can expect to do "until some-address-in-the-prologue"
>  > and expect it to have a special meaning.
>  >
>  > My suggestion remains:
>  >   if func_start > location >= func_end then frame_relative.
>  >
>  >
>  > >  > > Daniel?  Michael?
>  > >  >
>  > >  > I'd be happier if those two behaviors had different names, but the
>  > >  > logical name I'd give to both of them is "until", so I guess we'll just
>  > >  > have to live with this.  (3) is meaningful when inside the function
>  > >  > too, and with this scheme there's no way to express that without using
>  > >  > breakpoints; but I think that's a small loss.
>  > >  >
>  > >
>  > > Actually I start to believe that we need 2 separate commands.  One
>  > > would do the current behavior the other would be w/o frame check.  We
>  > > already have 'jump' (and it means something different). Maybe 'goto'?
>  > > I can't think of a decent name. 'reach', 'get to'?
>  >
>  > run-to?
>  > I like the idea of restricting "until" to the current function,
>  > and using a separate command for locations outside the current function.
>  > (or inside, if you want the effect of a temporary breakpoint).
>  > This would remove the ambiguity.
> 
> I think that if we can find a decent name, there is more agreement
> towards separating the behaviors. Except that 'run' in gdb means start
> from the beginning, so runto can be ambiguous (it is also used in the
> testsuite a lot with the meaning of start over).

Ah, that's right.  I was thinking of that usage, but I forgot
that it starts from the beginning.

Doesn't the testsuite also have a similar command that means
"set a breakpoint here and continue till you get there"?


  reply	other threads:[~2003-01-07  2:09 UTC|newest]

Thread overview: 61+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2002-12-20 10:19 Elena Zannoni
2002-12-23 15:55 ` Michael Snyder
2002-12-23 16:13   ` Daniel Jacobowitz
2002-12-23 16:59     ` Michael Snyder
2002-12-23 19:23       ` Daniel Jacobowitz
2003-01-02 20:25         ` Michael Snyder
2003-01-02 20:34           ` Elena Zannoni
2003-01-02 20:40             ` Michael Snyder
2003-01-03  0:12             ` Elena Zannoni
2003-01-03  1:44               ` Michael Snyder
2003-01-03  1:50                 ` Daniel Jacobowitz
2003-01-03  2:37                   ` Michael Snyder
2003-01-03 14:29                     ` Elena Zannoni
2003-01-03 23:51                       ` Michael Snyder
2003-01-03 23:53                         ` Elena Zannoni
2003-01-04  0:05                           ` Michael Snyder
2003-01-04  1:54                             ` Daniel Jacobowitz
2003-01-06 22:06                               ` Elena Zannoni
2003-01-07  1:27                                 ` Michael Snyder
2003-01-07  1:45                                   ` Elena Zannoni
2003-01-07  2:09                                     ` Michael Snyder [this message]
2003-01-07  4:31                                       ` Daniel Jacobowitz
2003-01-08 22:08                                         ` Elena Zannoni
2003-01-09  1:52                                           ` Daniel Jacobowitz
2003-01-10 22:25                                             ` Elena Zannoni
2003-01-10 22:28                                               ` Daniel Jacobowitz
2003-01-10 23:20                                                 ` Elena Zannoni
2003-01-03 14:15                   ` Elena Zannoni
2003-01-03 23:31                     ` Michael Snyder
2003-01-03 23:51                       ` Elena Zannoni
2003-01-03 23:58                         ` Michael Snyder
2003-01-03 14:13                 ` Elena Zannoni
2003-01-03 23:28                   ` Michael Snyder
2003-01-02 20:01       ` Elena Zannoni
2003-01-02 20:29         ` Michael Snyder
2003-01-03  4:15 Michael Elizabeth Chastain
2003-01-03  4:59 ` Daniel Jacobowitz
2003-01-03 21:52   ` Michael Snyder
2003-01-03 21:54     ` Daniel Jacobowitz
2003-01-03 22:39       ` Elena Zannoni
2003-01-03 23:09         ` Michael Snyder
2003-01-03 14:43 ` Elena Zannoni
2003-01-03 22:06   ` Michael Snyder
2003-01-03 22:43     ` Elena Zannoni
2003-01-03 23:13       ` Michael Snyder
2003-01-03  6:49 Michael Elizabeth Chastain
2003-01-03 15:17 ` Daniel Jacobowitz
2003-01-03 16:38 Michael Elizabeth Chastain
2003-01-03 16:57 ` Daniel Jacobowitz
2003-01-03 16:48 Michael Elizabeth Chastain
2003-01-03 23:33 ` Michael Snyder
2003-01-03 17:07 Michael Elizabeth Chastain
2003-01-03 17:51 ` Elena Zannoni
2003-01-03 17:40 Michael Elizabeth Chastain
2003-01-03 18:03 Michael Elizabeth Chastain
2003-01-04  0:37 Michael Elizabeth Chastain
2003-01-05 17:02 ` Andrew Cagney
2003-01-07  1:30   ` Michael Snyder
2003-01-07  3:53 Michael Elizabeth Chastain
2003-01-07  4:05 Michael Elizabeth Chastain
2003-01-11  1:04 Michael Elizabeth Chastain

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=3E1A36AD.78DAFA63@redhat.com \
    --to=msnyder@redhat.com \
    --cc=drow@mvista.com \
    --cc=ezannoni@redhat.com \
    --cc=gdb-patches@sources.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