Mirror of the gdb-patches mailing list
 help / color / mirror / Atom feed
* request for structure documentation
@ 2006-01-24 22:30 NZG
  2006-01-24 22:52 ` NZG
  0 siblings, 1 reply; 3+ messages in thread
From: NZG @ 2006-01-24 22:30 UTC (permalink / raw)
  To: gdb-patches

get_prev_register appears to depend on the value of frame_unwind->this_id,
but I can't find any documentation for what this element represents.
Could somebody point me to some documentation or elaborate a bit?

struct frame_unwind
{
  /* The frame's type.  Should this instead be a collection of
     predicates that test the frame for various attributes?  */
  enum frame_type type;
  /* Should an attribute indicating the frame's address-in-block go
     here?  */
  frame_this_id_ftype *this_id;
  frame_prev_register_ftype *prev_register;
};


thx,
NZG


^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: request for structure documentation
  2006-01-24 22:30 request for structure documentation NZG
@ 2006-01-24 22:52 ` NZG
  2006-01-24 22:55   ` Daniel Jacobowitz
  0 siblings, 1 reply; 3+ messages in thread
From: NZG @ 2006-01-24 22:52 UTC (permalink / raw)
  To: gdb-patches

A more specific question:

My code appears to be fixable by either causing the architecture specific 
unwind code to return null in frame 0, or by allowing unwind to occur here, 
but then setting the id to invalid on the unwound frame, thus preventing it 
from printing and stopping the chain of get_prev_frames.

But which is correct? This seems unclear from the comments 

thx,
NZG

On Tuesday 24 January 2006 4:29 pm, NZG wrote:
> get_prev_register appears to depend on the value of frame_unwind->this_id,
> but I can't find any documentation for what this element represents.
> Could somebody point me to some documentation or elaborate a bit?
>
> struct frame_unwind
> {
>   /* The frame's type.  Should this instead be a collection of
>      predicates that test the frame for various attributes?  */
>   enum frame_type type;
>   /* Should an attribute indicating the frame's address-in-block go
>      here?  */
>   frame_this_id_ftype *this_id;
>   frame_prev_register_ftype *prev_register;
> };
>
>
> thx,
> NZG


^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: request for structure documentation
  2006-01-24 22:52 ` NZG
@ 2006-01-24 22:55   ` Daniel Jacobowitz
  0 siblings, 0 replies; 3+ messages in thread
From: Daniel Jacobowitz @ 2006-01-24 22:55 UTC (permalink / raw)
  To: NZG; +Cc: gdb-patches

On Tue, Jan 24, 2006 at 04:51:16PM -0600, NZG wrote:
> A more specific question:
> 
> My code appears to be fixable by either causing the architecture specific 
> unwind code to return null in frame 0, or by allowing unwind to occur here, 
> but then setting the id to invalid on the unwound frame, thus preventing it 
> from printing and stopping the chain of get_prev_frames.
> 
> But which is correct? This seems unclear from the comments 

When you look at a frame, and determine that it is the last frame
(unwinding should stop), return an invalid this_id.  The problem is
presumably that you're failing to make that decision.

-- 
Daniel Jacobowitz
CodeSourcery


^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2006-01-24 22:55 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2006-01-24 22:30 request for structure documentation NZG
2006-01-24 22:52 ` NZG
2006-01-24 22:55   ` Daniel Jacobowitz

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox