gem5
v20.1.0.0
|
#include "sim/sim_events.hh"
#include <string>
#include "base/callback.hh"
#include "base/hostinfo.hh"
#include "sim/eventq.hh"
#include "sim/sim_exit.hh"
#include "sim/stats.hh"
Go to the source code of this file.
Functions | |
void | exitSimLoop (const std::string &message, int exit_code, Tick when, Tick repeat, bool serialize) |
Schedule an event to exit the simulation loop (returning to Python) at the end of the current cycle (curTick()). More... | |
void | exitSimLoopNow (const std::string &message, int exit_code, Tick repeat, bool serialize) |
Schedule an event as above, but make it high priority so it runs before any normal events which are schedule at the current time. More... | |
void exitSimLoop | ( | const std::string & | message, |
int | exit_code = 0 , |
||
Tick | when = curTick() , |
||
Tick | repeat = 0 , |
||
bool | serialize = false |
||
) |
Schedule an event to exit the simulation loop (returning to Python) at the end of the current cycle (curTick()).
The message and exit_code parameters are saved in the SimLoopExitEvent to indicate why the exit occurred.
Definition at line 88 of file sim_events.cc.
References curTick(), serialize(), simQuantum, and warn_if.
Referenced by TraceCPU::checkAndSchedExitEvent(), MemTest::completeRequest(), doSimLoop(), Trace::TarmacParserRecord::dump(), ExitGen::enter(), exitImpl(), GoodbyeObject::fillBuffer(), BaseCache::incMissCount(), PseudoInst::m5checkpoint(), PseudoInst::m5exit(), PseudoInst::m5fail(), LocalSimLoopExitEvent::process(), Trace::TarmacParserRecord::TarmacParserRecordEvent::process(), CountedExitEvent::process(), DistIface::SyncEvent::process(), pybind_init_event(), DistIface::recvThreadFunc(), ArmSemihosting::semiExit(), TCPIface::sendTCP(), DrainManager::signalDrainDone(), PseudoInst::switchcpu(), takeCheckpoint(), GarnetSyntheticTraffic::tick(), ComputeUnit::updateInstStats(), RubyDirectedTester::wakeup(), RubyTester::wakeup(), PseudoInst::workbegin(), PseudoInst::workend(), SimpleUart::write(), and Pl011::write().
void exitSimLoopNow | ( | const std::string & | message, |
int | exit_code, | ||
Tick | repeat, | ||
bool | serialize | ||
) |
Schedule an event as above, but make it high priority so it runs before any normal events which are schedule at the current time.
Definition at line 99 of file sim_events.cc.
Referenced by sc_gem5::Scheduler::pause(), and sc_gem5::Scheduler::stop().