O3: Mark fetch stage as active if it faults.
Otherwise if the rest of the pipeline is idle then fault will never propagate to commit to be handled, causing CPU to deadlock.
This commit is contained in:
@@ -1264,6 +1264,8 @@ DefaultFetch<Impl>::fetch(bool &status_change)
|
||||
toDecode->insts[numInst] = instruction;
|
||||
toDecode->size++;
|
||||
|
||||
wroteToTimeBuffer = true;
|
||||
|
||||
DPRINTF(Fetch, "[tid:%i]: Blocked, need to handle the trap.\n",tid);
|
||||
|
||||
fetchStatus[tid] = TrapPending;
|
||||
|
||||
Reference in New Issue
Block a user