#ifndef _internal_h
#define _internal_h
/******************************************************************************
** FILE: internal.h
** Declarations shared among C code files.
*/

#include <sys/types.h>
#include <sys/time.h>

#ifdef STATS
extern hrtime_t time_cache;
extern u_longlong_t count_cache_flush;
extern u_longlong_t count_cache_load_start;
extern u_longlong_t count_cache_no_mshr;
extern u_longlong_t count_cache_load_continue;
extern u_longlong_t count_cache_load_hit_l1;
extern u_longlong_t count_cache_load_hit_l2;
extern u_longlong_t count_cache_load_memory;
extern u_longlong_t count_cache_load_removed;
extern u_longlong_t count_cache_store_start;
extern u_longlong_t count_cache_store_spec;
extern u_longlong_t count_cache_no_wbuf;
extern u_longlong_t count_cache_no_wbuf_spec;
extern u_longlong_t count_cache_store_commit;
extern u_longlong_t count_cache_store_commit_fail;
extern u_longlong_t count_cache_store_rollback;
extern u_longlong_t count_cache_segfault;
extern u_longlong_t count_branch_predict;
extern u_longlong_t count_branch_direction;
#endif

extern u_longlong_t xCPU_cycle;
extern u_longlong_t xnum_insts_retired;

#endif