Index: sys/x86/x86/tsc.c =================================================================== --- sys/x86/x86/tsc.c (revision 223102) +++ sys/x86/x86/tsc.c (working copy) @@ -579,6 +579,9 @@ tsc_get_timecount(struct timecounter *tc __unused) static u_int tsc_get_timecount_low(struct timecounter *tc) { + uint32_t low, high; - return (rdtsc() >> (int)(intptr_t)tc->tc_priv); + __asm __volatile("rdtsc; shrd %2,%1,%0" + : "=a" (low), "=d" (high) : "Ic" ((uint8_t)(intptr_t)tc->tc_priv)); + return (low); }