summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAndy Lutomirski <luto@amacapital.net>2014-07-30 15:29:53 -0700
committerAndy Lutomirski <luto@amacapital.net>2014-07-30 15:29:53 -0700
commit981e86877c3cd916949808cb3f0c4b664043cba0 (patch)
tree271e671014fdee8cd83663ed91af669aef9f55ae
parent68daae4a7fd34aa8cada8d47e1adb1c5ba4e318b (diff)
downloadmisc-tests-981e86877c3cd916949808cb3f0c4b664043cba0.tar.gz
timing_test: Add vsyscall_time
-rw-r--r--timing_test.cc6
1 files changed, 6 insertions, 0 deletions
diff --git a/timing_test.cc b/timing_test.cc
index b5ad60f..cf5e904 100644
--- a/timing_test.cc
+++ b/timing_test.cc
@@ -104,6 +104,12 @@ int main(int argc, char **argv)
unsigned int ecx = 0;
for (size_t i = 0; i < loops; ++i)
asm volatile ("rdpmc" : "=a" (eax), "=d" (edx) : "c" (ecx));
+#ifdef __x86_64__
+ } else if (!strcmp(mode, "vsyscall_time")) {
+ auto vsyscall_time = (long (*)(long *))0xffffffffff600400;
+ for (size_t i = 0; i < loops; ++i)
+ vsyscall_time(nullptr);
+#endif
} else {
printf("Unknown mode %s\n", mode);
return 1;