xref: /llvm-project/llvm/test/tools/llvm-cov/branch-export-lcov.test (revision a921d6eb3b517ef6dcefd13cfbb9a017b00a06b1)
1
2// RUN: llvm-profdata merge %S/Inputs/branch-showBranchPercentage.proftext -o %t.profdata
3// RUN: llvm-cov export --format=lcov %S/Inputs/branch-showBranchPercentage.o32l -instr-profile %t.profdata | FileCheck %s
4// RUN: llvm-cov export --format=lcov --skip-branches %S/Inputs/branch-showBranchPercentage.o32l -instr-profile %t.profdata | FileCheck %s --check-prefix=NOBRANCH
5
6// CHECK-DAG: BRDA:14,0,0,1
7// CHECK-DAG: BRDA:14,0,1,5
8// CHECK-DAG: BRDA:27,0,0,1
9// CHECK-DAG: BRDA:27,0,1,4
10// CHECK-DAG: BRDA:27,1,2,0
11// CHECK-DAG: BRDA:27,1,3,1
12// CHECK-DAG: BRDA:27,2,4,0
13// CHECK-DAG: BRDA:27,2,5,5
14// CHECK-DAG: BRDA:27,3,6,2
15// CHECK-DAG: BRDA:27,3,7,3
16// CHECK-DAG: BRDA:30,0,0,4
17// CHECK-DAG: BRDA:30,0,1,1
18// CHECK-DAG: BRDA:30,1,2,0
19// CHECK-DAG: BRDA:30,1,3,1
20// CHECK-DAG: BRDA:32,0,0,4
21// CHECK-DAG: BRDA:32,0,1,1
22// CHECK-DAG: BRDA:32,1,2,1
23// CHECK-DAG: BRDA:32,1,3,3
24// CHECK-DAG: BRDA:34,0,0,1
25// CHECK-DAG: BRDA:34,0,1,5
26// CHECK-DAG: BRDA:41,0,0,1
27// CHECK-DAG: BRDA:41,0,1,4
28// CHECK-DAG: BRDA:43,0,0,1
29// CHECK-DAG: BRDA:43,0,1,4
30// CHECK-DAG: BRDA:45,0,0,0
31// CHECK-DAG: BRDA:45,0,1,5
32// CHECK-DAG: BRDA:47,0,0,3
33// CHECK-DAG: BRDA:47,0,1,2
34// CHECK-DAG: BRDA:53,0,0,50
35// CHECK-DAG: BRDA:53,0,1,5
36// CHECK-NOT: BRDA
37// CHECK: BRF:30
38// CHECK: BRH:26
39
40// Check recursive macro-expansions.
41// RUN: llvm-profdata merge %S/Inputs/branch-macros.proftext -o %t.profdata
42// RUN: llvm-cov export --format=lcov %S/Inputs/branch-macros.o32l -instr-profile %t.profdata | FileCheck %s -check-prefix=MACROS
43// RUN: llvm-cov export --format=lcov --skip-branches %S/Inputs/branch-macros.o32l -instr-profile %t.profdata | FileCheck %s -check-prefix=NOBRANCH
44
45// MACROS-COUNT-4: BRDA:17
46// MACROS-NOT: BRDA:17
47
48// MACROS-COUNT-4: BRDA:19
49// MACROS-NOT: BRDA:19
50
51// MACROS-COUNT-4: BRDA:21
52// MACROS-NOT: BRDA:21
53
54// MACROS-COUNT-4: BRDA:23
55// MACROS-NOT: BRDA:23
56
57// MACROS-COUNT-4: BRDA:25
58// MACROS-NOT: BRDA:25
59
60// MACROS: BRDA:27,0,0,0
61// MACROS: BRDA:27,0,1,3
62// MACROS: BRDA:27,1,2,-
63// MACROS: BRDA:27,1,3,-
64// MACROS: BRDA:27,2,4,-
65// MACROS: BRDA:27,2,5,-
66// MACROS: BRDA:27,3,6,-
67// MACROS: BRDA:27,3,7,-
68// MACROS: BRDA:27,4,8,-
69// MACROS: BRDA:27,4,9,-
70
71// MACROS-COUNT-10: BRDA:37
72// MACROS-NOT: BRDA:37
73// MACROS-NOT: BRDA
74// MACROS: BRF:40
75// MACROS: BRH:24
76
77// NOBRANCH-NOT: BRDA
78// NOBRANCH-NOT: BRF
79// NOBRANCH-NOT: BRH
80
81