From f338d60930e973d330d13715b8617c22b980dcca Mon Sep 17 00:00:00 2001 From: Gabe Black Date: Sun, 9 Oct 2011 00:15:50 -0700 Subject: SE/FS: Build the Interrupt objects in SE mode. --- src/cpu/base.cc | 15 ++++----------- 1 file changed, 4 insertions(+), 11 deletions(-) (limited to 'src/cpu/base.cc') diff --git a/src/cpu/base.cc b/src/cpu/base.cc index 1e25a5982..d5343aa64 100644 --- a/src/cpu/base.cc +++ b/src/cpu/base.cc @@ -100,18 +100,11 @@ CPUProgressEvent::description() const return "CPU Progress"; } -#if FULL_SYSTEM BaseCPU::BaseCPU(Params *p) : MemObject(p), clock(p->clock), instCnt(0), _cpuId(p->cpu_id), interrupts(p->interrupts), numThreads(p->numThreads), system(p->system), phase(p->phase) -#else -BaseCPU::BaseCPU(Params *p) - : MemObject(p), clock(p->clock), _cpuId(p->cpu_id), - numThreads(p->numThreads), system(p->system), - phase(p->phase) -#endif { // currentTick = curTick(); @@ -202,9 +195,9 @@ BaseCPU::BaseCPU(Params *p) schedule(event, p->function_trace_start); } } -#if FULL_SYSTEM interrupts->setCPU(this); +#if FULL_SYSTEM profileEvent = NULL; if (params()->profile) profileEvent = new ProfileEvent(this, params()->profile); @@ -395,10 +388,10 @@ BaseCPU::takeOverFrom(BaseCPU *oldCPU, Port *ic, Port *dc) } } -#if FULL_SYSTEM interrupts = oldCPU->interrupts; interrupts->setCPU(this); +#if FULL_SYSTEM for (ThreadID i = 0; i < size; ++i) threadContexts[i]->profileClear(); @@ -440,6 +433,8 @@ BaseCPU::ProfileEvent::process() cpu->schedule(this, curTick() + interval); } +#endif // FULL_SYSTEM + void BaseCPU::serialize(std::ostream &os) { @@ -454,8 +449,6 @@ BaseCPU::unserialize(Checkpoint *cp, const std::string §ion) interrupts->unserialize(cp, section); } -#endif // FULL_SYSTEM - void BaseCPU::traceFunctionsInternal(Addr pc) { -- cgit v1.2.3