diff options
Diffstat (limited to 'rts/posix/GetTime.c')
-rw-r--r-- | rts/posix/GetTime.c | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/rts/posix/GetTime.c b/rts/posix/GetTime.c index 15643b8319..eab7177fe5 100644 --- a/rts/posix/GetTime.c +++ b/rts/posix/GetTime.c @@ -181,6 +181,22 @@ Ticks getThreadCPUTime(void) return getProcessCPUTime(); } +void getUnixEpochTime(StgWord64 *sec, StgWord32 *nsec) +{ +#if defined(HAVE_GETTIMEOFDAY) + struct timeval tv; + gettimeofday(&tv, (struct timezone *) NULL); + *sec = tv.tv_sec; + *nsec = tv.tv_usec * 1000; +#else + /* Sigh, fall back to second resolution. */ + time_t t; + time(&t); + *sec = t; + *nsec = 0; +#endif +} + nat getPageFaults(void) { |