sim: Revert [34e3295b0e39] (sim: Fix early termination in mult...)
HG changset 34e3295b0e39 introduced a check in the main simulation loop that discards exit events that happen at the same tick as another exit event. This was supposed to fix a problem where a simulation script got confused by multiple exit events. This obviously breaks the simulator since it can hide important simulation events, such as a simulation failure, that happen at the same time as a non-fatal simulation event.
This commit is contained in:
parent
0793d0727b
commit
2442aae54f
1 changed files with 0 additions and 14 deletions
|
@ -44,10 +44,6 @@
|
|||
* terminate the loop. Exported to Python via SWIG.
|
||||
* @return The SimLoopExitEvent that caused the loop to exit.
|
||||
*/
|
||||
|
||||
// record the clock cycle for last exit event
|
||||
Tick lastExitTick = 0;
|
||||
|
||||
SimLoopExitEvent *
|
||||
simulate(Tick num_cycles)
|
||||
{
|
||||
|
@ -71,16 +67,6 @@ simulate(Tick num_cycles)
|
|||
|
||||
Event *exit_event = mainEventQueue.serviceOne();
|
||||
if (exit_event != NULL) {
|
||||
/*
|
||||
* if there are multiple exit events in the same cycle, drain the
|
||||
* following exit events since gem5 only allows one * exit event in
|
||||
* a cycle
|
||||
*/
|
||||
if (lastExitTick == curTick())
|
||||
continue;
|
||||
else
|
||||
lastExitTick = curTick();
|
||||
|
||||
// hit some kind of exit event; return to Python
|
||||
// event must be subclass of SimLoopExitEvent...
|
||||
SimLoopExitEvent *se_event;
|
||||
|
|
Loading…
Reference in a new issue