Fix statistics missing some additions.

This commit is contained in:
Wilson Snyder 2024-03-01 20:27:57 -05:00
parent e60f652a64
commit af51107587
3 changed files with 8 additions and 9 deletions

View File

@ -37,8 +37,7 @@ class StatsReport final {
std::ofstream& os; ///< Output stream
static StatColl s_allStats; ///< All statistics
void sumit() {
os << '\n';
static void sumit() {
// If sumit is set on a statistic, combine with others of same name
std::multimap<std::string, V3Statistic*> byName;
// * is always first
@ -53,9 +52,10 @@ class StatsReport final {
V3Statistic* repp = itr.second;
if (lastp && lastp->sumit() && lastp->printit() && lastp->name() == repp->name()
&& lastp->stage() == repp->stage()) {
repp->combineWith(lastp);
lastp->combineWith(repp);
} else {
lastp = repp;
}
lastp = repp;
}
}
@ -73,7 +73,7 @@ class StatsReport final {
}
// Print organized by stage
os << "Global Statistics:\n\n";
os << "\nGlobal Statistics:\n\n";
for (const auto& itr : byName) {
const V3Statistic* repp = itr.second;
if (repp->perf()) continue;
@ -81,10 +81,9 @@ class StatsReport final {
repp->dump(os);
os << '\n';
}
os << '\n';
// Print organized by stage
os << "Performance Statistics:\n\n";
os << "\nPerformance Statistics:\n\n";
for (const auto& itr : byName) {
const V3Statistic* repp = itr.second;
if (!repp->perf()) continue;

View File

@ -20,7 +20,7 @@ execute(
);
if ($Self->{vlt}) {
file_grep($Self->{stats}, qr/Optimizations, Const bit op reduction\s+(\d+)/i, 40);
file_grep($Self->{stats}, qr/Optimizations, Const bit op reduction\s+(\d+)/i, 42);
}
ok(1);
1;

View File

@ -21,7 +21,7 @@ execute(
);
if ($Self->{vlt}) {
file_grep($Self->{stats}, qr/Optimizations, Const bit op reduction\s+(\d+)/i, 35);
file_grep($Self->{stats}, qr/Optimizations, Const bit op reduction\s+(\d+)/i, 37);
}
ok(1);
1;