diff options
-rw-r--r-- | llvm/lib/ProfileData/InstrProfReader.cpp | 4 | ||||
-rw-r--r-- | llvm/test/tools/llvm-profdata/Inputs/overflow.profdata | 4 | ||||
-rw-r--r-- | llvm/test/tools/llvm-profdata/hash-mismatch.profdata | 17 | ||||
-rw-r--r-- | llvm/test/tools/llvm-profdata/lit.local.cfg | 1 | ||||
-rw-r--r-- | llvm/test/tools/llvm-profdata/multiple-inputs.test (renamed from llvm/test/tools/llvm-profdata/simple.test) | 2 | ||||
-rw-r--r-- | llvm/test/tools/llvm-profdata/overflow.profdata | 12 | ||||
-rw-r--r-- | llvm/test/tools/llvm-profdata/text-format-errors.test (renamed from llvm/test/tools/llvm-profdata/errors.test) | 6 |
7 files changed, 34 insertions, 12 deletions
diff --git a/llvm/lib/ProfileData/InstrProfReader.cpp b/llvm/lib/ProfileData/InstrProfReader.cpp index 0b367282e14..e8f64614df5 100644 --- a/llvm/lib/ProfileData/InstrProfReader.cpp +++ b/llvm/lib/ProfileData/InstrProfReader.cpp @@ -83,8 +83,8 @@ void InstrProfIterator::Increment() { } std::error_code TextInstrProfReader::readNextRecord(InstrProfRecord &Record) { - // Skip empty lines. - while (!Line.is_at_end() && Line->empty()) + // Skip empty lines and comments. + while (!Line.is_at_end() && (Line->empty() || Line->startswith("#"))) ++Line; // If we hit EOF while looking for a name, we're done. if (Line.is_at_end()) diff --git a/llvm/test/tools/llvm-profdata/Inputs/overflow.profdata b/llvm/test/tools/llvm-profdata/Inputs/overflow.profdata deleted file mode 100644 index c9a9d697ecf..00000000000 --- a/llvm/test/tools/llvm-profdata/Inputs/overflow.profdata +++ /dev/null @@ -1,4 +0,0 @@ -overflow -1 -1 -9223372036854775808 diff --git a/llvm/test/tools/llvm-profdata/hash-mismatch.profdata b/llvm/test/tools/llvm-profdata/hash-mismatch.profdata new file mode 100644 index 00000000000..12632588b64 --- /dev/null +++ b/llvm/test/tools/llvm-profdata/hash-mismatch.profdata @@ -0,0 +1,17 @@ +# RUN: llvm-profdata merge %s -o %t.out 2>&1 | FileCheck %s +# CHECK: hash-mismatch.profdata: foo: Function hash mismatch + +foo +3 +3 +1 +2 +3 + +foo +4 +4 +11 +22 +33 +44 diff --git a/llvm/test/tools/llvm-profdata/lit.local.cfg b/llvm/test/tools/llvm-profdata/lit.local.cfg new file mode 100644 index 00000000000..33bc0a9ac58 --- /dev/null +++ b/llvm/test/tools/llvm-profdata/lit.local.cfg @@ -0,0 +1 @@ +config.suffixes.add('.profdata') diff --git a/llvm/test/tools/llvm-profdata/simple.test b/llvm/test/tools/llvm-profdata/multiple-inputs.test index 18741dd2ba8..82d417e2b7b 100644 --- a/llvm/test/tools/llvm-profdata/simple.test +++ b/llvm/test/tools/llvm-profdata/multiple-inputs.test @@ -1,3 +1,5 @@ +Some very basic tests for the multiple input cases. + RUN: llvm-profdata merge %p/Inputs/foo3-1.profdata %p/Inputs/foo3-2.profdata -o %t RUN: llvm-profdata show %t -all-functions -counts | FileCheck %s --check-prefix=FOO3 RUN: llvm-profdata merge %p/Inputs/foo3-2.profdata %p/Inputs/foo3-1.profdata -o %t diff --git a/llvm/test/tools/llvm-profdata/overflow.profdata b/llvm/test/tools/llvm-profdata/overflow.profdata new file mode 100644 index 00000000000..62ced0552ce --- /dev/null +++ b/llvm/test/tools/llvm-profdata/overflow.profdata @@ -0,0 +1,12 @@ +# RUN: llvm-profdata merge %s -o %t.out 2>&1 | FileCheck %s +# CHECK: overflow.profdata: overflow: Counter overflow + +overflow +1 +1 +9223372036854775808 + +overflow +1 +1 +9223372036854775808 diff --git a/llvm/test/tools/llvm-profdata/errors.test b/llvm/test/tools/llvm-profdata/text-format-errors.test index 28262efe063..870001f4816 100644 --- a/llvm/test/tools/llvm-profdata/errors.test +++ b/llvm/test/tools/llvm-profdata/text-format-errors.test @@ -1,9 +1,3 @@ -RUN: llvm-profdata merge %p/Inputs/foo3-1.profdata %p/Inputs/foo4-1.profdata -o %t.out 2>&1 | FileCheck %s --check-prefix=HASH -HASH: foo4-1.profdata: foo: Function hash mismatch - -RUN: llvm-profdata merge %p/Inputs/overflow.profdata %p/Inputs/overflow.profdata -o %t.out 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 -o %t.out 2>&1 | FileCheck %s --check-prefix=INVALID-COUNT-LATER INVALID-COUNT-LATER: error: {{.*}}invalid-count-later.profdata: Malformed profile data |