================ @@ -1441,6 +1458,22 @@ Error PrintProgramStats::runOnFunctions(BinaryContext &BC) { StaleSampleCount += SampleCount; ++NumAllStaleFunctions; } + + if (opts::ShowDensity) { + uint64_t Size = Function.getSize(); + // In case of BOLT split functions registered in BAT, executed traces are + // automatically attributed to the main fragment. Add up function sizes + // for all fragments. + if (IsHotParentOfBOLTSplitFunction) + for (const BinaryFunction *Fragment : Function.getFragments()) + Size += Fragment->getSize(); + double Density = (double)1.0 * Function.getExecutedBytes() / Size; + FuncDensityList.emplace_back(Density, SampleCount); ---------------- aaupov wrote:
Comments above the variable and the method say it's dynamically executed bytes, but will rename them to avoid confusion. > TotalSamplesInBytes/SampleCountInBytes? What do you mean by that? https://github.com/llvm/llvm-project/pull/101094 _______________________________________________ llvm-branch-commits mailing list llvm-branch-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits