summaryrefslogtreecommitdiff
path: root/src/cpu/o3/cpu.cc
diff options
context:
space:
mode:
authorMitch Hayenga <mitch.hayenga@arm.com>2014-09-20 17:18:36 -0400
committerMitch Hayenga <mitch.hayenga@arm.com>2014-09-20 17:18:36 -0400
commitcc6523e2d686447f90acccac20c0fb2940dc3e3b (patch)
tree1db59dcca74fcc7f5fbebf76c06831a438c2990a /src/cpu/o3/cpu.cc
parente1403fc2af61c224c573c47c77a36f9b1b78e7df (diff)
downloadgem5-cc6523e2d686447f90acccac20c0fb2940dc3e3b.tar.xz
cpu: Remove unused deallocateContext calls
The call paths for de-scheduling a thread are halt() and suspend(), from the thread context. There is no call to deallocateContext() in general, though some CPUs chose to define it. This patch removes the function from BaseCPU and the cores which do not require it.
Diffstat (limited to 'src/cpu/o3/cpu.cc')
-rw-r--r--src/cpu/o3/cpu.cc16
1 files changed, 5 insertions, 11 deletions
diff --git a/src/cpu/o3/cpu.cc b/src/cpu/o3/cpu.cc
index 2ae185532..7ed3944cf 100644
--- a/src/cpu/o3/cpu.cc
+++ b/src/cpu/o3/cpu.cc
@@ -730,20 +730,12 @@ FullO3CPU<Impl>::activateContext(ThreadID tid)
template <class Impl>
void
-FullO3CPU<Impl>::deallocateContext(ThreadID tid, bool remove)
-{
- deactivateThread(tid);
- if (remove)
- removeThread(tid);
-}
-
-template <class Impl>
-void
FullO3CPU<Impl>::suspendContext(ThreadID tid)
{
DPRINTF(O3CPU,"[tid: %i]: Suspending Thread Context.\n", tid);
assert(!switchedOut());
- deallocateContext(tid, false);
+
+ deactivateThread(tid);
// If this was the last thread then unschedule the tick event.
if (activeThreads.size() == 0)
@@ -761,7 +753,9 @@ FullO3CPU<Impl>::haltContext(ThreadID tid)
//For now, this is the same as deallocate
DPRINTF(O3CPU,"[tid:%i]: Halt Context called. Deallocating", tid);
assert(!switchedOut());
- deallocateContext(tid, true);
+
+ deactivateThread(tid);
+ removeThread(tid);
}
template <class Impl>