llvm-profdata: Add a test for mismatched numbers of counters

llvm-svn: 214360
This commit is contained in:
Justin Bogner 2014-07-30 23:36:06 +00:00
parent c9c7d98c23
commit 6e20cf2ba5

View File

@ -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