summaryrefslogtreecommitdiff
path: root/tests/timer_utils.c
diff options
context:
space:
mode:
authorGaurav Shah <gauravsh@google.com>2010-02-12 11:21:18 -0800
committerGaurav Shah <gauravsh@google.com>2010-02-12 11:21:18 -0800
commitcc1dd99ae75549ea58170cb13bcc8636625a46c6 (patch)
tree6387e491e9d50cbd007932443b3a4283052e189f /tests/timer_utils.c
parent6f555397b1b59404e7b4d78aed884acf26d5e50f (diff)
downloadvboot-cc1dd99ae75549ea58170cb13bcc8636625a46c6.tar.gz
SHA* digest function speed test.
BUG=1210 TEST=This is a test, Review URL: http://codereview.chromium.org/596079
Diffstat (limited to 'tests/timer_utils.c')
-rw-r--r--tests/timer_utils.c24
1 files changed, 24 insertions, 0 deletions
diff --git a/tests/timer_utils.c b/tests/timer_utils.c
new file mode 100644
index 00000000..015f6db3
--- /dev/null
+++ b/tests/timer_utils.c
@@ -0,0 +1,24 @@
+/* Copyright (c) 2010 The Chromium OS Authors. All rights reserved.
+ * Use of this source code is governed by a BSD-style license that can be
+ * found in the LICENSE file.
+ */
+
+#include "timer_utils.h"
+
+void StartTimer(ClockTimerState* ct) {
+ clock_gettime(CLOCK_REALTIME, &ct->start_time);
+}
+
+void StopTimer(ClockTimerState* ct) {
+ clock_gettime(CLOCK_REALTIME, &ct->end_time);
+}
+
+uint32_t GetDurationMsecs(ClockTimerState* ct) {
+ uint64_t start = ((uint64_t) ct->start_time.tv_sec * 1000000000 +
+ (uint64_t) ct->start_time.tv_nsec);
+ uint64_t end = ((uint64_t) ct->end_time.tv_sec * 1000000000 +
+ (uint64_t) ct->end_time.tv_nsec);
+ uint64_t duration_msecs = (end - start) / 1000000U; /* Nanoseconds ->
+ * Milliseconds. */
+ return (uint32_t) duration_msecs;
+}