Diff for /gforth/prims2x.fs between versions 1.12 and 1.13

version 1.12, 1995/02/02 18:13:10 version 1.13, 1995/02/22 18:40:19
Line 463  set-current Line 463  set-current
   
 : flush-tos ( -- )  : flush-tos ( -- )
  effect-in-size 2@ effect-out-size 2@   effect-in-size 2@ effect-out-size 2@
  rot - swap rot - ( -f-diff -d-diff ) >r >r  
  effect-in-size 2@ effect-out-size 2@  
  0<> rot 0= and   0<> rot 0= and
  if   if
    ." IF_FTOS(fp[" r@ 0 .r ." ] = FTOS);" cr     ." IF_FTOS(fp[0] = FTOS);" cr
  endif  rdrop   endif
  0<> swap 0= and   0<> swap 0= and
  if   if
    ." IF_TOS(sp[" r@ 0 .r ." ] = TOS);" cr     ." IF_TOS(sp[0] = TOS);" cr
  endif  rdrop ;   endif ;
   
 : fill-tos ( -- )  : fill-tos ( -- )
  effect-in-size 2@ effect-out-size 2@   effect-in-size 2@ effect-out-size 2@
Line 517  set-current Line 515  set-current
 : output-c ( -- )  : output-c ( -- )
  ." I_" c-name 2@ type ." :     /* " forth-name 2@ type ."  ( " stack-string 2@ type ."  ) */" cr   ." I_" c-name 2@ type ." :     /* " forth-name 2@ type ."  ( " stack-string 2@ type ."  ) */" cr
  ." /* " doc 2@ type ."  */" cr   ." /* " doc 2@ type ."  */" cr
    ." NAME(" [char] " emit forth-name 2@ type [char] " emit ." )" cr \ debugging
  ." {" cr   ." {" cr
  ." DEF_CA" cr   ." DEF_CA" cr
  declarations   declarations
  compute-offsets \ for everything else   compute-offsets \ for everything else
    ." NEXT_P0;" cr
    flush-tos
  fetches   fetches
  stack-pointer-updates cr   stack-pointer-updates
  ." NAME(" [char] " emit forth-name 2@ type [char] " emit ." )" cr \ debugging  
  ." {" cr   ." {" cr
  c-code 2@ type   c-code 2@ type
  ." }" cr   ." }" cr
  ." NEXT_P1;" cr   ." NEXT_P1;" cr
  flush-tos  
  stores   stores
  fill-tos   fill-tos
  ." NEXT_P2;" cr   ." NEXT_P2;" cr

Removed from v.1.12  
changed lines
  Added in v.1.13


FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>