35 const PcCountTrackerManagerParams &
p)
41 for (
int i = 0 ;
i <
p.targets.size() ;
i++) {
45 counter.insert(std::make_pair(
p.targets[
i].getPC(),0));
50 "total %i PCs in counter\n",
counter.size());
76 "There are %i targets remained\n",
targetPair.size());
82 "all targets are encountered.\n");
std::string to_string() const
String format.
bool ifListNotEmpty
when all the PC Count pairs in the targetPair are encountered, and the PCCOUNTTRACK_END exit event is...
std::unordered_map< Addr, int > counter
a counter that stores all the target PC addresses and the number of times the target PC has been exec...
PcCountTrackerManager(const PcCountTrackerManagerParams ¶ms)
std::unordered_set< PcCountPair, PcCountPair::HashFunction > targetPair
a set that stores all the PC Count pairs that should raise an exit event at
PcCountPair currentPair
the current PC Count pair
std::string printAllTargets() const
this function print all targets
void checkCount(Addr pc)
this function is called when PcCountTrackerProbeListener finds a target PC
Abstract superclass for simulation objects.
Copyright (c) 2024 - Pranith Kumar Copyright (c) 2020 Inria All rights reserved.
uint64_t Addr
Address type This will probably be moved somewhere else in the near future.
void exitSimLoopNow(const std::string &message, int exit_code, Tick repeat, bool serialize)
Schedule an event as above, but make it high priority so it runs before any normal events which are s...