diff --git a/utils.c b/utils.c index 5546383..3f81a81 100644 --- a/utils.c +++ b/utils.c @@ -48,7 +48,8 @@ static uint64_t semu_timer_clocksource(uint64_t freq) static mach_timebase_info_data_t t; if (t.denom == 0) (void) mach_timebase_info(&t); - return mult_frac(mach_absolute_time() * freq, t.numer, t.denom); + return mult_frac(mult_frac(mach_absolute_time(), freq, 1e9), t.numer, + t.denom); #else return time(0) * freq; #endif