[LLVMdev] unwind's permanent residence

Renato Golin renato.golin at linaro.org
Sat Jan 31 09:37:48 PST 2015


On 31 Jan 2015 18:31, "Dan Albert" <danalbert at google.com> wrote:
>
> On Jan 31, 2015 08:42, "Jonathan Roelofs" <jroelofs.lists at gmail.com>
wrote:
> > My worry is the scenario of throwing in one dso, then running a cleanup
as you're unwinding through another dso. If that cleanup throws, and
invokes a different unwinder, there's no way for that second unwinder to
know about the state of the first. If this were c++, we'd break the
requirement that throwing from a destructor during exception propagation
causes the app to terminate.
> >
> > I think there can really only be one unwinder per application.
>
> This was my concern as well, but we are only talking about the default
behavior of --rtlib=compiler-rt, which is a case where we have no extra
information. For triples that we know for a fact use libgcc as the system
unwinder it would make sense to have that target's default be libgcc.

I agree, but it should be easy to change that behaviour by replacing the
unwinder, not just adding a new one via -l.

Cheers,
Renato
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20150131/b06df945/attachment.html>


More information about the llvm-dev mailing list