From: Ali Saidi Date: Tue, 5 Mar 2013 04:33:47 +0000 (-0500) Subject: cpu: fix a switching issue with the o3 cpu. X-Git-Tag: stable_2013_06_16~69 X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=f205d83359dfb3c4f75159f83081b5e356c3c4b4;p=gem5.git 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. --- diff --git a/src/cpu/o3/fetch_impl.hh b/src/cpu/o3/fetch_impl.hh index e0eb10334..249111f3d 100644 --- a/src/cpu/o3/fetch_impl.hh +++ b/src/cpu/o3/fetch_impl.hh @@ -1048,7 +1048,8 @@ DefaultFetch::checkSignalsAndUpdate(ThreadID tid) if (checkStall(tid) && fetchStatus[tid] != IcacheWaitResponse && - fetchStatus[tid] != IcacheWaitRetry) { + fetchStatus[tid] != IcacheWaitRetry && + fetchStatus[tid] != ItlbWait) { DPRINTF(Fetch, "[tid:%i]: Setting to blocked\n",tid); fetchStatus[tid] = Blocked;