| # If we see the same function name, but with different hashes, make | |
| # sure we keep both. | |
| # RUN: llvm-profdata merge %s -o %t 2>&1 | |
| # RUN: llvm-profdata show %t -all-functions -counts > %t.out | |
| # The function ordering is non-deterministic, so we need to do our | |
| # checks in multiple runs. | |
| # RUN: FileCheck -check-prefix=FOO3 -check-prefix=BOTH %s -input-file %t.out | |
| # RUN: FileCheck -check-prefix=FOO4 -check-prefix=BOTH %s -input-file %t.out | |
| # FOO3: Hash: 0x{{0+}}3 | |
| # FOO3-NEXT: Counters: 3 | |
| # FOO3-NEXT: Function count: 1 | |
| # FOO3-NEXT: Block counts: [2, 3] | |
| foo | |
| 3 | |
| 3 | |
| 1 | |
| 2 | |
| 3 | |
| # FOO4: Hash: 0x{{0+}}4 | |
| # FOO4-NEXT: Counters: 4 | |
| # FOO4-NEXT: Function count: 11 | |
| # FOO4-NEXT: Block counts: [22, 33, 44] | |
| foo | |
| 4 | |
| 4 | |
| 11 | |
| 22 | |
| 33 | |
| 44 | |
| # BOTH: Total functions: 2 | |
| # BOTH: Maximum function count: 11 | |
| # BOTH: Maximum internal block count: 44 |