[cfe-commits] r167534 - in /cfe/trunk: lib/CodeGen/CGException.cpp lib/CodeGen/CGObjCGNU.cpp lib/CodeGen/CodeGenFunction.h test/CodeGenObjC/gnu-exceptions.m
John McCall
rjmccall at apple.com
Sun Nov 11 00:41:06 PST 2012
On Nov 7, 2012, at 8:50 AM, David Chisnall wrote:
> Author: theraven
> Date: Wed Nov 7 10:50:40 2012
> New Revision: 167534
>
> URL: http://llvm.org/viewvc/llvm-project?rev=167534&view=rev
> Log:
> Fix the Objective-C exception rethrow from cleanups (GNU runtimes). Note that
> a bug in the inliner still causes the wrong thing to happen at -O2 and above
> (PR14116).
If you're going to do this, you need to have two different EH-resume blocks.
The way it's written right now, whichever you ask for first is going to be what
you get, even for later requests with a different parameter.
But really, I don't understand why you need this parameter at all. The only
place you're passing false is when asking for the block to branch to
when an exception-specification fails to trigger. This is actually still the
"falling off the end of the EH scope" case, and should still be emitted with
a resume instruction. I don't think there's any 'resume' case where you
actually want to call the rethrow function.
John.
More information about the cfe-commits
mailing list