From: George H. <geo...@us...> - 2005-05-24 07:53:40
|
Update of /cvsroot/win32forth/win32forth/src In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv9516/win32forth/src Modified Files: FLOAT.F Log Message: gah: optimized multiplication by b/float for stack checking Index: FLOAT.F =================================================================== RCS file: /cvsroot/win32forth/win32forth/src/FLOAT.F,v retrieving revision 1.6 retrieving revision 1.7 diff -C2 -d -r1.6 -r1.7 *** FLOAT.F 19 May 2005 08:13:27 -0000 1.6 --- FLOAT.F 24 May 2005 07:53:16 -0000 1.7 *************** *** 225,233 **** \ Input: eax = number of floats we need subr: fstack-check ! push edx ! mov edx, # B/FLOAT ! mul eax, edx ! pop edx ! mov ecx, FSP_MEMORY sub ecx, eax js short L$1 --- 225,234 ---- \ Input: eax = number of floats we need subr: fstack-check ! ! B/FLOAT 10 = [IF] ! lea eax, 0 [eax*4] [eax] ! add eax, eax ! [ELSE] shl eax, # 3 ! [THEN] mov ecx, FSP_MEMORY sub ecx, eax js short L$1 |