summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--i386/i386/xen.h6
1 files changed, 3 insertions, 3 deletions
diff --git a/i386/i386/xen.h b/i386/i386/xen.h
index 49564ebb..8a17748a 100644
--- a/i386/i386/xen.h
+++ b/i386/i386/xen.h
@@ -396,9 +396,9 @@ _hypcall1(unsigned long, get_debugreg, int, reg);
/* x86-specific */
MACH_INLINE uint64_t hyp_cpu_clock(void) {
- uint64_t tsc;
- asm volatile("rdtsc":"=A"(tsc));
- return tsc;
+ uint32_t hi, lo;
+ asm volatile("rdtsc" : "=d"(hi), "=a"(lo));
+ return (((uint64_t) hi) << 32) | lo;
}
#else /* __ASSEMBLER__ */