dwww Home | Manual pages | Find package

UNW_GETCONTEXT(3)            Programming Library             UNW_GETCONTEXT(3)

NAME
       unw_getcontext -- get initial machine-state

SYNOPSIS
       #include <libunwind.h>

       int unw_getcontext(unw_context_t *ucp);

DESCRIPTION
       The  unw_getcontext() routine initializes the context structure pointed
       to by ucp with the machine-state of the call-site.  The  exact  set  of
       registers stored by unw_getcontext() is platform-specific, but, in gen-
       eral, at least all preserved (``callee-saved'') and  all  frame-related
       registers, such as the stack-pointer, will be stored.

       This routine is normally implemented as a macro and applications should
       not attempt to take its address.

PLATFORM-SPECIFIC NOTES
       On IA-64, unw_context_t has a layout that is compatible  with  that  of
       ucontext_t and such structures can be initialized with getcontext() in-
       stead of unw_getcontext().  However, the reverse is not true and it  is
       not  safe  to  use structures initialized by unw_getcontext() in places
       where a structure initialized by getcontext() is expected.  The  reason
       for  this  asymmetry  is that unw_getcontext() is optimized for maximum
       performance and does not, for example, save the signal mask.

RETURN VALUE
       On successful completion, unw_getcontext()  returns  0.   Otherwise,  a
       value of -1 is returned.

THREAD AND SIGNAL SAFETY
       unw_getcontext()  is  thread-safe  as well as safe to use from a signal
       handler.

SEE ALSO
       libunwind(3), unw_init_local(3)

AUTHOR
       David Mosberger-Tang
       Email: dmosberger@gmail.com
       WWW: http://www.nongnu.org/libunwind/.

Programming Library             16 August 2007               UNW_GETCONTEXT(3)

Generated by dwww version 1.14 on Fri Jan 24 06:19:18 CET 2025.