[LLVMdev] [cfe-dev] Unwind behaviour in Clang/LLVM

Renato Golin renato.golin at linaro.org
Thu Feb 6 07:18:02 PST 2014


Hi Joerg,

You are right, there are three separate issues here: unwinding, debug info
and exception handling.

Debug and EH require unwinding, but one doesn't require the other and
unwinding is not exclusive to either.


On 6 February 2014 14:51, Joerg Sonnenberger <joerg at britannica.bec.de>wrote:

> (1) Should enough unwind data be provided for a basic, read-only stack
> walk?
>

As you said, platforms and systems should define their own defaults, and
that's mainly driven by the front-end via flags and triples.

The behaviour of flags should be precise, and different flags should be
on/off by default depending on the triple, so build systems can enforce
flags if they need to make sure the behaviour will be the same across
different platforms.

I can't decide that, but those decisions should stay in the front-end. To
the back-end, function attributes should be able to control table emission
(or maybe we need flags, I don't know).



> That said, the option already exists for changing the default:
> -funwind-tables. There shouldn't be another ARM specific flag.
>

So, can I assume that -f{no-}unwind-tables's syntax is to completely
enable/disable the unwind tables and add/remove the ELF sections from the
objects? If that's so, I can easily remove -arm-disable-ehabi and check on
that flag.

thanks,
--renato
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20140206/26dbccf2/attachment.html>


More information about the llvm-dev mailing list