1a2e73fbffdb76a682c141dca6048f6ce4ad8d8c
[oota-llvm.git] / test / tools / llvm-profdata / count-mismatch.proftext
1 # Make sure we don't try to combine counters with the same function
2 # name and a matching hash if the number of counters differs
3
4 # RUN: llvm-profdata merge %s -o %t.profdata 2>&1 | FileCheck -check-prefix=MERGE_ERRS %s
5 # RUN: llvm-profdata show %t.profdata -all-functions -counts > %t.out
6 # RUN: FileCheck %s -input-file %t.out
7 foo
8 1024
9 4
10 1
11 2
12 4
13 8
14
15 # The hash matches, but we can't combine these because the number of
16 # counters differs.
17 # MERGE_ERRS: count-mismatch.proftext: foo: Function count mismatch
18 foo
19 1024
20 3
21 2
22 4
23 8
24
25 # This one does match, so it should combine with the first just fine.
26 # CHECK: Hash: 0x{{0+}}400
27 # CHECK-NEXT: Counters: 4
28 # CHECK-NEXT: Function count: 5
29 # CHECK-NEXT: Block counts: [10, 20, 40]
30 foo
31 1024
32 4
33 4
34 8
35 16
36 32
37
38 # CHECK: Total functions: 1
39 # CHECK: Maximum function count: 5
40 # CHECK: Maximum internal block count: 40