--- gforth/prim 2011/11/21 01:37:12 1.259 +++ gforth/prim 2011/12/31 15:29:25 1.264 @@ -1,6 +1,6 @@ \ Gforth primitives -\ Copyright (C) 1995,1996,1997,1998,2000,2003,2004,2005,2006,2007,2008,2009,2010 Free Software Foundation, Inc. +\ Copyright (C) 1995,1996,1997,1998,2000,2003,2004,2005,2006,2007,2008,2009,2010,2011 Free Software Foundation, Inc. \ This file is part of Gforth. @@ -1103,6 +1103,22 @@ lshift ( u1 n -- u2 ) core l_shift : 0 ?DO 2* LOOP ; +umax ( u1 u2 -- u ) core +if (u1 IF swap THEN drop ; + \g compare \ comparisons(prefix, args, prefix, arg1, arg2, wordsets...) @@ -2035,9 +2051,16 @@ dsystem = DZERO; ntime ( -- dtime ) gforth ""Report the current time in nanoseconds since some epoch."" -struct timespec t; -clock_gettime(CLOCK_REALTIME,&t); -dtime = timespec2ns(&t); +struct timespec time1; +#ifdef HAVE_CLOCK_GETTIME +clock_gettime(CLOCK_REALTIME,&time1); +#else +struct timeval time2; +gettimeofday(&time2,NULL); +time1.tv_sec = time2.tv_sec; +time1.tv_nsec = time2.tv_usec*1000; +#endif +dtime = timespec2ns(&time1); \+