1Some very basic tests for the multiple input cases.
2
3RUN: llvm-profdata merge %p/Inputs/foo3-1.proftext %p/Inputs/foo3-2.proftext -o %t
4RUN: llvm-profdata show %t -all-functions -counts | FileCheck %s --check-prefix=FOO3
5RUN: llvm-profdata merge %p/Inputs/foo3-2.proftext %p/Inputs/foo3-1.proftext -o %t
6RUN: llvm-profdata show %t -all-functions -counts | FileCheck %s --check-prefix=FOO3
7FOO3: foo:
8FOO3: Counters: 3
9FOO3: Function count: 8
10FOO3: Block counts: [7, 6]
11FOO3: Total functions: 1
12FOO3: Maximum function count: 8
13FOO3: Maximum internal block count: 7
14
15RUN: llvm-profdata merge %p/Inputs/empty.proftext %p/Inputs/foo3-1.proftext -o %t
16RUN: llvm-profdata show %t -all-functions -counts | FileCheck %s --check-prefix=FOO3EMPTY
17FOO3EMPTY: foo:
18FOO3EMPTY: Counters: 3
19FOO3EMPTY: Function count: 1
20FOO3EMPTY: Block counts: [2, 3]
21FOO3EMPTY: Total functions: 1
22FOO3EMPTY: Maximum function count: 1
23FOO3EMPTY: Maximum internal block count: 3
24
25RUN: llvm-profdata merge %p/Inputs/foo3-1.proftext %p/Inputs/foo3bar3-1.proftext -o %t
26RUN: llvm-profdata show %t -all-functions -counts | FileCheck %s --check-prefix=FOO3FOO3BAR3
27FOO3FOO3BAR3: foo:
28FOO3FOO3BAR3: Counters: 3
29FOO3FOO3BAR3: Function count: 3
30FOO3FOO3BAR3: Block counts: [5, 8]
31FOO3FOO3BAR3: bar:
32FOO3FOO3BAR3: Counters: 3
33FOO3FOO3BAR3: Function count: 7
34FOO3FOO3BAR3: Block counts: [11, 13]
35FOO3FOO3BAR3: Total functions: 2
36FOO3FOO3BAR3: Maximum function count: 7
37FOO3FOO3BAR3: Maximum internal block count: 13
38
39RUN: llvm-profdata merge %p/Inputs/foo3-1.proftext %p/Inputs/bar3-1.proftext -o %t
40RUN: llvm-profdata show %t -all-functions -counts | FileCheck %s --check-prefix=DISJOINT
41DISJOINT: foo:
42DISJOINT: Counters: 3
43DISJOINT: Function count: 1
44DISJOINT: Block counts: [2, 3]
45DISJOINT: bar:
46DISJOINT: Counters: 3
47DISJOINT: Function count: 1
48DISJOINT: Block counts: [2, 3]
49DISJOINT: Total functions: 2
50DISJOINT: Maximum function count: 1
51DISJOINT: Maximum internal block count: 3
52