Merge with head, hopefully the last time for this batch.
This commit is contained in:
@@ -47,14 +47,13 @@
|
||||
#include "cpu/quiesce_event.hh"
|
||||
#include "cpu/simple_thread.hh"
|
||||
#include "cpu/thread_context.hh"
|
||||
#include "params/BaseCPU.hh"
|
||||
#include "mem/fs_translating_port_proxy.hh"
|
||||
#include "mem/se_translating_port_proxy.hh"
|
||||
#include "params/BaseCPU.hh"
|
||||
#include "sim/full_system.hh"
|
||||
#include "sim/process.hh"
|
||||
#include "sim/serialize.hh"
|
||||
#include "sim/sim_exit.hh"
|
||||
#include "sim/process.hh"
|
||||
#include "sim/system.hh"
|
||||
|
||||
using namespace std;
|
||||
@@ -62,8 +61,7 @@ using namespace std;
|
||||
// constructor
|
||||
SimpleThread::SimpleThread(BaseCPU *_cpu, int _thread_num, Process *_process,
|
||||
TheISA::TLB *_itb, TheISA::TLB *_dtb)
|
||||
: ThreadState(_cpu, _thread_num, _process),
|
||||
cpu(_cpu), itb(_itb), dtb(_dtb)
|
||||
: ThreadState(_cpu, _thread_num, _process), itb(_itb), dtb(_dtb)
|
||||
{
|
||||
clearArchRegs();
|
||||
tc = new ProxyThreadContext<SimpleThread>(this);
|
||||
@@ -71,9 +69,7 @@ SimpleThread::SimpleThread(BaseCPU *_cpu, int _thread_num, Process *_process,
|
||||
SimpleThread::SimpleThread(BaseCPU *_cpu, int _thread_num, System *_sys,
|
||||
TheISA::TLB *_itb, TheISA::TLB *_dtb,
|
||||
bool use_kernel_stats)
|
||||
: ThreadState(_cpu, _thread_num, NULL),
|
||||
cpu(_cpu), system(_sys), itb(_itb), dtb(_dtb)
|
||||
|
||||
: ThreadState(_cpu, _thread_num, NULL), system(_sys), itb(_itb), dtb(_dtb)
|
||||
{
|
||||
tc = new ProxyThreadContext<SimpleThread>(this);
|
||||
|
||||
@@ -81,7 +77,7 @@ SimpleThread::SimpleThread(BaseCPU *_cpu, int _thread_num, System *_sys,
|
||||
|
||||
clearArchRegs();
|
||||
|
||||
if (cpu->params()->profile) {
|
||||
if (baseCpu->params()->profile) {
|
||||
profile = new FunctionProfile(system->kernelSymtab);
|
||||
Callback *cb =
|
||||
new MakeCallback<SimpleThread,
|
||||
@@ -183,7 +179,7 @@ SimpleThread::serialize(ostream &os)
|
||||
//
|
||||
// Now must serialize all the ISA dependent state
|
||||
//
|
||||
isa.serialize(cpu, os);
|
||||
isa.serialize(baseCpu, os);
|
||||
}
|
||||
|
||||
|
||||
@@ -199,13 +195,14 @@ SimpleThread::unserialize(Checkpoint *cp, const std::string §ion)
|
||||
//
|
||||
// Now must unserialize all the ISA dependent state
|
||||
//
|
||||
isa.unserialize(cpu, cp, section);
|
||||
isa.unserialize(baseCpu, cp, section);
|
||||
}
|
||||
|
||||
void
|
||||
SimpleThread::dumpFuncProfile()
|
||||
{
|
||||
std::ostream *os = simout.create(csprintf("profile.%s.dat", cpu->name()));
|
||||
std::ostream *os = simout.create(csprintf("profile.%s.dat",
|
||||
baseCpu->name()));
|
||||
profile->dump(tc, *os);
|
||||
}
|
||||
|
||||
@@ -225,7 +222,7 @@ SimpleThread::activate(int delay)
|
||||
_status = ThreadContext::Active;
|
||||
|
||||
// status() == Suspended
|
||||
cpu->activateContext(_threadId, delay);
|
||||
baseCpu->activateContext(_threadId, delay);
|
||||
}
|
||||
|
||||
void
|
||||
@@ -237,7 +234,7 @@ SimpleThread::suspend()
|
||||
lastActivate = curTick();
|
||||
lastSuspend = curTick();
|
||||
_status = ThreadContext::Suspended;
|
||||
cpu->suspendContext(_threadId);
|
||||
baseCpu->suspendContext(_threadId);
|
||||
}
|
||||
|
||||
|
||||
@@ -248,7 +245,7 @@ SimpleThread::halt()
|
||||
return;
|
||||
|
||||
_status = ThreadContext::Halted;
|
||||
cpu->haltContext(_threadId);
|
||||
baseCpu->haltContext(_threadId);
|
||||
}
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user