[M3commit] CVS Update: cm3

Jay Krell jkrell at elego.de
Sat Oct 2 14:16:50 CEST 2010


CVSROOT:	/usr/cvs
Changes by:	jkrell at birch.	10/10/02 14:16:50

Modified files:
	cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c 

Log message:
	again eliminate INTEGER vs. TARGET_INTEGER distinction
	INTEGER always suffices, TARGET_INTEGER is no more
	callers can call build_int_cst if they need a tree,
	as many but not all do
	64bits is always enough
	I think the problem in previous attempt was the cast to long in get_int ()
	where HOST_WIDE_INT is needed (32bits vs. 64bits)
	
	eliminate a little bit of 64bit math on 32bit hosts
	Though overall we overuse 64bit math on purpose.
	
	eliminate a little unnecessary signed math
	unsigned is generally preferred
	
	m3cg sign parameter is never used, in div/mod, adjust code accordingly
	(They used to be used to optimize our unusual div/mod operations,
	but now we always optimize; hm..could probably do better though,
	using the signs -- if both positive or both negative, use truncation,
	which is more commonly what the processors do?)
	
	eliminate some temporaries
	unoptimized code probably affected accordingly positively




More information about the M3commit mailing list