xref: /llvm-project/llvm/test/tools/llvm-profgen/cs-preinline-sample-profile.test (revision 937924eb4956ac4a85424cb495f91f34d42eb02a)
1; Test default llvm-profgen with preinline off
2; RUN: llvm-profgen --format=text --perfscript=%S/Inputs/inline-cs-noprobe.perfscript --binary=%S/Inputs/inline-cs-noprobe.perfbin --csspgo-preinliner=0 --gen-cs-nested-profile=0 --output=%t1
3
4; Test llvm-profgen with preinliner on will merge not inlinable profile into base profile.
5; RUN: llvm-profgen --format=text --llvm-sample-profile=%t1 --binary=%S/Inputs/inline-cs-noprobe.perfbin --csspgo-preinliner=1 --gen-cs-nested-profile=0 --sample-profile-hot-inline-threshold=3000 --sample-profile-cold-inline-threshold=45 --output=%t2
6; RUN: FileCheck %s --input-file %t2 --check-prefix=CHECK-PREINL
7
8; Test default llvm-profgen with preinline off
9; RUN: llvm-profgen --format=text --perfscript=%S/Inputs/inline-cs-pseudoprobe.perfscript --binary=%S/Inputs/inline-cs-pseudoprobe.perfbin --csspgo-preinliner=0 --gen-cs-nested-profile=0 --output=%t3
10
11; Test llvm-profgen with preinliner on will merge not inlinable profile into base profile.
12; RUN: llvm-profgen --format=text --llvm-sample-profile=%t3 --binary=%S/Inputs/inline-cs-pseudoprobe.perfbin --csspgo-preinliner=1 --gen-cs-nested-profile=0 --sample-profile-hot-inline-threshold=3000 --sample-profile-cold-inline-threshold=45 --output=%t4
13; RUN: FileCheck %s --input-file %t4 --check-prefix=CHECK-PREINL-PROBE
14
15; CHECK-PREINL:     [foo]:309:0
16; CHECK-PREINL-NEXT: 2.1: 14
17; CHECK-PREINL-NEXT: 3: 15
18; CHECK-PREINL-NEXT: 3.1: 14 bar:14
19; CHECK-PREINL-NEXT: 3.2: 1
20; CHECK-PREINL-NEXT: 65526: 14
21; CHECK-PREINL-NEXT: !Attributes: 1
22; CHECK-PREINL-NEXT:[foo:3.1 @ bar]:84:0
23; CHECK-PREINL-NEXT: 1: 14
24; CHECK-PREINL-NEXT: !Attributes: 3
25
26
27; CHECK-PREINL-PROBE:     [foo]:74:0
28; CHECK-PREINL-PROBE-NEXT: 1: 0
29; CHECK-PREINL-PROBE-NEXT: 2: 15
30; CHECK-PREINL-PROBE-NEXT: 3: 15
31; CHECK-PREINL-PROBE-NEXT: 4: 14
32; CHECK-PREINL-PROBE-NEXT: 5: 1
33; CHECK-PREINL-PROBE-NEXT: 6: 15
34; CHECK-PREINL-PROBE-NEXT: 7: 0
35; CHECK-PREINL-PROBE-NEXT: 8: 14 bar:14
36; CHECK-PREINL-PROBE-NEXT: 9: 0
37; CHECK-PREINL-PROBE-NEXT: !CFGChecksum: 563088904013236
38; CHECK-PREINL-PROBE-NEXT: !Attributes: 1
39; CHECK-PREINL-PROBE-NEXT:[foo:8 @ bar]:28:14
40; CHECK-PREINL-PROBE-NEXT: 1: 14
41; CHECK-PREINL-PROBE-NEXT: 4: 14
42; CHECK-PREINL-PROBE-NEXT: !CFGChecksum: 72617220756
43; CHECK-PREINL-PROBE-NEXT: !Attributes: 3
44