diff --git a/src/cpu/simple/base.cc b/src/cpu/simple/base.cc index 945c40b793..02758ac043 100644 --- a/src/cpu/simple/base.cc +++ b/src/cpu/simple/base.cc @@ -94,8 +94,8 @@ BaseSimpleCPU::BaseSimpleCPU(BaseSimpleCPUParams *p) if (FullSystem) thread = new SimpleThread(this, 0, p->system, p->itb, p->dtb); else - thread = new SimpleThread(this, /* thread_num */ 0, p->workload[0], - p->itb, p->dtb); + thread = new SimpleThread(this, /* thread_num */ 0, p->system, + p->workload[0], p->itb, p->dtb); thread->setStatus(ThreadContext::Halted); diff --git a/src/cpu/simple_thread.cc b/src/cpu/simple_thread.cc index e193b12732..1781c28500 100644 --- a/src/cpu/simple_thread.cc +++ b/src/cpu/simple_thread.cc @@ -59,9 +59,11 @@ using namespace std; // constructor -SimpleThread::SimpleThread(BaseCPU *_cpu, int _thread_num, Process *_process, - TheISA::TLB *_itb, TheISA::TLB *_dtb) - : ThreadState(_cpu, _thread_num, _process), itb(_itb), dtb(_dtb) +SimpleThread::SimpleThread(BaseCPU *_cpu, int _thread_num, System *_sys, + Process *_process, TheISA::TLB *_itb, + TheISA::TLB *_dtb) + : ThreadState(_cpu, _thread_num, _process), system(_sys), itb(_itb), + dtb(_dtb) { clearArchRegs(); tc = new ProxyThreadContext(this); diff --git a/src/cpu/simple_thread.hh b/src/cpu/simple_thread.hh index 39cb96c3ab..b6dc8f0475 100644 --- a/src/cpu/simple_thread.hh +++ b/src/cpu/simple_thread.hh @@ -137,8 +137,8 @@ class SimpleThread : public ThreadState TheISA::TLB *_itb, TheISA::TLB *_dtb, bool use_kernel_stats = true); // SE - SimpleThread(BaseCPU *_cpu, int _thread_num, Process *_process, - TheISA::TLB *_itb, TheISA::TLB *_dtb); + SimpleThread(BaseCPU *_cpu, int _thread_num, System *_system, + Process *_process, TheISA::TLB *_itb, TheISA::TLB *_dtb); SimpleThread();