gem5 v24.0.0.0
|
#include <Check.hh>
Public Member Functions | |
Check (Addr address, Addr pc, int _num_writers, int _num_readers, RubyTester *_tester) | |
void | initiate () |
void | performCallback (ruby::NodeID proc, ruby::SubBlock *data, Cycles curTime) |
Addr | getAddress () const |
void | changeAddress (Addr address) |
void | print (std::ostream &out) const |
Private Member Functions | |
void | initiateFlush () |
void | initiatePrefetch () |
void | initiateAction () |
void | initiateCheck () |
void | pickValue () |
void | pickInitiatingNode () |
void | debugPrint () |
Private Attributes | |
ruby::TesterStatus | m_status |
uint8_t | m_value |
int | m_store_count |
ruby::NodeID | m_initiatingNode |
Addr | m_address |
Addr | m_pc |
ruby::RubyAccessMode | m_access_mode |
int | m_num_writers |
int | m_num_readers |
RubyTester * | m_tester_ptr |
gem5::Check::Check | ( | Addr | address, |
Addr | pc, | ||
int | _num_writers, | ||
int | _num_readers, | ||
RubyTester * | _tester ) |
Definition at line 42 of file Check.cc.
References changeAddress(), m_access_mode, m_pc, m_status, m_store_count, gem5::MipsISA::pc, pickInitiatingNode(), pickValue(), gem5::Random::random(), and gem5::random_mt.
void gem5::Check::changeAddress | ( | Addr | address | ) |
|
private |
Definition at line 394 of file Check.cc.
References DPRINTF, m_address, m_initiatingNode, m_status, m_store_count, and m_value.
Referenced by initiate(), and performCallback().
|
inline |
void gem5::Check::initiate | ( | ) |
Definition at line 59 of file Check.cc.
References debugPrint(), DPRINTF, gem5::RubyTester::getCheckFlush(), initiateAction(), initiateCheck(), initiateFlush(), initiatePrefetch(), m_status, m_tester_ptr, gem5::Random::random(), and gem5::random_mt.
Referenced by gem5::RubyTester::wakeup().
|
private |
Definition at line 172 of file Check.cc.
References gem5::Packet::dataDynamic(), DPRINTF, flags, gem5::Packet::getConstPtr(), gem5::RubyTester::getWritableCpuPort(), gem5::MipsISA::index, m_address, m_num_writers, m_pc, m_status, m_store_count, m_tester_ptr, m_value, gem5::Random::random(), gem5::random_mt, gem5::RubyTester::requestorId(), gem5::Packet::senderState, gem5::RequestPort::sendTimingReq(), and gem5::MemCmd::WriteReq.
Referenced by initiate().
|
private |
Definition at line 233 of file Check.cc.
References gem5::CHECK_SIZE, gem5::Packet::dataDynamic(), DPRINTF, flags, gem5::RubyTester::getReadableCpuPort(), gem5::MipsISA::index, gem5::Request::INST_FETCH, gem5::RubyTester::isInstDataCpuPort(), gem5::RubyTester::isInstOnlyCpuPort(), m_address, m_num_readers, m_pc, m_status, m_tester_ptr, gem5::Random::random(), gem5::random_mt, gem5::MemCmd::ReadReq, gem5::RubyTester::requestorId(), gem5::Packet::senderState, gem5::RequestPort::sendTimingReq(), and gem5::Flags< T >::set().
Referenced by initiate().
|
private |
Definition at line 142 of file Check.cc.
References gem5::CHECK_SIZE, DPRINTF, flags, gem5::MemCmd::FlushReq, gem5::RubyTester::getWritableCpuPort(), gem5::MipsISA::index, m_address, m_num_writers, m_pc, m_tester_ptr, gem5::Random::random(), gem5::random_mt, gem5::RubyTester::requestorId(), gem5::Packet::senderState, and gem5::RequestPort::sendTimingReq().
Referenced by initiate().
|
private |
Definition at line 85 of file Check.cc.
References data, gem5::Packet::dataDynamic(), DPRINTF, flags, gem5::RubyTester::getReadableCpuPort(), gem5::MipsISA::index, gem5::Request::INST_FETCH, gem5::RubyTester::isInstDataCpuPort(), gem5::RubyTester::isInstOnlyCpuPort(), m_address, m_num_readers, m_pc, m_tester_ptr, gem5::Request::PF_EXCLUSIVE, gem5::Request::PREFETCH, gem5::Random::random(), gem5::random_mt, gem5::MemCmd::ReadReq, gem5::RubyTester::requestorId(), gem5::Packet::senderState, gem5::RequestPort::sendTimingReq(), gem5::Flags< T >::set(), and gem5::MemCmd::WriteReq.
Referenced by initiate().
void gem5::Check::performCallback | ( | ruby::NodeID | proc, |
ruby::SubBlock * | data, | ||
Cycles | curTime ) |
Definition at line 287 of file Check.cc.
References gem5::CHECK_SIZE, data, debugPrint(), DPRINTF, gem5::RubyTester::incrementCheckCompletions(), m_address, m_status, m_store_count, m_tester_ptr, m_value, gem5::ruby::makeLineAddress(), panic, and pickValue().
Referenced by gem5::RubyTester::hitCallback().
|
private |
Definition at line 370 of file Check.cc.
References DPRINTF, m_address, m_initiatingNode, m_num_writers, m_status, m_store_count, gem5::Random::random(), and gem5::random_mt.
Referenced by Check().
|
private |
Definition at line 362 of file Check.cc.
References m_status, m_store_count, m_value, gem5::Random::random(), and gem5::random_mt.
Referenced by Check(), and performCallback().
void gem5::Check::print | ( | std::ostream & | out | ) | const |
Definition at line 382 of file Check.cc.
References m_address, m_initiatingNode, m_status, m_store_count, and m_value.
Referenced by gem5::operator<<().
|
private |
|
private |
Definition at line 80 of file Check.hh.
Referenced by changeAddress(), debugPrint(), getAddress(), initiateAction(), initiateCheck(), initiateFlush(), initiatePrefetch(), performCallback(), pickInitiatingNode(), and print().
|
private |
Definition at line 79 of file Check.hh.
Referenced by debugPrint(), pickInitiatingNode(), and print().
|
private |
Definition at line 84 of file Check.hh.
Referenced by initiateCheck(), and initiatePrefetch().
|
private |
Definition at line 83 of file Check.hh.
Referenced by initiateAction(), initiateFlush(), and pickInitiatingNode().
|
private |
Definition at line 81 of file Check.hh.
Referenced by Check(), initiateAction(), initiateCheck(), initiateFlush(), and initiatePrefetch().
|
private |
Definition at line 76 of file Check.hh.
Referenced by changeAddress(), Check(), debugPrint(), initiate(), initiateAction(), initiateCheck(), performCallback(), pickInitiatingNode(), pickValue(), and print().
|
private |
Definition at line 78 of file Check.hh.
Referenced by changeAddress(), Check(), debugPrint(), initiateAction(), performCallback(), pickInitiatingNode(), pickValue(), and print().
|
private |
Definition at line 85 of file Check.hh.
Referenced by initiate(), initiateAction(), initiateCheck(), initiateFlush(), initiatePrefetch(), and performCallback().
|
private |
Definition at line 77 of file Check.hh.
Referenced by debugPrint(), initiateAction(), performCallback(), pickValue(), and print().