ikudrin added a comment.

In http://reviews.llvm.org/D20287#431055, @davidxl wrote:

> On the other hand, I wonder what is the real root cause of the problem.  The 
> dummy function record does not have its 'own' profile counts, so
>
>   if (std::error_code EC = ProfileReader.getFunctionCounts(
>               Record.FunctionName, Record.FunctionHash, Counts)) {
>
>
> call in CoverageMapping::load (..)
>
> method should return the the counts of the used  function even with zero 
> functionhash.  What did I miss?


There are no problems in ProfileReader, because only real functions have their 
profile counts. The problem is in 
`VersionedCovMapFuncRecordReader::readFunctionRecords(...)`, which has 
difficulties in distinguishing real and dummy coverage mapping records, so that 
it might load improper ones in some cases.


http://reviews.llvm.org/D20287



_______________________________________________
cfe-commits mailing list
cfe-commits@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to