summaryrefslogtreecommitdiff
path: root/nacl/cpucycles/x86tscfreq.c
diff options
context:
space:
mode:
Diffstat (limited to 'nacl/cpucycles/x86tscfreq.c')
-rw-r--r--nacl/cpucycles/x86tscfreq.c17
1 files changed, 17 insertions, 0 deletions
diff --git a/nacl/cpucycles/x86tscfreq.c b/nacl/cpucycles/x86tscfreq.c
new file mode 100644
index 00000000..a1b94b62
--- /dev/null
+++ b/nacl/cpucycles/x86tscfreq.c
@@ -0,0 +1,17 @@
1#include <sys/types.h>
2#include <sys/sysctl.h>
3
4long long cpucycles_x86tscfreq(void)
5{
6 long long result;
7 asm volatile(".byte 15;.byte 49" : "=A" (result));
8 return result;
9}
10
11long long cpucycles_x86tscfreq_persecond(void)
12{
13 long result = 0;
14 size_t resultlen = sizeof(long);
15 sysctlbyname("machdep.tsc_freq",&result,&resultlen,0,0);
16 return result;
17}