X-Git-Url: https://git.saurik.com/apple/xnu.git/blobdiff_plain/2d21ac55c334faf3a56e5634905ed6987fc787d4..39236c6e673c41db228275375ab7fdb0f837b292:/osfmk/kern/timer.c diff --git a/osfmk/kern/timer.c b/osfmk/kern/timer.c index b53419857..901dbd9ee 100644 --- a/osfmk/kern/timer.c +++ b/osfmk/kern/timer.c @@ -56,7 +56,6 @@ /* */ -#include #include #include @@ -67,6 +66,8 @@ #include #include +int precise_user_kernel_time = 1; + /* * timer_init initializes a timer. */ @@ -74,12 +75,14 @@ void timer_init( timer_t timer) { -#if !STAT_TIME timer->tstamp = 0; -#endif /* STAT_TIME */ +#if defined(__LP64__) + timer->all_bits = 0; +#else timer->low_bits = 0; timer->high_bits = 0; timer->high_bits_check = 0; +#endif /* defined(__LP64__) */ } /* @@ -103,17 +106,19 @@ timer_advance( timer_t timer, uint64_t delta) { +#if defined(__LP64__) + timer->all_bits += delta; +#else uint64_t low; low = delta + timer->low_bits; if (low >> 32) - timer_update(timer, timer->high_bits + (low >> 32), low); + timer_update(timer, (uint32_t)(timer->high_bits + (low >> 32)), (uint32_t)low); else - timer->low_bits = low; + timer->low_bits = (uint32_t)low; +#endif /* defined(__LP64__) */ } -#if !STAT_TIME - void timer_start( timer_t timer, @@ -180,5 +185,3 @@ thread_timer_event( } #endif /* MACHINE_TIMER_ROUTINES */ - -#endif /* STAT_TIME */