Diff for /gforth/prim between versions 1.113 and 1.117

version 1.113, 2003/01/02 16:48:12 version 1.117, 2003/01/08 10:25:34
Line 1473  f_addr = (Float *)((((Cell)c_addr)+(size Line 1473  f_addr = (Float *)((((Cell)c_addr)+(size
 :  :
  [ 1 floats 1- ] Literal + [ -1 floats ] Literal and ;   [ 1 floats 1- ] Literal + [ -1 floats ] Literal and ;
   
 >body   ( xt -- a_addr )        core    to_body  
 "" Get the address of the body of the word represented by @i{xt} (the address  
 of the word's data field).""  
 a_addr = PFA(xt);  
 :  
     2 cells + ;  
   
 \ threading stuff is currently only interesting if we have a compiler  \ threading stuff is currently only interesting if we have a compiler
 \fhas? standardthreading has? compiler and [IF]  \fhas? standardthreading has? compiler and [IF]
   
 >code-address   ( xt -- c_addr )                gforth  to_code_address  
 ""@i{c-addr} is the code address of the word @i{xt}.""  
 /* !! This behaves installation-dependently for DOES-words */  
 c_addr = (Address)CODE_ADDRESS(xt);  
 :  
     @ ;  
   
 >does-code      ( xt -- a_addr )                gforth  to_does_code  
 ""If @i{xt} is the execution token of a child of a @code{DOES>} word,  
 @i{a-addr} is the start of the Forth code after the @code{DOES>};  
 Otherwise @i{a-addr} is 0.""  
 a_addr = (Cell *)DOES_CODE(xt);  
 :  
     cell+ @ ;  
   
 code-address!   ( c_addr xt -- )                gforth  code_address_store  code-address!   ( c_addr xt -- )                gforth  code_address_store
 ""Create a code field with code address @i{c-addr} at @i{xt}.""  ""Create a code field with code address @i{c-addr} at @i{xt}.""
 MAKE_CF(xt, c_addr);  MAKE_CF(xt, c_addr);
Line 1886  flag = FLAG(!fnmatch(pattern, string, 0) Line 1863  flag = FLAG(!fnmatch(pattern, string, 0)
 newline ( -- c_addr u ) gforth  newline ( -- c_addr u ) gforth
 ""String containing the newline sequence of the host OS""  ""String containing the newline sequence of the host OS""
 char newline[] = {  char newline[] = {
 #if defined(unix) || defined(__MACH__)  #if DIRSEP=='/'
 /* Darwin/MacOS X sets __MACH__, but not unix. */  /* Unix */
 '\n'  '\n'
 #else  #else
   /* DOS, Win, OS/2 */
 '\r','\n'  '\r','\n'
 #endif  #endif
 };  };
Line 2486  f = forget_dyncode(c_code); Line 2464  f = forget_dyncode(c_code);
 decompile-prim ( a_code -- a_prim ) gforth-internal decompile_prim  decompile-prim ( a_code -- a_prim ) gforth-internal decompile_prim
 ""a_prim is the code address of the primitive that has been  ""a_prim is the code address of the primitive that has been
 compile_prim1ed to a_code""  compile_prim1ed to a_code""
 a_prim = decompile_code(a_code);  a_prim = (Label)decompile_code((Label)a_code);
   
 \+  \+
   

Removed from v.1.113  
changed lines
  Added in v.1.117


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