1 /* Copyright (C) 1996, 1998, 2001 Free Software Foundation, Inc.
2 This file is part of GNU Fortran libU77 library.
4 This library is free software; you can redistribute it and/or modify it
5 under the terms of the GNU Library General Public License as published
6 by the Free Software Foundation; either version 2 of the License, or
7 (at your option) any later version.
9 GNU Fortran is distributed in the hope that it will be useful,
10 but WITHOUT ANY WARRANTY; without even the implied warranty of
11 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
12 Library General Public License for more details.
14 You should have received a copy of the GNU Library General Public
15 License along with GNU Fortran; see the file COPYING.LIB. If
16 not, write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
17 Boston, MA 02111-1307, USA. */
22 #include <sys/types.h>
24 # include <sys/param.h>
26 #if TIME_WITH_SYS_TIME
27 # include <sys/time.h>
31 # include <sys/time.h>
37 # include <sys/times.h>
43 #include <errno.h> /* for ENOSYS */
47 G77_system_clock_0 (integer
* count
, integer
* count_rate
,
50 #if defined (HAVE_TIMES)
56 *count_rate
= sysconf (_SC_CLK_TCK
);
57 #elif defined CLOCKS_PER_SECOND
58 *count_rate
= CLOCKS_PER_SECOND
;
60 *count_rate
= CLK_TCK
;
64 #error Dont know clock tick length
67 if (count_max
) /* optional arg present? */
68 *count_max
= INT_MAX
; /* dubious */
69 cnt
= times (&buffer
);
70 if (cnt
> (unsigned long) (INT_MAX
))
71 *count
= INT_MAX
; /* also dubious */
75 #else /* ! HAVE_TIMES */
78 #endif /* ! HAVE_TIMES */