ret=((double)(tend.tms_utime-tstart.tms_utime))/HZ;
ret = HZ; ret=(double)(tend.tms_utime-tstart.tms_utime) / ret;
static double Time_F(int s)	{	double ret;#ifdef USE_TOD	if(usertime)	    {		static struct rusage tstart,tend;		getrusage_used = 1;		if (s == START)			{			getrusage(RUSAGE_SELF,&tstart);			return(0);			}		else			{			long i;			getrusage(RUSAGE_SELF,&tend);			i=(long)tend.ru_utime.tv_usec-(long)tstart.ru_utime.tv_usec;			ret=((double)(tend.ru_utime.tv_sec-tstart.ru_utime.tv_sec))			  +((double)i)/1000000.0;			return((ret < 0.001)?0.001:ret);			}		}	else		{		static struct timeval tstart,tend;		long i;		gettimeofday_used = 1;		if (s == START)			{			gettimeofday(&tstart,NULL);			return(0);			}		else			{			gettimeofday(&tend,NULL);			i=(long)tend.tv_usec-(long)tstart.tv_usec;			ret=((double)(tend.tv_sec-tstart.tv_sec))+((double)i)/1000000.0;			return((ret < 0.001)?0.001:ret);			}		}#else  /* ndef USE_TOD */		# ifdef TIMES	if (usertime)		{		static struct tms tstart,tend;		times_used = 1;		if (s == START)			{			times(&tstart);			return(0);			}		else			{			times(&tend);			ret=((double)(tend.tms_utime-tstart.tms_utime))/HZ;			return((ret < 1e-3)?1e-3:ret);			}		}# endif /* times() */# if defined(TIMES) && defined(TIMEB)	else# endif# ifdef OPENSSL_SYS_VXWORKS                {		static unsigned long tick_start, tick_end;		if( s == START )			{			tick_start = tickGet();			return 0;			}		else			{			tick_end = tickGet();			ret = (double)(tick_end - tick_start) / (double)sysClkRateGet();			return((ret < 0.001)?0.001:ret);			}                }# elif defined(TIMEB)		{		static struct timeb tstart,tend;		long i;		ftime_used = 1;		if (s == START)			{			ftime(&tstart);			return(0);			}		else			{			ftime(&tend);			i=(long)tend.millitm-(long)tstart.millitm;			ret=((double)(tend.time-tstart.time))+((double)i)/1000.0;			return((ret < 0.001)?0.001:ret);			}		}# endif#endif	}