summaryrefslogtreecommitdiff
path: root/src/sim/pseudo_inst.cc
diff options
context:
space:
mode:
authorDam Sunwoo <dam.sunwoo@arm.com>2013-10-31 13:41:13 -0500
committerDam Sunwoo <dam.sunwoo@arm.com>2013-10-31 13:41:13 -0500
commit6b4543184ea4203f44210f8061b888d8d683979a (patch)
treed9cba5515acc22363ffd7261e482e36e2f783d04 /src/sim/pseudo_inst.cc
parent19c2a606fadbf04d1839eec738bbabccb218c7f3 (diff)
downloadgem5-6b4543184ea4203f44210f8061b888d8d683979a.tar.xz
sim: added option to serialize SimLoopExitEvent
SimLoopExitEvents weren't serialized by default. Some benchmarks utilize a delayed m5 exit pseudo op call to terminate the simulation and this event was lost when resuming from a checkpoint generated after the pseudo op call. This patch adds the capability to serialize the SimLoopExitEvents and enable serialization for m5_exit and m5_fail pseudo ops by default. Does not affect other generic SimLoopExitEvents.
Diffstat (limited to 'src/sim/pseudo_inst.cc')
-rw-r--r--src/sim/pseudo_inst.cc4
1 files changed, 2 insertions, 2 deletions
diff --git a/src/sim/pseudo_inst.cc b/src/sim/pseudo_inst.cc
index f4666a0cd..e85e3d19a 100644
--- a/src/sim/pseudo_inst.cc
+++ b/src/sim/pseudo_inst.cc
@@ -347,7 +347,7 @@ m5exit(ThreadContext *tc, Tick delay)
{
DPRINTF(PseudoInst, "PseudoInst::m5exit(%i)\n", delay);
Tick when = curTick() + delay * SimClock::Int::ns;
- exitSimLoop("m5_exit instruction encountered", 0, when);
+ exitSimLoop("m5_exit instruction encountered", 0, when, 0, true);
}
void
@@ -355,7 +355,7 @@ m5fail(ThreadContext *tc, Tick delay, uint64_t code)
{
DPRINTF(PseudoInst, "PseudoInst::m5fail(%i, %i)\n", delay, code);
Tick when = curTick() + delay * SimClock::Int::ns;
- exitSimLoop("m5_fail instruction encountered", code, when);
+ exitSimLoop("m5_fail instruction encountered", code, when, 0, true);
}
void