Commit Graph

9 Commits

Author SHA1 Message Date
marcel
cf1af76565 Apply local modifications to make Unwind Express BETA 10 buildable and
usable in the FreeBSD kernel.
2006-07-07 23:56:34 +00:00
marcel
a446d8ad8b This commit was generated by cvs2svn to compensate for changes in r160160,
which included commits to RCS files with non-trunk default branches.
2006-07-07 23:04:49 +00:00
marcel
f76eeb002a Import BETA 10 of HP's Unwind Express. This import does not contain
any modifications to make it build as part of the FreeBSD kernel.
Now that the source appears to have stabilized, local changes will
happen on HEAD and will therefore cause affected files to be pulled
from the vendor branch.
2006-07-07 22:59:01 +00:00
marcel
19196476e4 Update to BETA 7. Besides C++ support, which is irrelevant to us,
this version mostly has bugs fixes.
2004-05-09 03:06:25 +00:00
marcel
0202e645a9 Import beta6 of libuwx. This release has some minor fixes and
some minor corrections to beta5.
2003-10-29 04:25:17 +00:00
marcel
2f9c5f7f57 Upgrade Unwind Express (libuwx) to BETA 5. This upgrade includes
all the fixes locally applied and submitted to the author. Not
included in BETA 5, but part of this import are:
o  FreeBSD specific ifdefs to make this compile within a kernel.
   These are limited to include directives and defines.
o  Removal of unused variables, proper casts and initializations
   to allow building with -Werror. This happens in code so has a
   higher chance of causing future import conflicts but not enough
   to worry about it.

I'm especially thankful that the author accepted the change to
replace DISABLE_TRACE with UWX_TRACE_ENABLE so that we can use it
in kernel config files without nasty mappings or indirections as
that would make the integration less perfect. Thanks Cary!
2003-10-09 03:02:46 +00:00
marcel
3289b51a91 Fix a nasty bug that was exposed by disabling the trace support by
default. There were 2 cases where the trace code was in the else-
part of an if-statement without any compound construct to protect
against nullification. The result was that 2 unconditional statements
turned into conditional statements and wrecked havoc.

This fix has been returned to the vendor and in anticipation of a
future import committed onto the vendor branch.
2003-07-12 04:20:56 +00:00
marcel
3b3c37c7db Rename DISABLE_TRACE to UWX_TRACE_ENABLE and change the conditional
compilation accordingly. The net effect is that tracing is not by
default present and that it can easily be compiled-in.

The tracer uses getenv() and printf(), which cannot be used in all
cases (ie from the debugger) and with this change we improved the
applicability of the unwinder.

This change is made on the vendor branch and given back to the
vendor for possible inclusion in future versions.
2003-07-11 01:03:55 +00:00
marcel
1edc7465a0 This is beta4 of libuwx; an ia64 stack unwinder. This code is made
available by Hewlett-Packard under the MIT license. The unwinder is
small, clean and fast and needed little adaptation for use in the
kernel.

This import has embedded in it the changes needed to make it build
in a kernel environment.

To optimize the common case, the kernel will minimize the number
of registers saved by not saving the preserved registers. In case
access to preserved registers is needed (signal handling, ptrace)
the kernel will unwind to the context of the syscall or exception.
For this we need an unwinder.

Approved by: re (blanket)
2003-05-15 05:04:44 +00:00