OpenCores
URL https://opencores.org/ocsvn/openrisc/openrisc/trunk

Subversion Repositories openrisc

[/] [openrisc/] [trunk/] [gnu-old/] [newlib-1.17.0/] [newlib/] [libc/] [time/] [clock.c] - Rev 868

Go to most recent revision | Compare with Previous | Blame | View Log

/* NetWare can not use this implementation of clock, since it does not
   have times or any similar function.  It provides its own version of
   clock in clib.nlm.  If we can not use clib.nlm, then we must write
   clock in sys/netware.  */
 
#ifdef CLOCK_PROVIDED
 
int _dummy_clock = 1;
 
#else
 
/*
 * clock.c
 * Original Author:	G. Haley
 *
 * Determines the processor time used by the program since invocation. The time
 * in seconds is the value returned divided by the value of the macro CLK_TCK.
 * If the processor time used is not available, (clock_t) -1 is returned.
 */
 
/*
FUNCTION
<<clock>>---cumulative processor time
 
INDEX
	clock
 
ANSI_SYNOPSIS
	#include <time.h>
	clock_t clock(void);
 
TRAD_SYNOPSIS
	#include <time.h>
	clock_t clock();
 
DESCRIPTION
Calculates the best available approximation of the cumulative amount
of time used by your program since it started.  To convert the result
into seconds, divide by the macro <<CLOCKS_PER_SEC>>.
 
RETURNS
The amount of processor time used so far by your program, in units
defined by the machine-dependent macro <<CLOCKS_PER_SEC>>.  If no
measurement is available, the result is (clock_t)<<-1>>.
 
PORTABILITY
ANSI C requires <<clock>> and <<CLOCKS_PER_SEC>>.
 
Supporting OS subroutine required: <<times>>.
*/
 
#include <time.h>
#include <sys/times.h>
#include <reent.h>
 
clock_t 
clock ()
{
  struct tms tim_s;
  clock_t res;
 
  if ((res = (clock_t) _times_r (_REENT, &tim_s)) != -1)
    res = (clock_t) (tim_s.tms_utime + tim_s.tms_stime +
		     tim_s.tms_cutime + tim_s.tms_cstime);
 
  return res;
}
 
#endif /* CLOCK_PROVIDED */
 

Go to most recent revision | Compare with Previous | Blame | View Log

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.