summaryrefslogtreecommitdiff
path: root/sim/pseudo_inst.cc
diff options
context:
space:
mode:
authorKevin Lim <ktlim@umich.edu>2006-05-16 13:51:18 -0400
committerKevin Lim <ktlim@umich.edu>2006-05-16 13:51:18 -0400
commit989cc1735eb18f9894f91854acd28e9477fa3b60 (patch)
tree8fe4bcd57c4a5978f24b8807489d8f8ae3ad96a2 /sim/pseudo_inst.cc
parentbfa9cc2c3a7aa9003c145e6bda750edf18a01ea8 (diff)
downloadgem5-989cc1735eb18f9894f91854acd28e9477fa3b60.tar.xz
Sampling fixes related to the quiesce event.
cpu/cpu_exec_context.cc: cpu/cpu_exec_context.hh: Sampling fixes. The CPU models may switch during a quiesce period, so it needs to be sure to wake up the right XC. cpu/exec_context.hh: Return the EndQuiesceEvent specifically. sim/pseudo_inst.cc: Return the EndQuiesceEvent specifically for sampling. --HG-- extra : convert_revision : f9aa1fc8d4db8058f05319cb6a3d4605ce93b4c8
Diffstat (limited to 'sim/pseudo_inst.cc')
-rw-r--r--sim/pseudo_inst.cc5
1 files changed, 3 insertions, 2 deletions
diff --git a/sim/pseudo_inst.cc b/sim/pseudo_inst.cc
index e475006e7..4d9541b58 100644
--- a/sim/pseudo_inst.cc
+++ b/sim/pseudo_inst.cc
@@ -38,6 +38,7 @@
#include "cpu/base.hh"
#include "cpu/sampler/sampler.hh"
#include "cpu/exec_context.hh"
+#include "cpu/quiesce_event.hh"
#include "kern/kernel_stats.hh"
#include "sim/param.hh"
#include "sim/serialize.hh"
@@ -83,7 +84,7 @@ namespace AlphaPseudo
if (!doQuiesce || ns == 0)
return;
- Event *quiesceEvent = xc->getQuiesceEvent();
+ EndQuiesceEvent *quiesceEvent = xc->getQuiesceEvent();
if (quiesceEvent->scheduled())
quiesceEvent->reschedule(curTick + Clock::Int::ns * ns);
@@ -100,7 +101,7 @@ namespace AlphaPseudo
if (!doQuiesce || cycles == 0)
return;
- Event *quiesceEvent = xc->getQuiesceEvent();
+ EndQuiesceEvent *quiesceEvent = xc->getQuiesceEvent();
if (quiesceEvent->scheduled())
quiesceEvent->reschedule(curTick +