[LLVMdev] Exception handling question

Garrison Venn gvenn.cfe.dev at gmail.com
Fri Jan 22 05:39:21 PST 2010


Hi Duncan,

Yes, but the personality function will get called in order for it to return _URC_CONTINUE_UNWIND.
When I said "it", I meant the personality function in its search phase not the cleanup/handler phase.
I believe, if I understand correctly, Jame's personality function is not being called during the search
phase. If this is not case, and his personality function is called during the search phase, then as
you indicated earlier, this is easy to solve.

Garrison

On Jan 22, 2010, at 8:29, Duncan Sands wrote:

> Hi Garrison,
> 
>> Yes. The issue here, as you pointed out, is that your personality function is not called at all.
>> Even if you did nothing in the personality function, associated with the setup caused by
>> llvm.eh.selector, but returned _URC_CONTINUE_UNWIND (8), it should still be called.
> 
> this is not correct.  Unwind_RaiseException will just exit without unwinding
> the stack if all personality functions return _URC_CONTINUE_UNWIND.
> 
> Ciao,
> 
> Duncan.





More information about the llvm-dev mailing list