#ifndef RIB_H_ #define RIB_H_ #ifndef MAP_POPULATE #define MAP_POPULATE 0 #endif #include #include #include #include #include #ifdef __cplusplus extern "C" { #endif typedef uint64_t tsc_t; __inline__ uint64_t rdtsc() { uint32_t lo, hi; /* We cannot use "=A", since this would use %rax on x86_64 */ __asm__ __volatile__ ("rdtsc" : "=a" (lo), "=d" (hi)); return (uint64_t)hi << 32 | lo; } #ifdef __cplusplus } #endif size_t get_rib_run(); std::string get_rib_result_name(); #define PAGE_SIZE_SHIFT 12 #define PAGE_SIZE (1 << PAGE_SIZE_SHIFT) #endif /*RIB_H_*/