From c9e4678c16164ca12de951ea6faffc9ab9600b0b Mon Sep 17 00:00:00 2001 From: Ali Saidi Date: Mon, 22 Apr 2013 13:20:31 -0400 Subject: cpu: fix a switching issue with the o3 cpu. This change fixes the switcheroo test that broke earlier this month. The code that was checking for the pipeline being blocked wasn't checking for a pending translation, only for a icache access. --- src/cpu/o3/fetch_impl.hh | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/cpu/o3/fetch_impl.hh b/src/cpu/o3/fetch_impl.hh index 249111f3d..43effa9d7 100644 --- a/src/cpu/o3/fetch_impl.hh +++ b/src/cpu/o3/fetch_impl.hh @@ -1049,7 +1049,8 @@ DefaultFetch::checkSignalsAndUpdate(ThreadID tid) if (checkStall(tid) && fetchStatus[tid] != IcacheWaitResponse && fetchStatus[tid] != IcacheWaitRetry && - fetchStatus[tid] != ItlbWait) { + fetchStatus[tid] != ItlbWait && + fetchStatus[tid] != QuiescePending) { DPRINTF(Fetch, "[tid:%i]: Setting to blocked\n",tid); fetchStatus[tid] = Blocked; -- cgit v1.2.3