diff options
3 files changed, 10 insertions, 10 deletions
diff --git a/llvm/include/llvm/ProfileData/Coverage/CoverageMappingReader.h b/llvm/include/llvm/ProfileData/Coverage/CoverageMappingReader.h index db907f128d9..daa16d35c37 100644 --- a/llvm/include/llvm/ProfileData/Coverage/CoverageMappingReader.h +++ b/llvm/include/llvm/ProfileData/Coverage/CoverageMappingReader.h @@ -181,8 +181,7 @@ private: public: static Expected<std::unique_ptr<BinaryCoverageReader>> - create(std::unique_ptr<MemoryBuffer> &ObjectBuffer, - StringRef Arch); + create(MemoryBuffer &ObjectBuffer, StringRef Arch); Error readNextRecord(CoverageMappingRecord &Record) override; }; diff --git a/llvm/lib/ProfileData/Coverage/CoverageMapping.cpp b/llvm/lib/ProfileData/Coverage/CoverageMapping.cpp index 2d833204c91..ac3fe4635fb 100644 --- a/llvm/lib/ProfileData/Coverage/CoverageMapping.cpp +++ b/llvm/lib/ProfileData/Coverage/CoverageMapping.cpp @@ -236,11 +236,13 @@ CoverageMapping::load(CoverageMappingReader &CoverageReader, Expected<std::unique_ptr<CoverageMapping>> CoverageMapping::load(StringRef ObjectFilename, StringRef ProfileFilename, StringRef Arch) { - auto CounterMappingBuff = MemoryBuffer::getFileOrSTDIN(ObjectFilename); - if (std::error_code EC = CounterMappingBuff.getError()) + auto CounterMappingBufOrErr = MemoryBuffer::getFileOrSTDIN(ObjectFilename); + if (std::error_code EC = CounterMappingBufOrErr.getError()) return errorCodeToError(EC); + std::unique_ptr<MemoryBuffer> ObjectBuffer = + std::move(CounterMappingBufOrErr.get()); auto CoverageReaderOrErr = - BinaryCoverageReader::create(CounterMappingBuff.get(), Arch); + BinaryCoverageReader::create(*ObjectBuffer.get(), Arch); if (Error E = CoverageReaderOrErr.takeError()) return std::move(E); auto CoverageReader = std::move(CoverageReaderOrErr.get()); diff --git a/llvm/lib/ProfileData/Coverage/CoverageMappingReader.cpp b/llvm/lib/ProfileData/Coverage/CoverageMappingReader.cpp index 1a4b4f59084..1230054267f 100644 --- a/llvm/lib/ProfileData/Coverage/CoverageMappingReader.cpp +++ b/llvm/lib/ProfileData/Coverage/CoverageMappingReader.cpp @@ -641,8 +641,7 @@ static Error loadBinaryFormat(MemoryBufferRef ObjectBuffer, } Expected<std::unique_ptr<BinaryCoverageReader>> -BinaryCoverageReader::create(std::unique_ptr<MemoryBuffer> &ObjectBuffer, - StringRef Arch) { +BinaryCoverageReader::create(MemoryBuffer &ObjectBuffer, StringRef Arch) { std::unique_ptr<BinaryCoverageReader> Reader(new BinaryCoverageReader()); StringRef Coverage; @@ -650,12 +649,12 @@ BinaryCoverageReader::create(std::unique_ptr<MemoryBuffer> &ObjectBuffer, support::endianness Endian; Error E; consumeError(std::move(E)); - if (ObjectBuffer->getBuffer().startswith(TestingFormatMagic)) + if (ObjectBuffer.getBuffer().startswith(TestingFormatMagic)) // This is a special format used for testing. - E = loadTestingFormat(ObjectBuffer->getBuffer(), Reader->ProfileNames, + E = loadTestingFormat(ObjectBuffer.getBuffer(), Reader->ProfileNames, Coverage, BytesInAddress, Endian); else - E = loadBinaryFormat(ObjectBuffer->getMemBufferRef(), Reader->ProfileNames, + E = loadBinaryFormat(ObjectBuffer.getMemBufferRef(), Reader->ProfileNames, Coverage, BytesInAddress, Endian, Arch); if (E) return std::move(E); |