[LLVMdev] Producing a stack dump via libunwind?

Talin viridia at gmail.com
Mon Oct 26 22:55:35 PDT 2009


Hmm, well I looked at the code, and it's significantly more complex than I
really want to deal with at this moment. I was hoping for some sort of API,
like libunwind, that is supported across multiple platforms, rather than
something that has to be implemented for a bunch of processors that I don't
have :)

I realize that this is a rather hard problem to begin with - which is why I
was hoping to leverage someone else's solution rather than build my own.

As an aside, when I was working at Electronic Arts, we had a number of
"crash dumper" tools that automatically collected stack trace info for C++
programs which were used during the QA process. After I left the company, I
looked around for an open source solution that would do the same thing -
that is, to give a summary report of a crash that could be uploaded or
attached to a bug report. I know that Mozilla and KDE have utilities like
these, as does OS X - but what I didn't find was any sort of general library
or toolkit for doing this. (Maybe I was looking in the wrong places).

The more that I delve into the realm of exceptions, stack dumps, source
level debugging, and other areas where the compiler interfaces with the
platform, the more I kind of wish that the LLVM umbrella would extend a
little further, to provide the same kind of platform-neutral abstractions
that it does for code generation.

On Sun, Oct 25, 2009 at 2:07 AM, Duncan Sands <baldrick at free.fr> wrote:

> Hi Talin,
>
>
>  I'm using the LLVM exception handling intrinsics, along with a custom
>> personality function, to do exception handling and it is working well. Now,
>> I would like to add the ability to produce a human-readable stack backtrace
>> for exceptions which are not caught (or rather, which are caught by some
>> top-level function which prints the exception's stack trace).
>>
>
> the Ada frontend does this in gcc/ada/tracebak.c.
>
> Ciao,
>
> Duncan.
>



-- 
-- Talin
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20091026/b4e02815/attachment.html>


More information about the llvm-dev mailing list