Diff for /gforth/prim between versions 1.273 and 1.279

version 1.273, 2012/07/15 12:03:07 version 1.279, 2012/10/08 22:45:19
Line 1109  if (u1<u2) Line 1109  if (u1<u2)
 else  else
   u = u1;    u = u1;
 :  :
  2dup u< IF swap THEN drop ;   2dup u> select ;
   
 umin    ( u1 u2 -- u )  core  umin    ( u1 u2 -- u )  core
 if (u1<u2)  if (u1<u2)
Line 1117  if (u1<u2) Line 1117  if (u1<u2)
 else  else
   u = u2;    u = u2;
 :  :
  2dup u> IF swap THEN drop ;   2dup u< select ;
   
   mux   ( u1 u2 u3 -- u )    gforth
   ""multiplex @i{u1} for 1 bits in @i{u3}, @i{u2} for 0 bits in @i{u3} into @i{u}""
   u = (u3 & u1) | (~u3 & u2);
   :
    tuck and >r invert and r> ;
   
   select ( u1 u2 f -- u )    gforth
   ""select @i{u1} if @i{f} is true, @i{u2} if false.""
   u = f ? u1 : u2;
   :
    IF swap THEN nip ;
   
 \g compare  \g compare
   
Line 1516  c_addr2 = c_addr1+1; Line 1528  c_addr2 = c_addr1+1;
 :  :
  dup 1+ swap c@ ;   dup 1+ swap c@ ;
   
   cell/ ( n1 -- n2 )      gforth cell_divide
   ""@i{n2} is the number of cells that fit into @i{n1}""
   n2 = n1 / sizeof(Cell);
   :
    [ cell
    2/ dup [IF] ] 2/ [ [THEN]
    2/ dup [IF] ] 2/ [ [THEN]
    2/ dup [IF] ] 2/ [ [THEN]
    2/ dup [IF] ] 2/ [ [THEN]
    drop ] ;
   
 \g compiler  \g compiler
   
 \+f83headerstring  \+f83headerstring
Line 1700  wfileid = (Cell)stderr; Line 1723  wfileid = (Cell)stderr;
   
 \+os  \+os
   
 form    ( -- urows ucols )      gforth  (form)  ( -- urows ucols )      gforth  paren_form
 ""The number of lines and columns in the terminal. These numbers may  ""The number of lines and columns in the terminal. These numbers may
 change with the window size.  Note that it depends on the OS whether  change with the window size.  Note that it depends on the OS whether
 this reflects the actual size and changes with the window size  this reflects the actual size and changes with the window size
Line 1735  FLUSH_ICACHE((caddr_t)c_addr,u); Line 1758  FLUSH_ICACHE((caddr_t)c_addr,u);
   
 (bye)   ( n -- )        gforth  paren_bye  (bye)   ( n -- )        gforth  paren_bye
 SUPER_END;  SUPER_END;
   gforth_FP=fp;
   gforth_SP=sp;
   gforth_RP=rp;
   gforth_LP=lp;
 return (Label *)n;  return (Label *)n;
   
 (system)        ( c_addr u -- wretval wior )    gforth  paren_system  (system)        ( c_addr u -- wretval wior )    gforth  paren_system
Line 2075  clock_gettime(CLOCK_REALTIME,&time1); Line 2102  clock_gettime(CLOCK_REALTIME,&time1);
 #else  #else
 struct timeval time2;  struct timeval time2;
 gettimeofday(&time2,NULL);  gettimeofday(&time2,NULL);
 time1.tv_sec = time2.tv_sec;1  time1.tv_sec = time2.tv_sec;
 time1.tv_nsec = time2.tv_usec*1000;  time1.tv_nsec = time2.tv_usec*1000;
 #endif  #endif
 dtime = timespec2ns(&time1);  dtime = timespec2ns(&time1);
Line 2471  if (flag) { Line 2498  if (flag) {
   fp[0]=r;    fp[0]=r;
 }  }
   
   float/ ( n1 -- n2 )     gforth  float_divide
   n2 = n1 / sizeof(Float);
   
   dfloat/ ( n1 -- n2 )    gforth  sfloat_divide
   n2 = n1 / sizeof(DFloat);
   
   sfloat/ ( n1 -- n2 )    gforth  dfloat_divide
   n2 = n1 / sizeof(SFloat);
   
 \+  \+
   
 \ The following words access machine/OS/installation-dependent  \ The following words access machine/OS/installation-dependent

Removed from v.1.273  
changed lines
  Added in v.1.279


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