llvm-project/llvm/lib/ProfileData
Wenlei He a45d72e024 [CSSPGO] Add switch for sample loader to honor global pre-inliner decision from llvm-profgen
The change adds a switch to allow sample loader to use global pre-inliner's decision instead. The pre-inliner in llvm-profgen makes inline decision globally based on whole program profile and function byte size as cost proxy.

Since pre-inliner also adjusts/merges context profile based on its inline decision, honoring its inline decision in sample loader would lead to better post-inline profile quality especially for thinlto where cross module profile merging isn't possible without pre-inliner.

Minor fix in profile reader is also included. When pre-inliner is use, we now also turn off the default merging and trimming logic unless it's explicitly asked.

Differential Revision: https://reviews.llvm.org/D108677
2021-08-25 17:20:15 -07:00
..
Coverage PR51018: Remove explicit conversions from SmallString to StringRef to future-proof against C++23 2021-07-08 13:37:57 -07:00
CMakeLists.txt Revert "[SampleFDO][NFC] Refactor SampleProfile.cpp" 2021-02-16 22:11:42 +00:00
GCOV.cpp [llvm-cov gcov] Support GCC 12 format 2021-06-19 22:51:20 -07:00
InstrProf.cpp [CSPGO] Fix lost IRPGOFlag in CSPGO instrumentation 2021-08-24 09:41:29 -07:00
InstrProfReader.cpp [profile] Fix profile merging with binary IDs 2021-07-30 18:54:27 -07:00
InstrProfWriter.cpp [llvm-profdata] Emit Error when Invalid MemOpSize Section is Created by llvm-profdata 2021-02-23 12:51:54 -08:00
ProfileSummaryBuilder.cpp [CSSPGO] Report zero-count probe in profile instead of dangling probes. 2021-06-16 11:45:29 -07:00
SampleProf.cpp [SamplePGO][NFC] Dump function profiles in order 2021-08-16 17:22:30 -07:00
SampleProfReader.cpp [CSSPGO] Add switch for sample loader to honor global pre-inliner decision from llvm-profgen 2021-08-25 17:20:15 -07:00
SampleProfWriter.cpp [SamplePGO][NFC] Dump function profiles in order 2021-08-16 17:22:30 -07:00