summaryrefslogtreecommitdiff
path: root/src/sim
diff options
context:
space:
mode:
authorEmilio Castillo <ecastill@bsc.es>2015-08-26 14:20:30 -0500
committerEmilio Castillo <ecastill@bsc.es>2015-08-26 14:20:30 -0500
commit88b1fd82a6207c38845c3503ab3037ed40225d80 (patch)
treec58e623951bf9850ff561278ecb2507c8174d74c /src/sim
parentce4f6a90207d98b1b05eca01e621119c1583ced7 (diff)
downloadgem5-88b1fd82a6207c38845c3503ab3037ed40225d80.tar.xz
cpu: quiesce pseudoinsts: Always do full quiesce
The O3CPU blocks the Fetch when it sees a quiesce instruction (IsQuiesce flag). When the inst. is executed, a quiesce event is created to reactivate the context and unblock the Fetch. If the quiesceNs or quiesceCycles are called with a value of 0, the QuiesceEvent will not be created and the Fetch stage will remain blocked. Committed by Joel Hestness <jthestness@gmail.com>
Diffstat (limited to 'src/sim')
-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 80737003c..d4e2085df 100644
--- a/src/sim/pseudo_inst.cc
+++ b/src/sim/pseudo_inst.cc
@@ -280,7 +280,7 @@ quiesceNs(ThreadContext *tc, uint64_t ns)
BaseCPU *cpu = tc->getCpuPtr();
- if (!cpu->params()->do_quiesce || ns == 0)
+ if (!cpu->params()->do_quiesce)
return;
EndQuiesceEvent *quiesceEvent = tc->getQuiesceEvent();
@@ -306,7 +306,7 @@ quiesceCycles(ThreadContext *tc, uint64_t cycles)
BaseCPU *cpu = tc->getCpuPtr();
- if (!cpu->params()->do_quiesce || cycles == 0)
+ if (!cpu->params()->do_quiesce)
return;
EndQuiesceEvent *quiesceEvent = tc->getQuiesceEvent();