From 4ce7f4462a617790b56297694ba8e93b54753400 Mon Sep 17 00:00:00 2001 From: Justin Bogner Date: Wed, 30 Jul 2014 23:36:06 +0000 Subject: [PATCH] llvm-profdata: Add a test for mismatched numbers of counters llvm-svn: 214360 --- .../tools/llvm-profdata/count-mismatch.proftext | 40 ++++++++++++++++++++++ 1 file changed, 40 insertions(+) create mode 100644 llvm/test/tools/llvm-profdata/count-mismatch.proftext diff --git a/llvm/test/tools/llvm-profdata/count-mismatch.proftext b/llvm/test/tools/llvm-profdata/count-mismatch.proftext new file mode 100644 index 0000000..1a2e73f --- /dev/null +++ b/llvm/test/tools/llvm-profdata/count-mismatch.proftext @@ -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 -- 2.7.4