[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