[llvm-commits] [llvm-gcc-4.0] r43098 - /llvm-gcc-4.0/trunk/gcc/llvm-convert.cpp

Bill Wendling isanbard at gmail.com
Thu Oct 18 11:00:01 PDT 2007


On 10/18/07, Chris Lattner <clattner at apple.com> wrote:
> >> In the case of this fix, we don't want to use even
> >> _Unwind_SjLj_Resume (it's what I tried initially and got the same
> >> type of error).
> >
> > So how do you continue unwinding exceptions?  If code should never
> > get to the unwind block then you can always make the unwind-resume
> > function be a call to abort() for objc with sjlj.  That said, I
> > suggest you read the comments in ada/raise.c starting from line 368
> > (llvm-gcc-4.0).  I would be amazed if sjlj really works without
> > proper tables, except in easy cases.
>
> I think the objc front-end is emitting the setjmp/longjmp calls
> itself directly, not relying on the rest of the GCC EH mechanisms...
>
Yes. That's my understanding. If you look at
obj-act.c:next_sjlj_build_try_catch_finally(), it has a big comment
showing what it converts try-catch-finalize to.

-bw



More information about the llvm-commits mailing list