From 77ac1519e863b7095f69c976353f7647c6f6f63b Mon Sep 17 00:00:00 2001 From: Sebastian Huber Date: Fri, 20 Dec 2019 10:55:36 +0100 Subject: libtest: Use test configuration in T_now() Use the user provided now handler of the test configuration to get the time in T_now(). --- cpukit/libtest/t-test-time.c | 15 ++++++++++----- cpukit/libtest/t-test.c | 11 +++++++++++ 2 files changed, 21 insertions(+), 5 deletions(-) (limited to 'cpukit/libtest') diff --git a/cpukit/libtest/t-test-time.c b/cpukit/libtest/t-test-time.c index 02d729f580..94a9ca393b 100644 --- a/cpukit/libtest/t-test-time.c +++ b/cpukit/libtest/t-test-time.c @@ -201,16 +201,20 @@ T_time_to_seconds_and_nanoseconds(T_time time, uint32_t *s, uint32_t *ns) #endif } -#ifndef __rtems__ T_time -T_now(void) +T_now_clock(void) { +#ifndef __rtems__ struct timespec tp; (void)clock_gettime(CLOCK_MONOTONIC, &tp); return (T_time)tp.tv_sec * (T_time)1000000000 + (T_time)tp.tv_nsec; +#else /* __rtems__ */ + return (T_time)_Timecounter_Sbinuptime(); +#endif /* __rtems__ */ } +#ifndef __rtems__ T_ticks T_tick(void) { @@ -218,16 +222,17 @@ T_tick(void) } #endif -static atomic_uint dummy_time; +static atomic_uint T_dummy_time; T_time T_now_dummy(void) { - return atomic_fetch_add_explicit(&dummy_time, 1, memory_order_relaxed); + return atomic_fetch_add_explicit(&T_dummy_time, 1, + memory_order_relaxed); } T_time -T_now_via_tick(void) +T_now_tick(void) { return T_ticks_to_time(T_tick()); } diff --git a/cpukit/libtest/t-test.c b/cpukit/libtest/t-test.c index 5e9be54ed2..aedf9a49b1 100644 --- a/cpukit/libtest/t-test.c +++ b/cpukit/libtest/t-test.c @@ -994,3 +994,14 @@ T_set_putchar(T_putchar new_putchar, void *new_arg, T_putchar *old_putchar, ctx->putchar = new_putchar; ctx->putchar_arg = new_arg; } + +T_time +T_now(void) +{ + T_context *ctx; + const T_config *config; + + ctx = &T_instance; + config = ctx->config; + return (*config->now)(); +} -- cgit v1.2.3