# 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 basic block count change detected (counter mismatch)
# MERGE_ERRS: Make sure that all profile data to be merged is generated from the same binary.
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
