Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
UNW_GETCONTEXT(3libunwind)   Programming Library    UNW_GETCONTEXT(3libunwind)

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(3libunwind), unw_init_local(3libunwind)

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

Programming Library		29 August 2023	    UNW_GETCONTEXT(3libunwind)

Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=unw_getcontext&sektion=3&manpath=FreeBSD+Ports+14.3.quarterly>

home | help