Run DCE after a LoopFlatten test to reduce spurious output [nfc]
[llvm-project.git] / bolt / test / X86 / pseudoprobe-decoding-inline.test
blob15e93b1630a6645f18659deda0861f73aad7fa61
1 # REQUIRES: system-linux
2 # RUN: llvm-bolt  %S/../../../llvm/test/tools/llvm-profgen/Inputs/inline-cs-pseudoprobe.perfbin --print-pseudo-probes=all -o %t.bolt 2>&1 | FileCheck %s
4 CHECK: Report of decoding input pseudo probe binaries
6 CHECK-NEXT: Pseudo Probe Desc:
7 CHECK-NEXT: GUID: 6699318081062747564 Name: foo
8 CHECK-NEXT: Hash: 563088904013236
9 CHECK-NEXT: GUID: 15822663052811949562 Name: main
10 CHECK-NEXT: Hash: 281479271677951
11 CHECK-NEXT: GUID: 16434608426314478903 Name: bar
12 CHECK-NEXT: Hash: 72617220756
14 CHECK:  [Probe]: FUNC: bar Index: 1  Type: Block
15 CHECK:  [Probe]: FUNC: bar Index: 4  Type: Block
16 CHECK:  [Probe]: FUNC: foo Index: 1  Type: Block
17 CHECK:  [Probe]: FUNC: foo Index: 2  Type: Block
18 CHECK:  [Probe]: FUNC: foo Index: 5  Type: Block
19 CHECK:  [Probe]: FUNC: foo Index: 6  Type: Block
20 CHECK:  [Probe]: FUNC: foo Index: 2  Type: Block
21 CHECK:  [Probe]: FUNC: foo Index: 3  Type: Block
22 CHECK:  [Probe]: FUNC: foo Index: 4  Type: Block
23 CHECK:  [Probe]: FUNC: bar Index: 1  Type: Block  Inlined: @ foo:8
24 CHECK:  [Probe]: FUNC: bar Index: 4  Type: Block  Inlined: @ foo:8
25 CHECK:  [Probe]: FUNC: foo Index: 6  Type: Block
26 CHECK:  [Probe]: FUNC: foo Index: 2  Type: Block
27 CHECK:  [Probe]: FUNC: foo Index: 7  Type: Block
28 CHECK:  [Probe]: FUNC: foo Index: 9  Type: DirectCall
29 CHECK:  [Probe]: FUNC: main Index: 1  Type: Block
30 CHECK:  [Probe]: FUNC: foo Index: 1  Type: Block  Inlined: @ main:2
31 CHECK:  [Probe]: FUNC: foo Index: 2  Type: Block  Inlined: @ main:2
32 CHECK:  [Probe]: FUNC: foo Index: 5  Type: Block  Inlined: @ main:2
33 CHECK:  [Probe]: FUNC: foo Index: 6  Type: Block  Inlined: @ main:2
34 CHECK:  [Probe]: FUNC: foo Index: 2  Type: Block  Inlined: @ main:2
35 CHECK:  [Probe]: FUNC: foo Index: 3  Type: Block  Inlined: @ main:2
36 CHECK:  [Probe]: FUNC: foo Index: 4  Type: Block  Inlined: @ main:2
37 CHECK:  [Probe]: FUNC: bar Index: 1  Type: Block  Inlined: @ main:2 @ foo:8
38 CHECK:  [Probe]: FUNC: bar Index: 4  Type: Block  Inlined: @ main:2 @ foo:8
39 CHECK:  [Probe]: FUNC: foo Index: 6  Type: Block  Inlined: @ main:2
40 CHECK:  [Probe]: FUNC: foo Index: 2  Type: Block  Inlined: @ main:2
41 CHECK:  [Probe]: FUNC: foo Index: 7  Type: Block  Inlined: @ main:2
42 CHECK:  [Probe]: FUNC: foo Index: 9  Type: DirectCall  Inlined: @ main:2
44 CHECK: Pseudo Probe Address Conversion results:
46 CHECK: Address: 0x201750 FUNC: bar Index: 1  Type: Block
47 CHECK: Address: 0x201750 FUNC: bar Index: 4  Type: Block
48 CHECK: Address: 0x201770 FUNC: foo Index: 1  Type: Block
49 CHECK: Address: 0x201770 FUNC: foo Index: 2  Type: Block
50 CHECK: Address: 0x20177d FUNC: foo Index: 5  Type: Block
51 CHECK: Address: 0x20177d FUNC: foo Index: 6  Type: Block
52 CHECK: Address: 0x20177d FUNC: foo Index: 2  Type: Block
53 CHECK: Address: 0x20178b FUNC: foo Index: 3  Type: Block
54 CHECK: Address: 0x2017aa FUNC: foo Index: 4  Type: Block
55 CHECK: Address: 0x2017aa FUNC: bar Index: 1  Type: Block  Inlined: @ foo:8
56 CHECK: Address: 0x2017aa FUNC: bar Index: 4  Type: Block  Inlined: @ foo:8
57 CHECK: Address: 0x2017aa FUNC: foo Index: 6  Type: Block
58 CHECK: Address: 0x2017aa FUNC: foo Index: 2  Type: Block
59 CHECK: Address: 0x2017d7 FUNC: foo Index: 7  Type: Block
60 CHECK: Address: 0x2017e2 FUNC: foo Index: 9  Type: DirectCall
61 CHECK: Address: 0x2017f0 FUNC: main Index: 1  Type: Block
62 CHECK: Address: 0x2017f0 FUNC: foo Index: 1  Type: Block  Inlined: @ main:2
63 CHECK: Address: 0x2017f0 FUNC: foo Index: 2  Type: Block  Inlined: @ main:2
64 CHECK: Address: 0x2017fd FUNC: foo Index: 5  Type: Block  Inlined: @ main:2
65 CHECK: Address: 0x2017fd FUNC: foo Index: 6  Type: Block  Inlined: @ main:2
66 CHECK: Address: 0x2017fd FUNC: foo Index: 2  Type: Block  Inlined: @ main:2
67 CHECK: Address: 0x20180b FUNC: foo Index: 3  Type: Block  Inlined: @ main:2
68 CHECK: Address: 0x20182a FUNC: foo Index: 4  Type: Block  Inlined: @ main:2
69 CHECK: Address: 0x20182a FUNC: bar Index: 1  Type: Block  Inlined: @ main:2 @ foo:8
70 CHECK: Address: 0x20182a FUNC: bar Index: 4  Type: Block  Inlined: @ main:2 @ foo:8
71 CHECK: Address: 0x20182a FUNC: foo Index: 6  Type: Block  Inlined: @ main:2
72 CHECK: Address: 0x20182a FUNC: foo Index: 2  Type: Block  Inlined: @ main:2
73 CHECK: Address: 0x201857 FUNC: foo Index: 7  Type: Block  Inlined: @ main:2
74 CHECK: Address: 0x201862 FUNC: foo Index: 9  Type: DirectCall  Inlined: @ main:2
76 CHECK:                  Address:  2103120
77 CHECK-NEXT:  [Probe]: FUNC: bar Index: 1  Type: Block
78 CHECK-NEXT:  [Probe]: FUNC: bar Index: 4  Type: Block
79 CHECK-NEXT: Address:  2103152
80 CHECK-NEXT:  [Probe]: FUNC: foo Index: 1  Type: Block
81 CHECK-NEXT:  [Probe]: FUNC: foo Index: 2  Type: Block
82 CHECK-NEXT: Address:  2103165
83 CHECK-NEXT:  [Probe]: FUNC: foo Index: 5  Type: Block
84 CHECK-NEXT:  [Probe]: FUNC: foo Index: 6  Type: Block
85 CHECK-NEXT:  [Probe]: FUNC: foo Index: 2  Type: Block
86 CHECK-NEXT: Address:  2103179
87 CHECK-NEXT:  [Probe]: FUNC: foo Index: 3  Type: Block
88 CHECK-NEXT: Address:  2103210
89 CHECK-NEXT:  [Probe]: FUNC: foo Index: 4  Type: Block
90 CHECK-NEXT:  [Probe]: FUNC: foo Index: 6  Type: Block
91 CHECK-NEXT:  [Probe]: FUNC: foo Index: 2  Type: Block
92 CHECK-NEXT:  [Probe]: FUNC: bar Index: 1  Type: Block  Inlined: @ foo:8
93 CHECK-NEXT:  [Probe]: FUNC: bar Index: 4  Type: Block  Inlined: @ foo:8
94 CHECK-NEXT: Address:  2103255
95 CHECK-NEXT:  [Probe]: FUNC: foo Index: 7  Type: Block
96 CHECK-NEXT: Address:  2103266
97 CHECK-NEXT:  [Probe]: FUNC: foo Index: 9  Type: DirectCall
98 CHECK-NEXT: Address:  2103280
99 CHECK-NEXT:  [Probe]: FUNC: main Index: 1  Type: Block
100 CHECK-NEXT:  [Probe]: FUNC: foo Index: 1  Type: Block  Inlined: @ main:2
101 CHECK-NEXT:  [Probe]: FUNC: foo Index: 2  Type: Block  Inlined: @ main:2
102 CHECK-NEXT: Address:  2103293
103 CHECK-NEXT:  [Probe]: FUNC: foo Index: 5  Type: Block  Inlined: @ main:2
104 CHECK-NEXT:  [Probe]: FUNC: foo Index: 6  Type: Block  Inlined: @ main:2
105 CHECK-NEXT:  [Probe]: FUNC: foo Index: 2  Type: Block  Inlined: @ main:2
106 CHECK-NEXT: Address:  2103307
107 CHECK-NEXT:  [Probe]: FUNC: foo Index: 3  Type: Block  Inlined: @ main:2
108 CHECK-NEXT: Address:  2103338
109 CHECK-NEXT:  [Probe]: FUNC: foo Index: 4  Type: Block  Inlined: @ main:2
110 CHECK-NEXT:  [Probe]: FUNC: foo Index: 6  Type: Block  Inlined: @ main:2
111 CHECK-NEXT:  [Probe]: FUNC: foo Index: 2  Type: Block  Inlined: @ main:2
112 CHECK-NEXT:  [Probe]: FUNC: bar Index: 1  Type: Block  Inlined: @ main:2 @ foo:8
113 CHECK-NEXT:  [Probe]: FUNC: bar Index: 4  Type: Block  Inlined: @ main:2 @ foo:8
114 CHECK-NEXT: Address:  2103383
115 CHECK-NEXT:  [Probe]: FUNC: foo Index: 7  Type: Block  Inlined: @ main:2
116 CHECK-NEXT: Address:  2103394
117 CHECK-NEXT:  [Probe]: FUNC: foo Index: 9  Type: DirectCall  Inlined: @ main:2