diff options
author | Justin Bogner <mail@justinbogner.com> | 2014-03-23 20:55:53 +0000 |
---|---|---|
committer | Justin Bogner <mail@justinbogner.com> | 2014-03-23 20:55:53 +0000 |
commit | f5afb78a9dbb62e69b3c59aeeeb57e1d560d1e23 (patch) | |
tree | 342d6b87fdbe63287f519b6a0e2416f1e8369afa | |
parent | 5ecdfc1004585b7d0a5fa026420de0f9065d73d4 (diff) | |
download | llvm-f5afb78a9dbb62e69b3c59aeeeb57e1d560d1e23.tar.gz llvm-f5afb78a9dbb62e69b3c59aeeeb57e1d560d1e23.tar.bz2 llvm-f5afb78a9dbb62e69b3c59aeeeb57e1d560d1e23.tar.xz |
llvm-profdata: Check for bad data in the show command
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@204573 91177308-0d34-0410-b5e6-96231b3b80d8
-rw-r--r-- | test/tools/llvm-profdata/errors.test | 2 | ||||
-rw-r--r-- | tools/llvm-profdata/llvm-profdata.cpp | 2 |
2 files changed, 4 insertions, 0 deletions
diff --git a/test/tools/llvm-profdata/errors.test b/test/tools/llvm-profdata/errors.test index 487da74b86..6ccb084869 100644 --- a/test/tools/llvm-profdata/errors.test +++ b/test/tools/llvm-profdata/errors.test @@ -4,8 +4,10 @@ HASH: foo4-1.profdata: foo: Function hash mismatch RUN: llvm-profdata merge %p/Inputs/overflow.profdata %p/Inputs/overflow.profdata -o /dev/null 2>&1 | FileCheck %s --check-prefix=OVERFLOW OVERFLOW: overflow.profdata: overflow: Counter overflow +RUN: not llvm-profdata show %p/Inputs/invalid-count-later.profdata 2>&1 | FileCheck %s --check-prefix=INVALID-COUNT-LATER RUN: not llvm-profdata merge %p/Inputs/invalid-count-later.profdata %p/Inputs/invalid-count-later.profdata 2>&1 | FileCheck %s --check-prefix=INVALID-COUNT-LATER INVALID-COUNT-LATER: error: {{.*}}invalid-count-later.profdata: Malformed profile data +RUN: not llvm-profdata show %p/Inputs/bad-hash.profdata 2>&1 | FileCheck %s --check-prefix=BAD-HASH RUN: not llvm-profdata merge %p/Inputs/bad-hash.profdata %p/Inputs/bad-hash.profdata 2>&1 | FileCheck %s --check-prefix=BAD-HASH BAD-HASH: error: {{.*}}bad-hash.profdata: Malformed profile data diff --git a/tools/llvm-profdata/llvm-profdata.cpp b/tools/llvm-profdata/llvm-profdata.cpp index 5a0e27fd6d..397b523969 100644 --- a/tools/llvm-profdata/llvm-profdata.cpp +++ b/tools/llvm-profdata/llvm-profdata.cpp @@ -137,6 +137,8 @@ int show_main(int argc, const char *argv[]) { if (Show && ShowCounts) OS << "]\n"; } + if (Reader->hasError()) + exitWithError(Reader->getError().message(), Filename); if (ShowAllFunctions || !ShowFunction.empty()) OS << "Functions shown: " << ShownFunctions << "\n"; |