diff --git a/src/arch/arm/fastmodel/iris/thread_context.hh b/src/arch/arm/fastmodel/iris/thread_context.hh index 73470c5b2e..ef52143337 100644 --- a/src/arch/arm/fastmodel/iris/thread_context.hh +++ b/src/arch/arm/fastmodel/iris/thread_context.hh @@ -97,7 +97,6 @@ class ThreadContext : public ::ThreadContext bool remove(PCEvent *e) override { return false; } Tick nextInstEventCount() override { return MaxTick; } - void serviceInstCountEvents(Tick count) override {} void scheduleInstCountEvent(Event *event, Tick count) override {} void descheduleInstCountEvent(Event *event) override {} Tick getCurrentInstCount() override; diff --git a/src/cpu/checker/thread_context.hh b/src/cpu/checker/thread_context.hh index e45de6e6ea..d32e0fa703 100644 --- a/src/cpu/checker/thread_context.hh +++ b/src/cpu/checker/thread_context.hh @@ -98,11 +98,6 @@ class CheckerThreadContext : public ThreadContext return actualTC->nextInstEventCount(); } void - serviceInstCountEvents(Tick count) override - { - actualTC->serviceInstCountEvents(count); - } - void scheduleInstCountEvent(Event *event, Tick count) override { actualTC->scheduleInstCountEvent(event, count); diff --git a/src/cpu/kvm/base.cc b/src/cpu/kvm/base.cc index da3e87ee42..2522eeeb27 100644 --- a/src/cpu/kvm/base.cc +++ b/src/cpu/kvm/base.cc @@ -686,7 +686,7 @@ BaseKvmCPU::tick() // Service any pending instruction events. The vCPU should // have exited in time for the event using the instruction // counter configured by setupInstStop(). - tc->serviceInstCountEvents(ctrInsts); + thread->comInstEventQueue.serviceEvents(ctrInsts); if (tryDrain()) _status = Idle; diff --git a/src/cpu/minor/execute.cc b/src/cpu/minor/execute.cc index 0e83db3cb2..c9970b39a4 100644 --- a/src/cpu/minor/execute.cc +++ b/src/cpu/minor/execute.cc @@ -870,8 +870,7 @@ Execute::doInstCommitAccounting(MinorDynInstPtr inst) cpu.system->totalNumInsts++; /* Act on events related to instruction counts */ - cpu.getContext(inst->id.threadId)-> - serviceInstCountEvents(thread->numInst); + thread->comInstEventQueue.serviceEvents(thread->numInst); } thread->numOp++; thread->numOps++; diff --git a/src/cpu/o3/cpu.cc b/src/cpu/o3/cpu.cc index bb3f0c3015..c843db3a01 100644 --- a/src/cpu/o3/cpu.cc +++ b/src/cpu/o3/cpu.cc @@ -1521,7 +1521,7 @@ FullO3CPU::instDone(ThreadID tid, const DynInstPtr &inst) system->totalNumInsts++; // Check for instruction-count-based events. - thread[tid]->tc->serviceInstCountEvents(thread[tid]->numInst); + thread[tid]->comInstEventQueue.serviceEvents(thread[tid]->numInst); } thread[tid]->numOp++; thread[tid]->numOps++; diff --git a/src/cpu/o3/thread_context.hh b/src/cpu/o3/thread_context.hh index e195935c68..65496429b7 100644 --- a/src/cpu/o3/thread_context.hh +++ b/src/cpu/o3/thread_context.hh @@ -93,11 +93,6 @@ class O3ThreadContext : public ThreadContext MaxTick : thread->comInstEventQueue.nextTick(); } void - serviceInstCountEvents(Tick count) override - { - thread->comInstEventQueue.serviceEvents(count); - } - void scheduleInstCountEvent(Event *event, Tick count) override { thread->comInstEventQueue.schedule(event, count); diff --git a/src/cpu/simple/base.cc b/src/cpu/simple/base.cc index f45165b9eb..3000fae530 100644 --- a/src/cpu/simple/base.cc +++ b/src/cpu/simple/base.cc @@ -500,7 +500,7 @@ BaseSimpleCPU::preExecute() t_info.setMemAccPredicate(true); // check for instruction-count-based events - thread->getTC()->serviceInstCountEvents(t_info.numInst); + thread->comInstEventQueue.serviceEvents(t_info.numInst); // decode the instruction inst = gtoh(inst); diff --git a/src/cpu/simple_thread.hh b/src/cpu/simple_thread.hh index 5ed0f2982a..367eceab3e 100644 --- a/src/cpu/simple_thread.hh +++ b/src/cpu/simple_thread.hh @@ -205,11 +205,6 @@ class SimpleThread : public ThreadState, public ThreadContext MaxTick : comInstEventQueue.nextTick(); } void - serviceInstCountEvents(Tick count) override - { - comInstEventQueue.serviceEvents(count); - } - void scheduleInstCountEvent(Event *event, Tick count) override { comInstEventQueue.schedule(event, count); diff --git a/src/cpu/thread_context.hh b/src/cpu/thread_context.hh index 16310649ce..2e1b572e6a 100644 --- a/src/cpu/thread_context.hh +++ b/src/cpu/thread_context.hh @@ -193,7 +193,6 @@ class ThreadContext : public PCEventScope virtual EndQuiesceEvent *getQuiesceEvent() = 0; virtual Tick nextInstEventCount() = 0; - virtual void serviceInstCountEvents(Tick count) = 0; virtual void scheduleInstCountEvent(Event *event, Tick count) = 0; virtual void descheduleInstCountEvent(Event *event) = 0; virtual Tick getCurrentInstCount() = 0;