This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: ObjC/ObjC++ volatilized merge from apple/trunk
- From: Mike Stump <mikestump at comcast dot net>
- To: Nicola Pero <nicola dot pero at meta-innovation dot com>
- Cc: "gcc-patches at gnu dot org" <gcc-patches at gnu dot org>
- Date: Mon, 18 Oct 2010 11:58:22 -0700
- Subject: Re: ObjC/ObjC++ volatilized merge from apple/trunk
- References: <1287425205.46273660@192.168.2.230>
On Oct 18, 2010, at 11:06 AM, Nicola Pero wrote:
> This patch merges from the FSF apple/trunk branch three inter-related ObjC/ObjC++
> improvements in dealing with variables volatilized artificially in ObjC/ObjC++.
> It is most relevant to sjlj-style exception handling.
Just a note, there may be room here to engineer out the volatilization... that would be better... The problem is objc wants to use setjmp/longjmp under the covers for exception handling, but yet, wants variables to work, which means, they have to hit memory. It uses volatile to ensure they hit memory. It only needs them to be stable in memory at calls which can `throw', not generally, inside a basic block. I put these here, just for future archeologists who might want to fix this up...