aboutsummaryrefslogtreecommitdiff
path: root/lab4_perflab/rdtsc.h
blob: ecfa739961de6c25e7ebf1cc6d60d3f45a0589c9 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
//-*-c++-*-
#ifndef _rtdsc_h_
#define _rtdsc_h_

//
// Inline function to read the CPU clock
//
inline unsigned long long int rdtscll(void) {
  unsigned a, d;

  __asm__ volatile("rdtsc" : "=a"(a), "=d"(d));

  return ((unsigned long long)a) | (((unsigned long long)d) << 32);
  ;
}

#endif