This is the mail archive of the
glibc-cvs@sourceware.org
mailing list for the glibc project.
GNU C Library master sources branch master updated. glibc-2.20-481-g57ada0e
- From: hjl at sourceware dot org
- To: glibc-cvs at sourceware dot org
- Date: 6 Jan 2015 13:05:37 -0000
- Subject: GNU C Library master sources branch master updated. glibc-2.20-481-g57ada0e
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "GNU C Library master sources".
The branch, master has been updated
via 57ada0e7e79b9421a77d2b92dffce0f9e8e087b5 (commit)
from 46abb64d6287d09100b147d062f6810066389b7e (commit)
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.
- Log -----------------------------------------------------------------
http://sourceware.org/git/gitweb.cgi?p=glibc.git;a=commitdiff;h=57ada0e7e79b9421a77d2b92dffce0f9e8e087b5
commit 57ada0e7e79b9421a77d2b92dffce0f9e8e087b5
Author: H.J. Lu <hjl.tools@gmail.com>
Date: Tue Jan 6 04:59:13 2015 -0800
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.
diff --git a/ChangeLog b/ChangeLog
index 262e300..be5eb18 100644
--- a/ChangeLog
+++ b/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.
diff --git a/NEWS b/NEWS
index 63918df..49c0a2d 100644
--- a/NEWS
+++ b/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.
diff --git a/bits/time.h b/bits/time.h
index ae17b7f..7585ddf 100644
--- a/bits/time.h
+++ b/bits/time.h
@@ -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
diff --git a/sysdeps/unix/sysv/linux/bits/time.h b/sysdeps/unix/sysv/linux/bits/time.h
index 226d6dd..706946c 100644
--- a/sysdeps/unix/sysv/linux/bits/time.h
+++ b/sysdeps/unix/sysv/linux/bits/time.h
@@ -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
diff --git a/sysdeps/unix/sysv/linux/clock.c b/sysdeps/unix/sysv/linux/clock.c
index e06c4b3..e568bf3 100644
--- a/sysdeps/unix/sysv/linux/clock.c
+++ b/sysdeps/unix/sysv/linux/clock.c
@@ -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. */
diff --git a/time/clocktest.c b/time/clocktest.c
index 2e6457d..13b7420 100644
--- a/time/clocktest.c
+++ b/time/clocktest.c
@@ -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;
}
-----------------------------------------------------------------------
Summary of changes:
ChangeLog | 10 ++++++++++
NEWS | 2 +-
bits/time.h | 8 ++++----
sysdeps/unix/sysv/linux/bits/time.h | 8 ++++----
sysdeps/unix/sysv/linux/clock.c | 7 +++----
time/clocktest.c | 4 ++--
6 files changed, 24 insertions(+), 15 deletions(-)
hooks/post-receive
--
GNU C Library master sources