[cfe-dev] [libunwind] relation between llvm libunwind and nongnu libunwind

Lei Zhang via cfe-dev cfe-dev at lists.llvm.org
Mon Sep 5 06:10:33 PDT 2016


2016-09-05 1:44 GMT+08:00 David Chisnall <david.chisnall at cl.cam.ac.uk>:
> For 99% of cases (throwing exceptions, force unwinding the stack, walking the stack to generate a stack trace), either can be used interchangeably (slightly less true on ARM, I believe, but probably there also).  The interfaces defined in unwind.h are, for the most part, standard APIs and are implemented in compatible ways by either.

I did notice that LLVM's libunwind has a few symbols that are
unavailable in the nongnu one, including __register_frame and
__deregister_frame. I once tried building llvm itself against the
nongnu libunwind, and failed due to missing those symbols. I don't
know if they are also part of the unwinding ABI.


Lei


More information about the cfe-dev mailing list