[M3commit] CVS Update: cm3
Jay Krell
jkrell at elego.de
Sat Jul 10 14:27:27 CEST 2010
CVSROOT: /usr/cvs
Changes by: jkrell at birch. 10/07/10 14:27:27
Modified files:
cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c
Log message:
use POINTER_PLUS with gcc 4.3 same as with gcc 4.5
volatilize any function that calls RTHooks__PushEFrame
Therefore enabling "pre" optimization (partial redundancy elimination?)
This would probably be cleaner in a few other ways:
investigate further why gcc doesn't like the trees we produce for this case
have a direct call in the middle end: volatilize_current_function
understand (at least) the two variants of try/finally
don't volatilize all variables
In my one test case though, the finally block doesn't
access anything, so only volatilizing what is needed
would set us back to really having to understand.
And, really, volatile even of certain variables is overkill.
You just want be sure they are "homed" prior to function
calls that can throw, not at every single use and not
before function calls that can't throw.
More information about the M3commit
mailing list