diff options
Diffstat (limited to 'src/mem/ruby/tester/DeterministicDriver.cc')
-rw-r--r-- | src/mem/ruby/tester/DeterministicDriver.cc | 15 |
1 files changed, 10 insertions, 5 deletions
diff --git a/src/mem/ruby/tester/DeterministicDriver.cc b/src/mem/ruby/tester/DeterministicDriver.cc index 7b7d0c9d2..762672118 100644 --- a/src/mem/ruby/tester/DeterministicDriver.cc +++ b/src/mem/ruby/tester/DeterministicDriver.cc @@ -42,6 +42,7 @@ #include "mem/ruby/tester/DetermSeriesGETSGenerator.hh" #include "mem/ruby/common/SubBlock.hh" #include "mem/protocol/Chip.hh" +#include "mem/packet.hh" DeterministicDriver::DeterministicDriver(RubySystem* sys_ptr) { @@ -99,13 +100,17 @@ DeterministicDriver::~DeterministicDriver() } } -void DeterministicDriver::hitCallback(NodeID proc, SubBlock& data, CacheRequestType type, int thread) +void +DeterministicDriver::hitCallback(Packet * pkt) { - DEBUG_EXPR(TESTER_COMP, MedPrio, data); - + NodeID proc = pkt->req->contextId(); + SubBlock data(Address(pkt->getAddr()), pkt->req->getSize()); + if (pkt->hasData()) { + for (int i = 0; i < pkt->req->getSize(); i++) { + data.setByte(i, *(pkt->getPtr<uint8>()+i)); + } + } m_generator_vector[proc]->performCallback(proc, data); - - // Mark that we made progress m_last_progress_vector[proc] = g_eventQueue_ptr->getTime(); } |