[LLVMdev] RFC: New Exception Handling Proposal

Eric Christopher echristo at apple.com
Mon Nov 23 19:18:07 PST 2009


> 
> Since my object representations are not C++-like, I am not using any of 
> the cxa_* C++ library functions. Instead, my code calls the _Unwind 
> functions directly, and I have my own personality function (which can be 
> viewed here: 
> http://code.google.com/p/tart/source/browse/trunk/runtime/lib/tart_eh_personality.c)
> 

The basic summation is that any currently dwarf eh compatible exceptions will continue to work as well as any other ideas of exceptions.  The new format isn't tied or specific to dwarf at all, just a manner of table implemented exception handling.  The new bits aren't specific to C++ either - and even the dwarf eh spec isn't, just that the dwarf spec is most commonly used for C++.  Non-dwarf exceptions are treated as "foreign" exceptions by c++ and propagated the same way.  Also, any personality function for a code region will continue to be called and propagate.

-eric





More information about the llvm-dev mailing list