diff options
Diffstat (limited to 'test/tools/llvm-profdata/count-mismatch.proftext')
-rw-r--r-- | test/tools/llvm-profdata/count-mismatch.proftext | 40 |
1 files changed, 40 insertions, 0 deletions
diff --git a/test/tools/llvm-profdata/count-mismatch.proftext b/test/tools/llvm-profdata/count-mismatch.proftext new file mode 100644 index 0000000..1a2e73f --- /dev/null +++ b/test/tools/llvm-profdata/count-mismatch.proftext @@ -0,0 +1,40 @@ +# Make sure we don't try to combine counters with the same function +# name and a matching hash if the number of counters differs + +# RUN: llvm-profdata merge %s -o %t.profdata 2>&1 | FileCheck -check-prefix=MERGE_ERRS %s +# RUN: llvm-profdata show %t.profdata -all-functions -counts > %t.out +# RUN: FileCheck %s -input-file %t.out +foo +1024 +4 +1 +2 +4 +8 + +# The hash matches, but we can't combine these because the number of +# counters differs. +# MERGE_ERRS: count-mismatch.proftext: foo: Function count mismatch +foo +1024 +3 +2 +4 +8 + +# This one does match, so it should combine with the first just fine. +# CHECK: Hash: 0x{{0+}}400 +# CHECK-NEXT: Counters: 4 +# CHECK-NEXT: Function count: 5 +# CHECK-NEXT: Block counts: [10, 20, 40] +foo +1024 +4 +4 +8 +16 +32 + +# CHECK: Total functions: 1 +# CHECK: Maximum function count: 5 +# CHECK: Maximum internal block count: 40 |