cpu: Make accesses to comInstEventQueue indirect through methods.

This lets us move the event queue itself around, or change how those
services are provided.

Change-Id: Ie36665b353cf9788968f253cf281a854a6eff4f4
Reviewed-on: https://gem5-review.googlesource.com/c/public/gem5/+/22107
Reviewed-by: Andreas Sandberg <andreas.sandberg@arm.com>
Maintainer: Gabe Black <gabeblack@google.com>
Tested-by: kokoro <noreply+kokoro@google.com>
This commit is contained in:
Gabe Black
2019-10-13 22:02:35 -07:00
parent fea2af5b9c
commit c73c19effd
8 changed files with 43 additions and 26 deletions

View File

@@ -1521,7 +1521,7 @@ FullO3CPU<Impl>::instDone(ThreadID tid, const DynInstPtr &inst)
system->totalNumInsts++;
// Check for instruction-count-based events.
comInstEventQueue[tid]->serviceEvents(thread[tid]->numInst);
serviceInstCountEvents(tid, thread[tid]->numInst);
}
thread[tid]->numOp++;
thread[tid]->numOps++;

View File

@@ -109,8 +109,8 @@ ElasticTrace::regProbeListeners()
} else {
// Schedule an event to register all elastic trace probes when
// specified no. of instructions are committed.
cpu->comInstEventQueue[(ThreadID)0]->schedule(&regEtraceListenersEvent,
startTraceInst);
cpu->scheduleInstCountEvent(
0, &regEtraceListenersEvent, startTraceInst);
}
}