diff options
| author | George Rimar <grimar@accesssoftek.com> | 2017-01-17 13:20:17 +0000 |
|---|---|---|
| committer | George Rimar <grimar@accesssoftek.com> | 2017-01-17 13:20:17 +0000 |
| commit | e29a32e9ce43d17cf65116f515fe48ccc1140dcb (patch) | |
| tree | 966bb57c4c76184e813aa4fa508a4d2d41a3ec83 /llvm/lib/ProfileData | |
| parent | e1ff0cf2eb7bcd1658731866915e89da4a78ed3d (diff) | |
| download | bcm5719-llvm-e29a32e9ce43d17cf65116f515fe48ccc1140dcb.tar.gz bcm5719-llvm-e29a32e9ce43d17cf65116f515fe48ccc1140dcb.zip | |
[Support/Compression] - Change zlib API to return Error instead of custom status.
Previously API returned custom enum values.
Patch changes it to return Error with string description.
That should help users to report errors in universal way.
Differential revision: https://reviews.llvm.org/D28684
llvm-svn: 292214
Diffstat (limited to 'llvm/lib/ProfileData')
| -rw-r--r-- | llvm/lib/ProfileData/InstrProf.cpp | 17 |
1 files changed, 10 insertions, 7 deletions
diff --git a/llvm/lib/ProfileData/InstrProf.cpp b/llvm/lib/ProfileData/InstrProf.cpp index 74acd9e5e20..eb676602632 100644 --- a/llvm/lib/ProfileData/InstrProf.cpp +++ b/llvm/lib/ProfileData/InstrProf.cpp @@ -271,12 +271,12 @@ Error collectPGOFuncNameStrings(const std::vector<std::string> &NameStrs, } SmallString<128> CompressedNameStrings; - zlib::Status Success = - zlib::compress(StringRef(UncompressedNameStrings), CompressedNameStrings, - zlib::BestSizeCompression); - - if (Success != zlib::StatusOK) + Error E = zlib::compress(StringRef(UncompressedNameStrings), + CompressedNameStrings, zlib::BestSizeCompression); + if (E) { + consumeError(std::move(E)); return make_error<InstrProfError>(instrprof_error::compress_failed); + } return WriteStringToResult(CompressedNameStrings.size(), CompressedNameStrings); @@ -315,9 +315,12 @@ Error readPGOFuncNameStrings(StringRef NameStrings, InstrProfSymtab &Symtab) { if (isCompressed) { StringRef CompressedNameStrings(reinterpret_cast<const char *>(P), CompressedSize); - if (zlib::uncompress(CompressedNameStrings, UncompressedNameStrings, - UncompressedSize) != zlib::StatusOK) + if (Error E = + zlib::uncompress(CompressedNameStrings, UncompressedNameStrings, + UncompressedSize)) { + consumeError(std::move(E)); return make_error<InstrProfError>(instrprof_error::uncompress_failed); + } P += CompressedSize; NameStrings = StringRef(UncompressedNameStrings.data(), UncompressedNameStrings.size()); |

