| United States-English |
|
|
|
![]() |
HP-UX 11i Version 3 Release Notes: HP 9000 and HP Integrity Servers > Chapter 10 Libraries and ProgrammingUnwind Library (libunwind) |
|
The Unwind Library, libunwind, provides basic stack unwind functionality for HP-UX applications on Itanium®-based servers, including APIs for printing a stack trace, APIs for unwinding the stack programmatically, and APIs to support the C++ exception handling mechanism. There are two sets of APIs for unwinding the stack programmatically:
The Unwind Library, libunwind, is for Itanium®-based systems only. The current version of libunwind is 1.49. The performance of the unwind express APIs has been improved substantially, as much as 40% compared to version 1.42, which shipped with HP-UX 11i v2. The C++ exception handling mechanism uses these APIs, so there will also be a performance improvement in the processing of thrown exceptions. The actual performance benefit observed in a real application will depend on the relative amount of time spent in exception handling. The U_STACK_TRACE(3X) and _UNW_STACK_TRACE(3X) APIs have been enhanced to include source file and line number information, when symbolic debug information is available, in the generated stack traces. When symbolic debug information is available, the generated stack traces will also show inlined calls. The following new APIs have been added to the unwind express portion of the library:
You will not be affected unless you wish to take advantage of the new APIs for accessing source file and line number information. The format of the output from U_STACK_TRACE(3X) and _UNW_STACK_TRACE(3X) has changed. The information written for each stack frame will include an extra insertion of the form “at file_name:line” (preceding the module name) if symbolic debug information is available for that function. If symbolic debug information is available to identify inlined calls, an extra line will be written for each inlined call; these extra lines do not have a frame index or module name, and show “(inlined)” in place of an IP value. The output from these APIs is intended for humans, and the exact format is subject to change in future releases. Any scripts that depend on this output format are likely to be affected. There are no source or makefile compatibility issues for the programmatic interfaces. Manpages:
|
||||||||||||||||||||||||||||||||||||||||
|
|||||||||||||||