diff options
author | Vedant Kumar <vsk@apple.com> | 2016-05-13 20:10:22 +0000 |
---|---|---|
committer | Vedant Kumar <vsk@apple.com> | 2016-05-13 20:10:22 +0000 |
commit | 2d87639c5acbd122261574226c570971b54ef61e (patch) | |
tree | 962bedac1fb0e18378448d98b8102c53792ee959 /clang/lib/CodeGen/CodeGenPGO.cpp | |
parent | 064535c1eace2b43f3f628f43551422fb5d054f5 (diff) | |
download | bcm5719-llvm-2d87639c5acbd122261574226c570971b54ef61e.tar.gz bcm5719-llvm-2d87639c5acbd122261574226c570971b54ef61e.zip |
Revert "[ProfileData] (clang) Use Error in InstrProf and Coverage, NFC"
This reverts commit r269463. It fails two llvm-profdata tests.
llvm-svn: 269468
Diffstat (limited to 'clang/lib/CodeGen/CodeGenPGO.cpp')
-rw-r--r-- | clang/lib/CodeGen/CodeGenPGO.cpp | 13 |
1 files changed, 6 insertions, 7 deletions
diff --git a/clang/lib/CodeGen/CodeGenPGO.cpp b/clang/lib/CodeGen/CodeGenPGO.cpp index c19321b5129..43bc37c49f7 100644 --- a/clang/lib/CodeGen/CodeGenPGO.cpp +++ b/clang/lib/CodeGen/CodeGenPGO.cpp @@ -800,21 +800,20 @@ void CodeGenPGO::loadRegionCounts(llvm::IndexedInstrProfReader *PGOReader, bool IsInMainFile) { CGM.getPGOStats().addVisited(IsInMainFile); RegionCounts.clear(); - llvm::Expected<llvm::InstrProfRecord> RecordExpected = + llvm::ErrorOr<llvm::InstrProfRecord> RecordErrorOr = PGOReader->getInstrProfRecord(FuncName, FunctionHash); - if (auto E = RecordExpected.takeError()) { - auto IPE = llvm::InstrProfError::take(std::move(E)); - if (IPE == llvm::instrprof_error::unknown_function) + if (std::error_code EC = RecordErrorOr.getError()) { + if (EC == llvm::instrprof_error::unknown_function) CGM.getPGOStats().addMissing(IsInMainFile); - else if (IPE == llvm::instrprof_error::hash_mismatch) + else if (EC == llvm::instrprof_error::hash_mismatch) CGM.getPGOStats().addMismatched(IsInMainFile); - else if (IPE == llvm::instrprof_error::malformed) + else if (EC == llvm::instrprof_error::malformed) // TODO: Consider a more specific warning for this case. CGM.getPGOStats().addMismatched(IsInMainFile); return; } ProfRecord = - llvm::make_unique<llvm::InstrProfRecord>(std::move(RecordExpected.get())); + llvm::make_unique<llvm::InstrProfRecord>(std::move(RecordErrorOr.get())); RegionCounts = ProfRecord->Counts; } |