diff options
author | Korey Sewell <ksewell@umich.edu> | 2011-06-19 21:43:38 -0400 |
---|---|---|
committer | Korey Sewell <ksewell@umich.edu> | 2011-06-19 21:43:38 -0400 |
commit | 22ba1718c4c36b5abd5fdc8ce32792f5dfdd4fc1 (patch) | |
tree | 6518123e144dee30a15428df3ad4e5c66051b5a3 /src/cpu/inorder/cpu.cc | |
parent | e8082a28c8ee36d6e7e1982952fc545224eb33e7 (diff) | |
download | gem5-22ba1718c4c36b5abd5fdc8ce32792f5dfdd4fc1.tar.xz |
inorder: cleanup events in resource pool
remove events in the resource pool that can be called from the CPU event, since the CPU
event is scheduled at the same time at the resource pool event.
----
Also, match the resPool event function names to the cpu event function names
----
Diffstat (limited to 'src/cpu/inorder/cpu.cc')
-rw-r--r-- | src/cpu/inorder/cpu.cc | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/src/cpu/inorder/cpu.cc b/src/cpu/inorder/cpu.cc index 75e9e06d9..7ef48608a 100644 --- a/src/cpu/inorder/cpu.cc +++ b/src/cpu/inorder/cpu.cc @@ -117,6 +117,7 @@ InOrderCPU::CPUEvent::process() { case ActivateThread: cpu->activateThread(tid); + cpu->resPool->activateThread(tid); break; case ActivateNextReadyThread: @@ -125,18 +126,23 @@ InOrderCPU::CPUEvent::process() case DeactivateThread: cpu->deactivateThread(tid); + cpu->resPool->deactivateThread(tid); break; case HaltThread: cpu->haltThread(tid); + cpu->resPool->deactivateThread(tid); break; case SuspendThread: cpu->suspendThread(tid); + cpu->resPool->suspendThread(tid); break; case SquashFromMemStall: cpu->squashDueToMemStall(inst->squashingStage, inst->seqNum, tid); + cpu->resPool->squashDueToMemStall(inst, inst->squashingStage, + inst->seqNum, tid); break; case Trap: @@ -896,7 +902,7 @@ InOrderCPU::activateNextReadyThread() activateThread(ready_tid); // Activate in Resource Pool - resPool->activateAll(ready_tid); + resPool->activateThread(ready_tid); list<ThreadID>::iterator ready_it = std::find(readyThreads.begin(), readyThreads.end(), ready_tid); |