2015-11-13 11:47:58 +08:00
|
|
|
Tests for instrumentation profile bad encoding.
|
|
|
|
|
|
|
|
1- Detect invalid count
|
2014-07-31 07:02:01 +08:00
|
|
|
RUN: not llvm-profdata show %p/Inputs/invalid-count-later.proftext 2>&1 | FileCheck %s --check-prefix=INVALID-COUNT-LATER
|
|
|
|
RUN: not llvm-profdata merge %p/Inputs/invalid-count-later.proftext %p/Inputs/invalid-count-later.profdata -o %t.out 2>&1 | FileCheck %s --check-prefix=INVALID-COUNT-LATER
|
2015-11-13 11:47:58 +08:00
|
|
|
INVALID-COUNT-LATER: error: {{.*}}invalid-count-later.proftext: Malformed instrumentation profile data
|
2014-03-13 06:00:57 +08:00
|
|
|
|
2015-11-13 11:47:58 +08:00
|
|
|
2- Detect bad hash
|
2014-07-31 07:02:01 +08:00
|
|
|
RUN: not llvm-profdata show %p/Inputs/bad-hash.proftext 2>&1 | FileCheck %s --check-prefix=BAD-HASH
|
|
|
|
RUN: not llvm-profdata merge %p/Inputs/bad-hash.proftext %p/Inputs/bad-hash.proftext -o %t.out 2>&1 | FileCheck %s --check-prefix=BAD-HASH
|
2015-11-13 11:47:58 +08:00
|
|
|
BAD-HASH: error: {{.*}}bad-hash.proftext: Malformed instrumentation profile data
|
2014-04-25 10:45:33 +08:00
|
|
|
|
2015-11-13 11:47:58 +08:00
|
|
|
3- Detect no counts
|
2014-07-31 07:02:01 +08:00
|
|
|
RUN: not llvm-profdata show %p/Inputs/no-counts.proftext 2>&1 | FileCheck %s --check-prefix=NO-COUNTS
|
2015-11-13 11:47:58 +08:00
|
|
|
NO-COUNTS: error: {{.*}}no-counts.proftext: Malformed instrumentation profile data
|
|
|
|
|
|
|
|
4- Detect binary input
|
|
|
|
RUN: echo -n $'\xff\xe5\xd0\xb1\xf4\c9\x94\xa8' > %t.bin
|
|
|
|
RUN: not llvm-profdata show %t.bin 2>&1 | FileCheck %s --check-prefix=BINARY
|
|
|
|
BINARY: error: {{.+}}: Unrecognized instrumentation profile encoding format
|
|
|
|
BINARY: Perhaps you forgot to use the -sample option?
|