SE/FS: Make getProcessPtr available in both modes, and get rid of FULL_SYSTEMs.

This commit is contained in:
Gabe Black
2011-10-30 00:33:02 -07:00
parent 5b433568f0
commit facb40f3ff
18 changed files with 118 additions and 295 deletions

View File

@@ -96,9 +96,8 @@ class CheckerThreadContext : public ThreadContext
TheISA::Kernel::Statistics *getKernelStats()
{ return actualTC->getKernelStats(); }
#else
Process *getProcessPtr() { return actualTC->getProcessPtr(); }
#endif
Process *getProcessPtr() { return actualTC->getProcessPtr(); }
TranslatingPort *getMemPort() { return actualTC->getMemPort(); }

View File

@@ -85,11 +85,7 @@ InOrderThreadContext::takeOverFrom(ThreadContext *old_context)
{
// some things should already be set up
assert(getSystemPtr() == old_context->getSystemPtr());
#if !FULL_SYSTEM
assert(getProcessPtr() == old_context->getProcessPtr());
#endif
// copy over functional state
setStatus(old_context->status());

View File

@@ -142,10 +142,9 @@ class InOrderThreadContext : public ThreadContext
{
return this->thread->quiesceEvent;
}
#else
#endif
/** Returns a pointer to this thread's process. */
Process *getProcessPtr() { return thread->getProcessPtr(); }
#endif
TranslatingPort *getMemPort() { return thread->getMemPort(); }

View File

@@ -98,10 +98,9 @@ class O3ThreadContext : public ThreadContext
{ return thread->kernelStats; }
virtual void connectMemPorts(ThreadContext *tc) { thread->connectMemPorts(tc); }
#else
#endif
/** Returns a pointer to this thread's process. */
virtual Process *getProcessPtr() { return thread->getProcessPtr(); }
#endif
virtual TranslatingPort *getMemPort() { return thread->getMemPort(); }

View File

@@ -70,9 +70,8 @@ O3ThreadContext<Impl>::takeOverFrom(ThreadContext *old_context)
// some things should already be set up
#if FULL_SYSTEM
assert(getSystemPtr() == old_context->getSystemPtr());
#else
assert(getProcessPtr() == old_context->getProcessPtr());
#endif
assert(getProcessPtr() == old_context->getProcessPtr());
// copy over functional state
setStatus(old_context->status());

View File

@@ -123,9 +123,8 @@ class OzoneCPU : public BaseCPU
TheISA::Kernel::Statistics *getKernelStats()
{ return thread->getKernelStats(); }
#else
Process *getProcessPtr() { return thread->getProcessPtr(); }
#endif
Process *getProcessPtr() { return thread->getProcessPtr(); }
TranslatingPort *getMemPort() { return thread->getMemPort(); }

View File

@@ -671,9 +671,8 @@ OzoneCPU<Impl>::OzoneTC::takeOverFrom(ThreadContext *old_context)
// some things should already be set up
#if FULL_SYSTEM
assert(getSystemPtr() == old_context->getSystemPtr());
#else
assert(getProcessPtr() == old_context->getProcessPtr());
#endif
assert(getProcessPtr() == old_context->getProcessPtr());
// copy over functional state
setStatus(old_context->status());

View File

@@ -41,6 +41,7 @@
#include "cpu/thread_context.hh"
#include "mem/vport.hh"
#include "params/BaseCPU.hh"
#include "sim/process.hh"
#if FULL_SYSTEM
#include "arch/kernel_stats.hh"
@@ -55,7 +56,6 @@
#include "sim/sim_exit.hh"
#else
#include "mem/translating_port.hh"
#include "sim/process.hh"
#include "sim/system.hh"
#endif
@@ -123,9 +123,8 @@ SimpleThread::takeOverFrom(ThreadContext *oldContext)
// some things should already be set up
#if FULL_SYSTEM
assert(system == oldContext->getSystemPtr());
#else
assert(process == oldContext->getProcessPtr());
#endif
assert(process == oldContext->getProcessPtr());
copyState(oldContext);
#if FULL_SYSTEM

View File

@@ -129,9 +129,8 @@ class ThreadContext
virtual TheISA::Kernel::Statistics *getKernelStats() = 0;
virtual void connectMemPorts(ThreadContext *tc) = 0;
#else
virtual Process *getProcessPtr() = 0;
#endif
virtual Process *getProcessPtr() = 0;
virtual TranslatingPort *getMemPort() = 0;
@@ -299,9 +298,8 @@ class ProxyThreadContext : public ThreadContext
{ return actualTC->getKernelStats(); }
void connectMemPorts(ThreadContext *tc) { actualTC->connectMemPorts(tc); }
#else
Process *getProcessPtr() { return actualTC->getProcessPtr(); }
#endif
Process *getProcessPtr() { return actualTC->getProcessPtr(); }
TranslatingPort *getMemPort() { return actualTC->getMemPort(); }

View File

@@ -101,9 +101,8 @@ struct ThreadState {
void profileSample();
TheISA::Kernel::Statistics *getKernelStats() { return kernelStats; }
#else
Process *getProcessPtr() { return process; }
#endif
Process *getProcessPtr() { return process; }
TranslatingPort *getMemPort();