From c222d610ddd4a601aed4c3d1392130f81a746311 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 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@214360 91177308-0d34-0410-b5e6-96231b3b80d8 --- .../llvm-profdata/count-mismatch.proftext | 40 +++++++++++++++++++ 1 file changed, 40 insertions(+) create mode 100644 test/tools/llvm-profdata/count-mismatch.proftext diff --git a/test/tools/llvm-profdata/count-mismatch.proftext b/test/tools/llvm-profdata/count-mismatch.proftext new file mode 100644 index 00000000000..1a2e73fbffd --- /dev/null +++ b/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.34.1