/// \brief Reader for the coverage mapping data that is emitted by the
/// frontend and stored in an object file.
-class ObjectFileCoverageMappingReader : public CoverageMappingReader {
+class BinaryCoverageReader : public CoverageMappingReader {
public:
struct ProfileMappingRecord {
CoverageMappingVersion Version;
std::vector<CounterExpression> Expressions;
std::vector<CounterMappingRegion> MappingRegions;
- ObjectFileCoverageMappingReader(const ObjectFileCoverageMappingReader &)
- = delete;
- ObjectFileCoverageMappingReader &
- operator=(const ObjectFileCoverageMappingReader &) = delete;
+ BinaryCoverageReader(const BinaryCoverageReader &) = delete;
+ BinaryCoverageReader &operator=(const BinaryCoverageReader &) = delete;
/// \brief Set the current error_code and return same.
std::error_code error(std::error_code EC) {
std::error_code success() { return error(instrprof_error::success); }
public:
- ObjectFileCoverageMappingReader(std::unique_ptr<MemoryBuffer> &ObjectBuffer);
+ BinaryCoverageReader(std::unique_ptr<MemoryBuffer> &ObjectBuffer);
std::error_code readHeader();
std::error_code readNextRecord(CoverageMappingRecord &Record) override;
auto CounterMappingBuff = MemoryBuffer::getFileOrSTDIN(ObjectFilename);
if (auto EC = CounterMappingBuff.getError())
return EC;
- ObjectFileCoverageMappingReader CoverageReader(CounterMappingBuff.get());
+ BinaryCoverageReader CoverageReader(CounterMappingBuff.get());
if (auto EC = CoverageReader.readHeader())
return EC;
auto ProfileReaderOrErr = IndexedInstrProfReader::create(ProfileFilename);
template <typename T>
std::error_code readCoverageMappingData(
SectionData &ProfileNames, StringRef Data,
- std::vector<ObjectFileCoverageMappingReader::ProfileMappingRecord> &Records,
+ std::vector<BinaryCoverageReader::ProfileMappingRecord> &Records,
std::vector<StringRef> &Filenames) {
llvm::DenseSet<T> UniqueFunctionMappingData;
ProfileNames.get(MappingRecord.FunctionNamePtr,
MappingRecord.FunctionNameSize, FunctionName))
return Err;
- Records.push_back(ObjectFileCoverageMappingReader::ProfileMappingRecord(
+ Records.push_back(BinaryCoverageReader::ProfileMappingRecord(
Version, FunctionName, MappingRecord.FunctionHash, Mapping,
FilenamesBegin, Filenames.size() - FilenamesBegin));
}
return instrprof_error::success;
}
-ObjectFileCoverageMappingReader::ObjectFileCoverageMappingReader(
+BinaryCoverageReader::BinaryCoverageReader(
std::unique_ptr<MemoryBuffer> &ObjectBuffer)
: CurrentRecord(0) {
if (ObjectBuffer->getBuffer().startswith(TestingFormatMagic)) {
std::move(ObjectBuffer));
}
-std::error_code ObjectFileCoverageMappingReader::readHeader() {
+std::error_code BinaryCoverageReader::readHeader() {
const ObjectFile *OF = Object.getBinary();
if (!OF)
return getError();
}
std::error_code
-ObjectFileCoverageMappingReader::readNextRecord(CoverageMappingRecord &Record) {
+BinaryCoverageReader::readNextRecord(CoverageMappingRecord &Record) {
if (CurrentRecord >= MappingRecords.size())
return error(instrprof_error::eof);