[PATCH] Add a test for LowerInvoke that doesn't use "-enable-correct-eh-support"
mseaborn at chromium.org
Thu Mar 20 09:57:36 PDT 2014
On 20 March 2014 09:29, Rafael Espíndola <rafael.espindola at gmail.com> wrote:
> btw, isn't all of LowerInvoke dead? It is only used with
> ExceptionHandling::None. We could probably just produce an error in
> that case.
I'd rather hoped to keep LowerInvoke's basic functionality. It is useful
for PNaCl, where we support stripping out all exception handling from a
pexe at link time, for pexes that don't need exception handling, in order
to reduce the pexe size. (In this case, throw always reports a fatal
error.) This means we don't need to build libraries such as libc++ twice
(with and without exception handling). We can build libraries with
exception handling but strip it out from the bitcode later.
Also, I don't think it's dead. The following subdirectories of lib/Target
don't set ExceptionsType, so they presumably get ExceptionHandling::None:
If I make "case ExceptionHandling::None" produce an error in Passes.cpp, I
get a load of lit test failures even for x86, e.g. test/CodeGen/X86/xor.ll,
just because these are using minimal target triples which don't specify an
exception handling type.
I expect LowerInvoke is still useful for backends that don't support
exception handling yet or won't ever need to.
-------------- next part --------------
An HTML attachment was scrubbed...
More information about the llvm-commits