2002-04-05 23:37:55 +00:00
|
|
|
|
-*-Mode: outline-*-
|
|
|
|
|
|
2004-09-09 13:15:24 +00:00
|
|
|
|
* News for v0.98:
|
|
|
|
|
|
|
|
|
|
** Update libunwind to be compliant with the updated/expanded
|
2004-09-15 08:37:00 +00:00
|
|
|
|
ia64 unwind specificiation by HJ Lu [1]. This is needed for
|
2004-09-09 13:15:24 +00:00
|
|
|
|
GCC 3.4 compatibility.
|
|
|
|
|
|
2004-09-15 08:37:00 +00:00
|
|
|
|
[1] http://www.kernel.org/pub/linux/devel/gcc/unwind/
|
|
|
|
|
|
2004-09-09 13:15:24 +00:00
|
|
|
|
** Initial support for x86-64 has been added courtesy of Max Asbock.
|
|
|
|
|
Along with this came a bunch of DWARF2 unwinder fixes.
|
|
|
|
|
|
|
|
|
|
** A new rountine unw_strerror() has been added courtesy of
|
|
|
|
|
Thomas Hallgren.
|
|
|
|
|
|
|
|
|
|
** Including <libunwind.h> now defines 4 macros that can be used
|
|
|
|
|
to determine the version number of libunwind. Specifically,
|
|
|
|
|
UNW_VERSION_MAJOR, UNW_VERSION_MINOR, UNW_VERSION, and
|
|
|
|
|
UNW_VERSION_CODE are defined by the header now.
|
|
|
|
|
|
|
|
|
|
** Bug fixes
|
|
|
|
|
*** Fix a memory-leak in _UPT_get_dyn_info_list_addr() courtesy of Ed Connell.
|
|
|
|
|
*** Fix a crash in libunwind-ptrace courtesy of Mark Young.
|
|
|
|
|
*** Fix a bug in ia64-version of unw_init_remote() which prevented
|
|
|
|
|
it from working correctly for the local address space. Reported by
|
|
|
|
|
Troy Heber.
|
|
|
|
|
*** Many other small and not so small fixes.
|
|
|
|
|
|
2004-04-23 01:32:43 +00:00
|
|
|
|
* News for v0.97:
|
|
|
|
|
|
|
|
|
|
** unw_get_proc_name() may now be called from signal-handler.
|
|
|
|
|
|
|
|
|
|
** The ptrace-helper routines are now declared in libunwind-ptrace.h.
|
|
|
|
|
Applications which use ptrace-based unwinding should include
|
|
|
|
|
<libunwind-ptrace.h> to get the _UPT_*() routines declared.
|
|
|
|
|
|
|
|
|
|
** libunwind has been split into a "local-only" and a "generic" versions.
|
|
|
|
|
The former is optimized for local unwinding (within a process) and
|
|
|
|
|
is called libunwind.so (shared version) or libunwind.a (archive
|
|
|
|
|
version). The generic version is not limited to unwinding within a
|
|
|
|
|
process and is called libunwind-generic.so (shared version)
|
|
|
|
|
libunwind-generic.a (archive version). Similarly, the ptrace()
|
|
|
|
|
support has been separated out into a convenience library called
|
|
|
|
|
libunwind-ptrace.a. For the most part, backwards-compatibility
|
|
|
|
|
is retained. However, when building an application which uses
|
|
|
|
|
libunwind, it may be necessary to change the linker command-line
|
|
|
|
|
as shown in the table below:
|
|
|
|
|
|
|
|
|
|
Application which does: Before v0.97: With v0.97:
|
|
|
|
|
----------------------- ------------- -----------
|
|
|
|
|
local unwinding only: -lunwind -lunwind
|
|
|
|
|
remote unwinding: -lunwind -lunwind-generic
|
|
|
|
|
cross unwinding: -lunwind-PLAT -lunwind-PLAT
|
|
|
|
|
ptrace-based unwinding: -lunwind -lunwind-ptrace -lunwind-generic
|
|
|
|
|
|
|
|
|
|
The motivation for this splitting is to keep libunwind.so as minimal
|
|
|
|
|
as possible. This library will eventually be loaded by most (if not
|
|
|
|
|
all) executables and hence it is important to ensure that it can
|
|
|
|
|
be loaded as quickly as possible.
|
|
|
|
|
|
|
|
|
|
** unw_getcontext() tuned on IA-64.
|
|
|
|
|
|
|
|
|
|
The unw_getcontext() routine used to be provided by (GNU) libc
|
|
|
|
|
(getcontext()). This caused unnecessary overhead (e.g., an
|
|
|
|
|
unnecessary system-call to sigprocmask()). The new
|
|
|
|
|
unw_getcontext() only does the work really needed for libunwind and
|
|
|
|
|
hence performs much better. However, this change implies that
|
|
|
|
|
programs linked against libunwind v0.97 won't be
|
|
|
|
|
backwards-compatible with earlier versions (there would be an
|
|
|
|
|
unresolved symbol for _Uia64_getcontext()).
|
|
|
|
|
|
|
|
|
|
** Fix NaT-bit handling on IA-64.
|
|
|
|
|
|
|
|
|
|
New test-cases have been added to test the handling of the NaT bit
|
|
|
|
|
(and floating-point NaT values) and all discovered/known bugs have
|
|
|
|
|
been fixed.
|
|
|
|
|
|
|
|
|
|
** Initial DWARF-based unwinder for x86.
|
|
|
|
|
|
|
|
|
|
There is a beginning for a DWARF-based unwinder for x86. Work for
|
|
|
|
|
x86-64-support based on this DWARF unwinder is currently underway
|
|
|
|
|
at IBM and it is expected that this support will be merged into the
|
|
|
|
|
official tree soon.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
* News for v0.96:
|
|
|
|
|
|
|
|
|
|
** _Unwind_*() routines defined by the C++ ABI are now included in
|
|
|
|
|
libunwind.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
* News for v0.95:
|
|
|
|
|
|
|
|
|
|
** Bigger, better, faster, or so the theory goes.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
* News for v0.93:
|
|
|
|
|
|
|
|
|
|
** More bug-fixes & improved HP-UX support.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
* News for v0.92:
|
|
|
|
|
|
|
|
|
|
** Bug-fix release. IA-64 unwinder can now be built with Intel compiler (ECC).
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
* News for v0.91:
|
|
|
|
|
|
|
|
|
|
** Lots of documentation updates
|
|
|
|
|
** Some portability fixes.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
* News for v0.9:
|
|
|
|
|
|
|
|
|
|
** The libunwind API is mostly feature-complete at this point (hence the
|
|
|
|
|
version jump from v0.2 to v0.9).
|
|
|
|
|
|
|
|
|
|
|
2002-04-05 23:37:55 +00:00
|
|
|
|
* News for v0.2:
|
|
|
|
|
|
|
|
|
|
** Automated configuration/build with autoconf and automake.
|
|
|
|
|
** Added support for building libunwind as a shared library.
|
|
|
|
|
** Added support for remote unwinding.
|
|
|
|
|
** Added support for cross-building.
|
|
|
|
|
** Added two new routines to the API:
|
|
|
|
|
- unw_is_fpreg()
|
|
|
|
|
- unw_get_save_loc()
|
|
|
|
|
** Added multi-architecture supports (lets a single application use
|
|
|
|
|
the unwind libraries for multiple target architectures; this is useful,
|
|
|
|
|
e.g., useful for building a debugger that can support multiple targets
|
2002-12-19 07:16:50 +00:00
|
|
|
|
such as x86, ia64, etc.)
|
2002-04-05 23:37:55 +00:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
* News for v0.1:
|
|
|
|
|
|
|
|
|
|
** Added support for exception handling.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
* News for v0.0:
|
|
|
|
|
|
|
|
|
|
** It's a brand new package.
|