Go to the documentation of this file.
36 #include "debug/RubyTest.hh"
39 : m_num_writers(_num_writers), m_num_readers(_num_readers),
45 const int size2 = 100;
47 DPRINTF(RubyTest,
"Adding false sharing checks\n");
50 for (
int i = 0;
i < size1;
i++) {
56 DPRINTF(RubyTest,
"Adding cache conflict checks\n");
60 for (
int i = 0;
i < size2;
i++) {
66 DPRINTF(RubyTest,
"Adding cache conflict checks2\n");
68 for (
int i = 0;
i < size2;
i++) {
78 for (
int i = 0;
i < size;
i++)
87 panic(
"Check not aligned");
99 DPRINTF(RubyTest,
"Adding check for address: %s\n", address);
120 DPRINTF(RubyTest,
"Looking for check by address: %s\n", address);
128 assert(check != NULL);
const int CHECK_SIZE_BITS
RubyTester * m_tester_ptr
void addCheck(Addr address)
void print(std::ostream &out) const
std::enable_if< std::is_integral< T >::value, int >::type floorLog2(T x)
CheckTable(int _num_writers, int _num_readers, RubyTester *_tester)
Check * getCheck(Addr address)
Addr bitSelect(Addr addr, unsigned int small, unsigned int big)
std::unordered_map< Addr, Check * > m_lookup_map
uint64_t Addr
Address type This will probably be moved somewhere else in the near future.
std::vector< Check * > m_check_vector
std::enable_if< std::is_integral< T >::value, T >::type random()
Use the SFINAE idiom to choose an implementation based on whether the type is integral or floating po...
#define panic(...)
This implements a cprintf based panic() function.
Generated on Wed Sep 30 2020 14:02:09 for gem5 by doxygen 1.8.17