Port-ia64 archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Unwind (just) works



Hi,

I've been working on stack unwind for ddb for some time now. I've just
checked in the code, and updated the downloads directory:

http://cherry.beevomit.org/downloads/netbsd-anvil/


Please note that the unwind code is take 1; ie; it has bugs.

It works for most functions, and only maintains sufficient information
( return pointer, size of frame ) to unwind. I'll update this to do
more ( such as fetch parameters ) as we go forward; Right now this can
be used as a partly reliable tool to unwind _most_ types of functions
( notable exceptions are marked very visibly in the source ).

This is a "from scratch" effort, and neither includes, nor is inspired
by David Mosberger's unwind library, which we may or may not decide to
adopt later, depending on how this code matures.

type the usual: 'bt' at the debugger prompt to get a sample backtrace.
You need to #define UNWIND_DIAGNOSTIC in unwind/stackframe.c to get
all the gory staterecord related stuff.

New files:
sys/arch/ia64/unwind/

stackframe.[ch]
decode.[ch]


Thanks,

Cherry.



Home | Main Index | Thread Index | Old Index