From 6b4543184ea4203f44210f8061b888d8d683979a Mon Sep 17 00:00:00 2001 From: Dam Sunwoo Date: Thu, 31 Oct 2013 13:41:13 -0500 Subject: 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. --- src/sim/pseudo_inst.cc | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'src/sim/pseudo_inst.cc') 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 -- cgit v1.2.3