mirror of
https://sourceware.org/git/glibc.git
synced 2025-01-03 00:10:10 +00:00
Define CLOCKS_PER_SEC type to the type clock_t
C99 specifies that CLOCKS_PER_SEC is an expression with the type clock_t. This patch adds a generic <bits/time2.h> to define CLOCKS_PER_SEC and provides the Linux/x86-64 version of <bits/time2.h> to support x32. [BZ #17797] * bits/time.h (CLOCKS_PER_SEC): Changed to ((clock_t) 1000000). * sysdeps/unix/sysv/linux/bits/time.h (CLOCKS_PER_SEC): Likewise. * sysdeps/unix/sysv/linux/clock.c (clock): _Static_assert CLOCKS_PER_SEC == 1000000. * time/clocktest.c (main): Replace %ld with %jd and cast to intmax_t.
This commit is contained in:
parent
46abb64d62
commit
57ada0e7e7
10
ChangeLog
10
ChangeLog
@ -1,3 +1,13 @@
|
||||
2015-01-06 H.J. Lu <hongjiu.lu@intel.com>
|
||||
|
||||
[BZ #17797]
|
||||
* bits/time.h (CLOCKS_PER_SEC): Changed to ((clock_t) 1000000).
|
||||
* sysdeps/unix/sysv/linux/bits/time.h (CLOCKS_PER_SEC): Likewise.
|
||||
* sysdeps/unix/sysv/linux/clock.c (clock): _Static_assert
|
||||
CLOCKS_PER_SEC == 1000000.
|
||||
* time/clocktest.c (main): Replace %ld with %jd and cast to
|
||||
intmax_t.
|
||||
|
||||
2015-01-05 Roland McGrath <roland@hack.frob.com>
|
||||
|
||||
* sysdeps/generic/unwind-resume.h: New file.
|
||||
|
2
NEWS
2
NEWS
@ -16,7 +16,7 @@ Version 2.21
|
||||
17583, 17584, 17585, 17589, 17594, 17601, 17608, 17616, 17625, 17630,
|
||||
17633, 17634, 17635, 17647, 17653, 17657, 17664, 17665, 17668, 17682,
|
||||
17717, 17719, 17722, 17723, 17724, 17725, 17732, 17733, 17744, 17745,
|
||||
17746, 17747, 17775, 17777, 17780, 17781, 17782, 17793, 17796
|
||||
17746, 17747, 17775, 17777, 17780, 17781, 17782, 17793, 17796, 17797
|
||||
|
||||
* i386 memcpy functions optimized with SSE2 unaligned load/store.
|
||||
|
||||
|
@ -24,13 +24,13 @@
|
||||
# ifndef _BITS_TIME_H
|
||||
# define _BITS_TIME_H 1
|
||||
|
||||
/* ISO/IEC 9899:1990 7.12.1: <time.h>
|
||||
The macro `CLOCKS_PER_SEC' is the number per second of the value
|
||||
returned by the `clock' function. */
|
||||
/* ISO/IEC 9899:1999 7.23.1: Components of time
|
||||
The macro `CLOCKS_PER_SEC' is an expression with type `clock_t' that is
|
||||
the number per second of the value returned by the `clock' function. */
|
||||
/* CAE XSH, Issue 4, Version 2: <time.h>
|
||||
The value of CLOCKS_PER_SEC is required to be 1 million on all
|
||||
XSI-conformant systems. */
|
||||
# define CLOCKS_PER_SEC 1000000l
|
||||
# define CLOCKS_PER_SEC ((clock_t) 1000000)
|
||||
|
||||
# if !defined __STRICT_ANSI__ && !defined __USE_XOPEN2K
|
||||
/* Even though CLOCKS_PER_SEC has such a strange value CLK_TCK
|
||||
|
@ -39,13 +39,13 @@ struct timeval
|
||||
# ifndef _BITS_TIME_H
|
||||
# define _BITS_TIME_H 1
|
||||
|
||||
/* ISO/IEC 9899:1990 7.12.1: <time.h>
|
||||
The macro `CLOCKS_PER_SEC' is the number per second of the value
|
||||
returned by the `clock' function. */
|
||||
/* ISO/IEC 9899:1999 7.23.1: Components of time
|
||||
The macro `CLOCKS_PER_SEC' is an expression with type `clock_t' that is
|
||||
the number per second of the value returned by the `clock' function. */
|
||||
/* CAE XSH, Issue 4, Version 2: <time.h>
|
||||
The value of CLOCKS_PER_SEC is required to be 1 million on all
|
||||
XSI-conformant systems. */
|
||||
# define CLOCKS_PER_SEC 1000000l
|
||||
# define CLOCKS_PER_SEC ((clock_t) 1000000)
|
||||
|
||||
# if (!defined __STRICT_ANSI__ || defined __USE_POSIX) \
|
||||
&& !defined __USE_XOPEN2K
|
||||
|
@ -20,15 +20,14 @@
|
||||
#include <time.h>
|
||||
#include <unistd.h>
|
||||
|
||||
#if CLOCKS_PER_SEC != 1000000l
|
||||
# error "CLOCKS_PER_SEC should be 1000000"
|
||||
#endif
|
||||
|
||||
clock_t
|
||||
clock (void)
|
||||
{
|
||||
struct timespec ts;
|
||||
|
||||
_Static_assert (CLOCKS_PER_SEC == 1000000,
|
||||
"CLOCKS_PER_SEC should be 1000000");
|
||||
|
||||
/* clock_gettime shouldn't fail here since CLOCK_PROCESS_CPUTIME_ID is
|
||||
supported since 2.6.12. Check the return value anyway in case the kernel
|
||||
barfs on us for some reason. */
|
||||
|
@ -30,7 +30,7 @@ main (int argc, char ** argv)
|
||||
|
||||
printf ("%jd clock ticks per second (start=%jd,stop=%jd)\n",
|
||||
(intmax_t) (stop - start), (intmax_t) start, (intmax_t) stop);
|
||||
printf ("CLOCKS_PER_SEC=%ld, sysconf(_SC_CLK_TCK)=%ld\n",
|
||||
CLOCKS_PER_SEC, sysconf(_SC_CLK_TCK));
|
||||
printf ("CLOCKS_PER_SEC=%jd, sysconf(_SC_CLK_TCK)=%ld\n",
|
||||
(intmax_t) CLOCKS_PER_SEC, sysconf(_SC_CLK_TCK));
|
||||
return 0;
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user