### Diff for /gforth/prim between versions 1.277 and 1.280

version 1.277, 2012/09/17 19:58:36 version 1.280, 2012/12/31 15:25:18
Line 1 Line 1
\ Gforth primitives  \ Gforth primitives

\ Copyright (C) 1995,1996,1997,1998,2000,2003,2004,2005,2006,2007,2008,2009,2010,2011 Free Software Foundation, Inc.  \ Copyright (C) 1995,1996,1997,1998,2000,2003,2004,2005,2006,2007,2008,2009,2010,2011,2012 Free Software Foundation, Inc.

\ This file is part of Gforth.  \ This file is part of Gforth.

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

cell/ ( n1 -- n2 )      gforth cell_divide  cell/ ( n1 -- n2 )      gforth cell_divide
""@i{n2} is the number of cells that fit into @i{n1}""  ""@i{n2} is the number of cells that fit into @i{n1}""
n2 = n1 / sizeof(Cell);  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

Line 2083  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);

 Removed from v.1.277 changed lines Added in v.1.280

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