Mirror of the gdb mailing list
 help / color / mirror / Atom feed
From: Daniel Jacobowitz <drow@false.org>
To: Maxim Grigoriev <maxim@tensilica.com>
Cc: gdb@sourceware.org, Marc Gauthier <marc@tensilica.com>,
		Pete MacLiesh <pmac@tensilica.com>,
	Ross Morley <ross@tensilica.com>
Subject: Re: Understanding GDB frames
Date: Tue, 22 May 2007 02:29:00 -0000	[thread overview]
Message-ID: <20070522022933.GA19198@caradoc.them.org> (raw)
In-Reply-To: <46521C04.7040405@hq.tensilica.com>

On Mon, May 21, 2007 at 03:24:04PM -0700, Maxim Grigoriev wrote:
> Let's define that "frames A and B are the same" if
> 
>    frame_id_eq ( A->this_id, B->this_id ) == true
> 
> The breakpoit has been set at line 18 and hit 5 times.
> Execution control has been subsequently taken by
> gdb in five frames numbered 1, 2, 3, 4, and 5.
> 
> According to the definition of GDB frames,
> which statement is correct ?
> 
> ANSWERS
> =======
> 
> 1) All frames 1, 2, 3, 4, and 5 are the same;
> 2) All frames 1, 2, 3, 4, and 5 are different from each other;
> 3) Frames 1,2, and 4 are the same. Frames 3 and 5 are
>   different from 1, 2, 4 and from each other;
> 4) It's implementation-dependent. While doing architecture ports,
>   people decide how to implement frame_id-related functions
>   to compare frames;
> 5) Other ( explanation would be appreciated ).

The correct answer, in my opinion, is that all of these frames are
different.  It is likely that when you compare their frame IDs, all of
those representing a call of f11 from main will have the same frame
ID - you can't always compare two arbitrary frame IDs if you don't
know where they came from, and it's impossible to get this 100%
correct without slowing down the execution of the program, so some of
them may be indistinguishable.

The frame ID is supposed to indicate which one of a set of currently
running frames you're looking at.  Maybe if we have varobjs for a
specified frame ID, we should insert a scope breakpoint at the exit of
that frame to mark those varobjs as invalid.

-- 
Daniel Jacobowitz
CodeSourcery


  parent reply	other threads:[~2007-05-22  2:29 UTC|newest]

Thread overview: 40+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2007-05-21 22:24 Maxim Grigoriev
2007-05-21 23:28 ` Ross Morley
2007-05-22  2:05   ` Nick Roberts
2007-05-22  2:31     ` Daniel Jacobowitz
2007-05-22  2:51       ` Nick Roberts
2007-05-22 10:58         ` Daniel Jacobowitz
2007-05-22  8:40       ` Ross Morley
2007-05-22 16:10         ` Marc Gauthier
2007-05-22 16:36           ` Daniel Jacobowitz
2007-05-22 18:14             ` Vladimir Prus
2007-05-22 18:33             ` Jim Ingham
2007-05-22 18:36               ` Daniel Jacobowitz
2007-05-23 21:45                 ` Jim Blandy
2007-05-22 17:20           ` Ross Morley
2007-05-22 20:24           ` Nick Roberts
2007-05-22 21:12             ` Maxim Grigoriev
2007-05-22  1:40 ` Joel Brobecker
2007-05-22  2:29 ` Daniel Jacobowitz [this message]
2007-05-22 18:37 ` Jim Blandy
2007-05-22 19:17   ` Maxim Grigoriev
2007-05-22 20:25     ` Nick Roberts
2007-05-22 20:33       ` Ross Morley
2007-05-22 20:45       ` Maxim Grigoriev
2007-05-22 21:26         ` Nick Roberts
2007-05-23  7:00           ` Eli Zaretskii
2007-05-23 10:48             ` Daniel Jacobowitz
2007-05-23 12:44               ` Eli Zaretskii
2007-05-22 23:56     ` Jim Blandy
2007-05-23  1:01       ` Maxim Grigoriev
2007-05-23  2:24         ` Daniel Jacobowitz
2007-05-23 16:37           ` Maxim Grigoriev
2007-05-23  0:05     ` Jim Blandy
2007-05-23  0:17       ` Daniel Jacobowitz
2007-05-23  0:17       ` Ross Morley
2007-05-23  0:32         ` Jim Blandy
2007-05-23  2:24           ` Ross Morley
2007-05-23 21:52             ` Jim Blandy
2007-05-24  0:05               ` Ross Morley
2007-05-24  1:24                 ` Ross Morley
2007-05-24 21:56                   ` Jim Blandy

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=20070522022933.GA19198@caradoc.them.org \
    --to=drow@false.org \
    --cc=gdb@sourceware.org \
    --cc=marc@tensilica.com \
    --cc=maxim@tensilica.com \
    --cc=pmac@tensilica.com \
    --cc=ross@tensilica.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