Currently the BFI basic block ProfileCount is used when trying to getProfileCount for callsites. There are situations this count information may be inaccurate, for example, when the callsite code region is a result of inlining of a function without profile information to the caller which is profiled. This is to use the function entry count information from the called function when it contains the profile information and its function entry count is zero.
Diff Detail
Diff Detail
Event Timeline
Comment Actions
I assume this is with instrumentation based FDO. Why are there functions without profile?
llvm/lib/Analysis/ProfileSummaryInfo.cpp | ||
---|---|---|
93 | Put this in the else case for the following if(BFI) {} check below. |
Comment Actions
Yes. this is with instrumentation based FDO. This can happen when customers are not profiling all the files of their applications.
Put this in the else case for the following if(BFI) {} check below.