summaryrefslogtreecommitdiffstats
path: root/src/x86/tsc-x86.s
diff options
context:
space:
mode:
Diffstat (limited to 'src/x86/tsc-x86.s')
-rw-r--r--src/x86/tsc-x86.s2
1 files changed, 2 insertions, 0 deletions
diff --git a/src/x86/tsc-x86.s b/src/x86/tsc-x86.s
index 46013bb..09e0e32 100644
--- a/src/x86/tsc-x86.s
+++ b/src/x86/tsc-x86.s
@@ -29,9 +29,11 @@
sandglass_get_tsc:
pushl %ebx /* Callee-save register, clobbered by cpuid */
pushl %esi
+ xorl %eax, %eax /* Make cpuid do a consistent operation */
cpuid /* Serialize */
rdtsc /* Read time stamp counter */
movl %eax, %esi /* Store tsc */
+ xorl %eax, %eax
cpuid /* Serialize again */
movl %esi, %eax
popl %esi