Revert "cpu: stop scheduling suspended threads in MinorCPU"

This reverts commit 6a6668bbc4.
The commit was part of a patchset which broke MinorCPU regressions
(switcheroo)

Change-Id: I3c16a6478ba44b9d27cdd3d64a710a356999df05
Signed-off-by: Giacomo Travaglini <giacomo.travaglini@arm.com>
Reviewed-on: https://gem5-review.googlesource.com/c/public/gem5/+/18603
Maintainer: Jason Lowe-Power <jason@lowepower.com>
Tested-by: kokoro <noreply+kokoro@google.com>
This commit is contained in:
Giacomo Travaglini
2019-03-01 13:56:25 +00:00
parent 9852c5d96b
commit 9a1eb7a3d2
3 changed files with 4 additions and 14 deletions

View File

@@ -314,9 +314,7 @@ Decode::getScheduledThread()
}
for (auto tid : priority_list) {
if (cpu.getContext(tid)->status() == ThreadContext::Active &&
getInput(tid) &&
!decodeInfo[tid].blocked) {
if (getInput(tid) && !decodeInfo[tid].blocked) {
threadPriority = tid;
return tid;
}

View File

@@ -1683,12 +1683,7 @@ Execute::getCommittingThread()
for (auto tid : priority_list) {
ExecuteThreadInfo &ex_info = executeInfo[tid];
bool is_thread_active =
cpu.getContext(tid)->status() == ThreadContext::Active;
bool can_commit_insts = !ex_info.inFlightInsts->empty() &&
is_thread_active;
bool can_commit_insts = !ex_info.inFlightInsts->empty();
if (can_commit_insts) {
QueuedInst *head_inflight_inst = &(ex_info.inFlightInsts->front());
MinorDynInstPtr inst = head_inflight_inst->inst;
@@ -1754,8 +1749,7 @@ Execute::getIssuingThread()
}
for (auto tid : priority_list) {
if (cpu.getContext(tid)->status() == ThreadContext::Active &&
getInput(tid)) {
if (getInput(tid)) {
issuePriority = tid;
return tid;
}

View File

@@ -586,9 +586,7 @@ Fetch2::getScheduledThread()
}
for (auto tid : priority_list) {
if (cpu.getContext(tid)->status() == ThreadContext::Active &&
getInput(tid) &&
!fetchInfo[tid].blocked) {
if (getInput(tid) && !fetchInfo[tid].blocked) {
threadPriority = tid;
return tid;
}