For instructions on how to build libunwind, see the README file in the libunwind source tree. Some notes illustrating the use of libunwind can be found in the file doc/NOTES.
Manual Pages
- libunwind(3) - overview of the libunwind API
- libunwind-ia64(3) - IA-64-specifics
- libunwind-ptrace(3) - ptrace(2) support for libunwind
- libunwind-setjmp(3) - turbo-setjmp()
- unw_create_addr_space(3) - create address space
- unw_destroy_addr_space(3) - destroy address space
- unw_flush_cache(3) - flush cached info
- unw_get_accessors(3) - get pointer to accessor call-backs
- unw_get_fpreg() - read floating-point register
- unw_get_proc_info(3) - get info on current procedure
- unw_get_proc_name(3) - get name of current procedure
- unw_get_reg() - read register
- unw_getcontext(3) - get current machine-state
- unw_init_local(3) - initialize cursor for local unwinding
- unw_init_remote(3) - initialize cursor for remote unwinding
- unw_is_fpreg() - check whether floating-point register
- unw_is_signal_frame() - check whether signal frame
- unw_regname(3) - get register name
- unw_resume(3) - resume execution in a stack frame
- unw_set_caching_policy(3) - set caching policy
- unw_set_fpreg() - write floating-point register
- unw_set_reg() - write register
- unw_step() - step to next (older) frame
Related Documentation
- C++ Exception ABI
- This was originally defined specifically for Itanium, but in the meantime it's being used pretty much for all other platforms, too.
- C++ Exception ABI Extensions
- These extensions were defined by H.J. Lu with help from the GCC and Intel compiler teams to plug some holes which were not covered by the original C++ ABI spec and caused some compatibility problems.
- IA-64 (Itanium) unwind conventions
- See Chapter 11, ``Stack Unwinding and Exception Handling'' and Appendix B, ``Unwind Descriptor Record Format''.
- DWARF-2/3 unwind conventions
- See Section 6.4. Caveat: GCC uses an extended version of what is being documented here. Some of it has been documented as part of the Linux Standards Base, but much of it is currently ``documented'' in the form of source code, only.
Trackback: http://tb.blog.csdn.net/TrackBack.aspx?PostId=1540567