From: George H. <geo...@us...> - 2006-12-11 10:42:43
|
Update of /cvsroot/win32forth/win32forth-stc/src In directory sc8-pr-cvs9.sourceforge.net:/tmp/cvs-serv26797/win32forth-stc/src Modified Files: optliterals.f paths.f Log Message: gah: Fixed bug in SWAP of literals and optimised PATH: Index: optliterals.f =================================================================== RCS file: /cvsroot/win32forth/win32forth-stc/src/optliterals.f,v retrieving revision 1.10 retrieving revision 1.11 diff -C2 -d -r1.10 -r1.11 *** optliterals.f 22 Nov 2006 00:06:53 -0000 1.10 --- optliterals.f 11 Dec 2006 10:42:36 -0000 1.11 *************** *** 51,55 **** )) ! \ To help the optimiser, some code words that deal with constants \ are broken up into their constituent parts for compile time --- 51,55 ---- )) ! \ To help the optimiser, some code words that deal with constants \ are broken up into their constituent parts for compile time *************** *** 110,114 **** else macro[ and off stk[],# n ]macro then ; ! : pop-tos { } 0 n[ebp]->tos -1 n+stk ; : push-tos { } -4 tos->n[ebp] 1 n+stk ; --- 110,114 ---- else macro[ and off stk[],# n ]macro then ; ! : pop-tos { } 0 n[ebp]->tos -1 n+stk ; : push-tos { } -4 tos->n[ebp] 1 n+stk ; *************** *** 166,170 **** then ; ! ' litstack compiles-for literal ' litsync is sync-code --- 166,170 ---- then ; ! ' litstack compiles-for literal ' litsync is sync-code *************** *** 222,225 **** --- 222,226 ---- r> s-reverse \ reverse the order r> execute \ execute the word + r@ s-reverse \ reverse the order r> 0 ?do lits spush loop \ push outputs back on literal stack exit *************** *** 239,243 **** then xt-inline, ; \ else just inline it ! :noname ( -- ) \ set nseopt as the optimiser for specified xts ['] nseopt >r \ the optimisation code to run --- 240,244 ---- then xt-inline, ; \ else just inline it ! :noname ( -- ) \ set nseopt as the optimiser for specified xts ['] nseopt >r \ the optimisation code to run Index: paths.f =================================================================== RCS file: /cvsroot/win32forth/win32forth-stc/src/paths.f,v retrieving revision 1.6 retrieving revision 1.7 diff -C2 -d -r1.6 -r1.7 *** paths.f 4 Dec 2006 17:58:15 -0000 1.6 --- paths.f 11 Dec 2006 10:42:37 -0000 1.7 *************** *** 162,165 **** --- 162,174 ---- IN-APPLICATION + internal + + : (path:) does> \ run-time: ( -- path ) + [ 2 cells ] literal + ; + + external + + in-system + : path: ( -- ) \ *G Defines a directory search path. \n *************** *** 168,174 **** \ ** followed by null. \n \ ** At runtime it returns address of the counted string of a path. ! create -1 , 0 , MAX-PATH 1+ allot does> \ run-time: ( -- path ) ! [ 2 cells ] literal + ! ; INTERNAL --- 177,184 ---- \ ** followed by null. \n \ ** At runtime it returns address of the counted string of a path. ! create -1 , 0 , MAX-PATH 1+ allot (path:) ! ['] (comp-cons) compiles-last ; ! ! in-application INTERNAL |