Provided by: libunwind-dev_1.2.1-8_amd64 bug

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  general,  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() instead 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/.