[M3commit] CVS Update: cm3

Jay Krell jkrell at elego.de
Sat Mar 6 13:38:38 CET 2010


CVSROOT:	/usr/cvs
Changes by:	jkrell at birch.	10/03/06 13:38:38

Modified files:
	cm3/m3-sys/m3back/src/: M3x86.m3 Stackx86.i3 Stackx86.m3 

Log message:
	some cleanup ahead of other fixes (the free_temp problem)
	
	in particular:
	- replace RegSet{} with AllRegisters
	This makes some code a little simpler.
	RegSet{} does mean "anything" and we can
	capture that pretty faithfully via AllRegisters.
	We are lucky we don't have to allocate float registers though,
	that might call for something a little different
	
	- in some places I was extra cautious and ran
	the same old code for size = 1 (data fitting in a single register),
	as well there are places that assume the largest size is 2
	Generalize *some* of that to loop over whatever size, doing
	the "same" thing at each step.
	
	There are still places that say like "if foo[0] and foo[size - 1]"
	which works as long as size can only be 1 or 2.
	
	- fix warning about unreachable code after assert false (the unused,
	untested zero_n)




More information about the M3commit mailing list