From f205d83359dfb3c4f75159f83081b5e356c3c4b4 Mon Sep 17 00:00:00 2001 From: Ali Saidi Date: Mon, 4 Mar 2013 23:33:47 -0500 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(-) (limited to 'src/cpu/o3/fetch_impl.hh') 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; -- cgit v1.2.3