summaryrefslogtreecommitdiff
path: root/src/cpu/inorder/resource_pool.cc
diff options
context:
space:
mode:
authorKorey Sewell <ksewell@umich.edu>2010-01-31 18:28:05 -0500
committerKorey Sewell <ksewell@umich.edu>2010-01-31 18:28:05 -0500
commit5e0b8337ed9c8aa975cd44df5565c2c3dde0c267 (patch)
tree73fb7950d2c9068c09c9f803e9b3773fdb9a0530 /src/cpu/inorder/resource_pool.cc
parent069b38c0d546708491d0da84668ba32f82ca7cb8 (diff)
downloadgem5-5e0b8337ed9c8aa975cd44df5565c2c3dde0c267.tar.xz
inorder: add/remove halt/deallocate context respectively
Halt is called from the exit() system call while deallocate is unused. So to clear up things, just use halt and remove deallocate.
Diffstat (limited to 'src/cpu/inorder/resource_pool.cc')
-rw-r--r--src/cpu/inorder/resource_pool.cc7
1 files changed, 5 insertions, 2 deletions
diff --git a/src/cpu/inorder/resource_pool.cc b/src/cpu/inorder/resource_pool.cc
index 20f112a66..3750d18d6 100644
--- a/src/cpu/inorder/resource_pool.cc
+++ b/src/cpu/inorder/resource_pool.cc
@@ -204,6 +204,9 @@ ResourcePool::slotsInUse(int res_idx)
//@todo: split this function and call this version schedulePoolEvent
// and use this scheduleEvent for scheduling a specific event on
// a resource
+//@todo: For arguments that arent being used in a ResPoolEvent, a dummyParam
+// or some typedef can be used to signify what's important info
+// to the event construction
void
ResourcePool::scheduleEvent(InOrderCPU::CPUEventType e_type, DynInstPtr inst,
int delay, int res_idx, ThreadID tid)
@@ -229,8 +232,8 @@ ResourcePool::scheduleEvent(InOrderCPU::CPUEventType e_type, DynInstPtr inst,
}
break;
+ case InOrderCPU::HaltThread:
case InOrderCPU::DeactivateThread:
- case InOrderCPU::DeallocateThread:
{
DPRINTF(Resource, "Scheduling Deactivate Thread Resource Pool "
@@ -472,7 +475,7 @@ ResourcePool::ResPoolEvent::process()
break;
case InOrderCPU::DeactivateThread:
- case InOrderCPU::DeallocateThread:
+ case InOrderCPU::HaltThread:
resPool->deactivateAll(tid);
break;