[PATCH] CoverageMapping: Reader - update for the modified profile data format by add function's hash to coverage function records.
Alex Lorenz
arphaman at gmail.com
Thu Aug 21 12:32:55 PDT 2014
Closed by commit rL216207 (authored by @arphaman).
REPOSITORY
rL LLVM
http://reviews.llvm.org/D4994
Files:
llvm/trunk/include/llvm/ProfileData/CoverageMappingReader.h
llvm/trunk/lib/ProfileData/CoverageMappingReader.cpp
Index: llvm/trunk/include/llvm/ProfileData/CoverageMappingReader.h
===================================================================
--- llvm/trunk/include/llvm/ProfileData/CoverageMappingReader.h
+++ llvm/trunk/include/llvm/ProfileData/CoverageMappingReader.h
@@ -33,6 +33,7 @@
/// \brief Coverage mapping information for a single function.
struct CoverageMappingRecord {
StringRef FunctionName;
+ uint64_t FunctionHash;
ArrayRef<StringRef> Filenames;
ArrayRef<CounterExpression> Expressions;
ArrayRef<CounterMappingRegion> MappingRegions;
@@ -143,16 +144,17 @@
struct ProfileMappingRecord {
CoverageMappingVersion Version;
StringRef FunctionName;
+ uint64_t FunctionHash;
StringRef CoverageMapping;
size_t FilenamesBegin;
size_t FilenamesSize;
ProfileMappingRecord(CoverageMappingVersion Version, StringRef FunctionName,
- StringRef CoverageMapping, size_t FilenamesBegin,
- size_t FilenamesSize)
+ uint64_t FunctionHash, StringRef CoverageMapping,
+ size_t FilenamesBegin, size_t FilenamesSize)
: Version(Version), FunctionName(FunctionName),
- CoverageMapping(CoverageMapping), FilenamesBegin(FilenamesBegin),
- FilenamesSize(FilenamesSize) {}
+ FunctionHash(FunctionHash), CoverageMapping(CoverageMapping),
+ FilenamesBegin(FilenamesBegin), FilenamesSize(FilenamesSize) {}
};
private:
Index: llvm/trunk/lib/ProfileData/CoverageMappingReader.cpp
===================================================================
--- llvm/trunk/lib/ProfileData/CoverageMappingReader.cpp
+++ llvm/trunk/lib/ProfileData/CoverageMappingReader.cpp
@@ -308,6 +308,7 @@
IntPtrT FunctionNamePtr;
uint32_t FunctionNameSize;
uint32_t CoverageMappingSize;
+ uint64_t FunctionHash;
};
/// \brief The coverage mapping data for a single translation unit.
@@ -422,8 +423,8 @@
FunctionName))
return Err;
Records.push_back(ObjectFileCoverageMappingReader::ProfileMappingRecord(
- Version, FunctionName, Mapping, FilenamesBegin,
- Filenames.size() - FilenamesBegin));
+ Version, FunctionName, MappingRecord.FunctionHash, Mapping,
+ FilenamesBegin, Filenames.size() - FilenamesBegin));
}
}
@@ -485,6 +486,7 @@
FunctionsFilenames, Expressions, MappingRegions);
if (auto Err = Reader.read(Record))
return Err;
+ Record.FunctionHash = R.FunctionHash;
++CurrentRecord;
return success();
}
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D4994.12795.patch
Type: text/x-patch
Size: 2599 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20140821/cc2c70b1/attachment.bin>
More information about the llvm-commits
mailing list