semihosting: Implement SYS_ELAPSED and SYS_TICKFREQ

These are part of Semihosting for AArch32 and AArch64 Release 2.0

Signed-off-by: Keith Packard <keithp@keithp.com>
Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
Message-Id: <20210107170717.2098982-8-keithp@keithp.com>
Message-Id: <20210108224256.2321-19-alex.bennee@linaro.org>
This commit is contained in:
Keith Packard 2021-01-08 22:42:54 +00:00 committed by Alex Bennée
parent 6b80cb25b4
commit 4d834039c2
3 changed files with 22 additions and 0 deletions

View file

@ -27,6 +27,8 @@
/***********************************************************/
/* real time host monotonic timer */
int64_t clock_start;
#ifdef _WIN32
int64_t clock_freq;
@ -41,6 +43,7 @@ static void __attribute__((constructor)) init_get_clock(void)
exit(1);
}
clock_freq = freq.QuadPart;
clock_start = get_clock();
}
#else
@ -55,5 +58,6 @@ static void __attribute__((constructor)) init_get_clock(void)
if (clock_gettime(CLOCK_MONOTONIC, &ts) == 0) {
use_rt_clock = 1;
}
clock_start = get_clock();
}
#endif