[PATCH][cxxabi] ARM EHABI zero-cost exception handling for libc++abi

Jonathan Roelofs jonathan at codesourcery.com
Mon May 5 13:47:29 PDT 2014



On 5/5/14, 10:44 AM, Logan Chien wrote:
> On Mon, May 5, 2014 at 10:02 AM, Jonathan Roelofswrote:
>
>     This plan sounds OK to me, but I am a little hesitant. I want to be careful
>     about how we use the reserved bits of the unwind caches, because some of it
>     is implementation details of libgcc_s, and I'd rather not have a bunch of
>     "this is unspecified in the spec, but we're doing it this way because
>     libgcc's unwinder does it this way" in there permanently.  Can you add notes
>     where such assumptions are made in the libc++abi part so that we can fix
>     them later?
>
>
> AFAICT, I am using two undocumented APIs:
>
> 1. Using __gnu_unwind_frame() to unwind one frame.
> 2. In order to use _Unwind_GetLanguageSpecificData() and
> _Unwind_GetRegionStart() we have to copy the UCB to r12.
>
> Both of them can be fixed if we have our own unwinding library, and I have
> written several comments to document these hacks.
Excellent, thanks!
>
> Sincerely,
> Logan

-- 
Jon Roelofs
jonathan at codesourcery.com
CodeSourcery / Mentor Embedded



More information about the cfe-commits mailing list