Skip to content

Commit 1365ce2

Browse files
[llvm-profdata] Clean up traverseAllValueSites (NFC) (#95467)
If NV == 0, nothing interesting happens after the "if" statement. We should just "continue" to the next value site. While I am at it, this patch migrates a use of getValueForSite to getValueArrayForSite.
1 parent 93181db commit 1365ce2

File tree

1 file changed

+15
-15
lines changed

1 file changed

+15
-15
lines changed

llvm/tools/llvm-profdata/llvm-profdata.cpp

Lines changed: 15 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -2695,30 +2695,30 @@ static void traverseAllValueSites(const InstrProfRecord &Func, uint32_t VK,
26952695
uint32_t NS = Func.getNumValueSites(VK);
26962696
Stats.TotalNumValueSites += NS;
26972697
for (size_t I = 0; I < NS; ++I) {
2698-
uint32_t NV = Func.getNumValueDataForSite(VK, I);
2699-
std::unique_ptr<InstrProfValueData[]> VD = Func.getValueForSite(VK, I);
2698+
auto VD = Func.getValueArrayForSite(VK, I);
2699+
uint32_t NV = VD.size();
2700+
if (NV == 0)
2701+
continue;
27002702
Stats.TotalNumValues += NV;
2701-
if (NV) {
2702-
Stats.TotalNumValueSitesWithValueProfile++;
2703-
if (NV > Stats.ValueSitesHistogram.size())
2704-
Stats.ValueSitesHistogram.resize(NV, 0);
2705-
Stats.ValueSitesHistogram[NV - 1]++;
2706-
}
2703+
Stats.TotalNumValueSitesWithValueProfile++;
2704+
if (NV > Stats.ValueSitesHistogram.size())
2705+
Stats.ValueSitesHistogram.resize(NV, 0);
2706+
Stats.ValueSitesHistogram[NV - 1]++;
27072707

27082708
uint64_t SiteSum = 0;
2709-
for (uint32_t V = 0; V < NV; V++)
2710-
SiteSum += VD[V].Count;
2709+
for (const auto &V : VD)
2710+
SiteSum += V.Count;
27112711
if (SiteSum == 0)
27122712
SiteSum = 1;
27132713

2714-
for (uint32_t V = 0; V < NV; V++) {
2714+
for (const auto &V : VD) {
27152715
OS << "\t[ " << format("%2u", I) << ", ";
27162716
if (Symtab == nullptr)
2717-
OS << format("%4" PRIu64, VD[V].Value);
2717+
OS << format("%4" PRIu64, V.Value);
27182718
else
2719-
OS << Symtab->getFuncOrVarName(VD[V].Value);
2720-
OS << ", " << format("%10" PRId64, VD[V].Count) << " ] ("
2721-
<< format("%.2f%%", (VD[V].Count * 100.0 / SiteSum)) << ")\n";
2719+
OS << Symtab->getFuncOrVarName(V.Value);
2720+
OS << ", " << format("%10" PRId64, V.Count) << " ] ("
2721+
<< format("%.2f%%", (V.Count * 100.0 / SiteSum)) << ")\n";
27222722
}
27232723
}
27242724
}

0 commit comments

Comments
 (0)