libunwind-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [libunwind] suggest adding unw_init_local_accessors


From: Mark Young
Subject: Re: [libunwind] suggest adding unw_init_local_accessors
Date: Wed, 11 Dec 2002 16:08:03 -0800
User-agent: Mozilla/5.0 (X11; U; SunOS sun4u; en-US; rv:1.0.1) Gecko/20020920 Netscape/7.0

As presently implemented, an UNW_ENOINFO error from unw_init_local, unw_init_remote, or unw_step is a forward-looking statement that the unwinder does not know how to take the _next_ unwind step. It does not necessarily mean that the cursor's current frame state data is inaccurate.
--Mark

David Mosberger wrote:
On Mon, 09 Dec 2002 13:52:59 -0800, Mark Young <address@hidden> said:

  Mark> 3) errors originating in ia64_make_proc_info can be returned
  Mark> by unw_init_local, unw_init_remote, or unw_step. I'd like to
  Mark> focus recovery for this set of errors in one place by
  Mark> deferring the call to ia64_make_proc_info into unw_step. I
  Mark> believe this can be done with no change in functionality by
  Mark> replacing the ia64_make_proc_info calls in common_init and
  Mark> update_frame_state with return 0 and inserting the call to
  Mark> ia64_make_proc_info (and a test of its return value) as the
  Mark> first thing done in unw_step.

Actually, this one we can't do.  The API requires that after
unw_init_{local,remote}, the cursor must point to a valid frame.
Without the unw_step(), this wouldn't be the case.  I don't want to
change the API because even though it would be easy to make the
suggested change for ia64, it is not clear whether it could reasonably
be implemented for other architectures (and I also don't like the idea
of having an initial cursor value which is meaningless).  Hope that's
OK.

	--david
  

-- 
Mark Young            address@hidden     Tel: 503.526.1661
Staff Engineer         www.model.com      Fax: 503.526.5473
Model Technology, Inc.
10450 SW Nimbus Avenue/Bldg RB, Portland, OR 97223-4347 USA


reply via email to

[Prev in Thread] Current Thread [Next in Thread]