[LLVMdev] Darwin vs exceptions
Dale Johannesen
dalej at apple.com
Wed Dec 12 16:06:19 PST 2007
On Dec 12, 2007, at 3:05 PM, Dale Johannesen wrote:
> On Dec 12, 2007, at 11:01 AM, Duncan Sands wrote:
>
>> Hi Dale,
>> Index: gcc-4.2.llvm/gcc/except.c
>> ===================================================================
>> --- gcc-4.2.llvm.orig/gcc/except.c 2007-12-12 20:55:30.000000000
>> +0100
>> +++ gcc-4.2.llvm/gcc/except.c 2007-12-12 20:56:19.000000000 +0100
>> @@ -4053,9 +4053,9 @@
>> {
>> /* The default c++ routines aren't actually c++ specific, so use
>> those. */
>> /* LLVM local begin */
>> - llvm_unwind_resume_libfunc = llvm_init_one_libfunc
>> ( USING_SJLJ_EXCEPTIONS ?
>> -
>> "_Unwind_SjLj_Resume"
>> - :
>> "_Unwind_Resume");
>> + llvm_unwind_resume_libfunc =
>> + llvm_init_one_libfunc(USING_SJLJ_EXCEPTIONS ?
>> + "_Unwind_SjLj_Resume" :
>> "_Unwind_Resume_or_Rethrow");
>> /* LLVM local end */
>> }
>
> Seems unlikely, but I'll try it.
This works! and from the source it is reasonable that it should work.
Well done, I never thought of finding another hook into the unwinder,
was
trying to duplicate gcc's behavior, which is hard. Thanks very much.
More information about the llvm-dev
mailing list