Skip to content

Commit 42a07f2

Browse files
PaperChalicepaperchalice
PaperChalice
authored andcommitted
[NPM][llc] add NPM tests
1 parent a87204c commit 42a07f2

File tree

5 files changed

+330
-0
lines changed

5 files changed

+330
-0
lines changed
Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,6 @@
11
; RUN: not --crash llc -debug-pass=Structure -stop-after=dead-mi-elimination,arst %s -o /dev/null 2>&1 \
22
; RUN: | FileCheck -check-prefix=NOT-NUM %s
3+
; RUN: not --crash llc -enable-new-pm -debug-pass-manager -stop-after=dead-mi-elimination,arst %s -o /dev/null 2>&1 \
4+
; RUN: | FileCheck -check-prefix=NOT-NUM %s
35

46
; NOT-NUM: LLVM ERROR: invalid pass instance specifier dead-mi-elimination,arst
Lines changed: 47 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,47 @@
1+
; RUN: llc < %s -enable-new-pm -debug-pass-manager -stop-after=verify \
2+
; RUN: -o /dev/null 2>&1 | FileCheck %s -check-prefix=STOP-AFTER
3+
; STOP-AFTER: Running pass: VerifierPass
4+
; STOP-AFTER-NEXT: Running analysis: VerifierAnalysis
5+
; STOP-AFTER-NEXT: Skipping pass:
6+
7+
; RUN: llc < %s -enable-new-pm -debug-pass-manager -stop-before=verify \
8+
; RUN: -o /dev/null 2>&1 | FileCheck %s -check-prefix=STOP-BEFORE
9+
; STOP-BEFORE: Running pass: AtomicExpandPass
10+
; STOP-BEFORE-NEXT: Skipping pass:
11+
12+
; RUN: llc < %s -enable-new-pm -debug-pass-manager -start-after=verify \
13+
; RUN: -o /dev/null 2>&1 | FileCheck %s -check-prefix=START-AFTER
14+
; START-AFTER: Skipping pass: VerifierPass
15+
; START-AFTER-NEXT: Running pass:
16+
17+
; RUN: llc < %s -enable-new-pm -debug-pass-manager -start-before=verify \
18+
; RUN: -o /dev/null 2>&1 | FileCheck %s -check-prefix=START-BEFORE
19+
; START-BEFORE-NOT: Running pass:
20+
; START-BEFORE: Running pass: VerifierPass
21+
22+
; RUN: not --crash llc < %s -enable-new-pm -start-before=nonexistent -o /dev/null 2>&1 \
23+
; RUN: | FileCheck %s -check-prefix=NONEXISTENT-START-BEFORE
24+
; RUN: not --crash llc < %s -enable-new-pm -stop-before=nonexistent -o /dev/null 2>&1 \
25+
; RUN: | FileCheck %s -check-prefix=NONEXISTENT-STOP-BEFORE
26+
; RUN: not --crash llc < %s -enable-new-pm -start-after=nonexistent -o /dev/null 2>&1 \
27+
; RUN: | FileCheck %s -check-prefix=NONEXISTENT-START-AFTER
28+
; RUN: not --crash llc < %s -enable-new-pm -stop-after=nonexistent -o /dev/null 2>&1 \
29+
; RUN: | FileCheck %s -check-prefix=NONEXISTENT-STOP-AFTER
30+
; NONEXISTENT-START-BEFORE: "nonexistent" pass could not be found.
31+
; NONEXISTENT-STOP-BEFORE: "nonexistent" pass could not be found.
32+
; NONEXISTENT-START-AFTER: "nonexistent" pass could not be found.
33+
; NONEXISTENT-STOP-AFTER: "nonexistent" pass could not be found.
34+
35+
; RUN: not --crash llc < %s -enable-new-pm -start-before=verify -start-after=verify \
36+
; RUN: -o /dev/null 2>&1 | FileCheck %s -check-prefix=DOUBLE-START
37+
; RUN: not --crash llc < %s -enable-new-pm -stop-before=verify -stop-after=verify \
38+
; RUN: -o /dev/null 2>&1 | FileCheck %s -check-prefix=DOUBLE-STOP
39+
; DOUBLE-START: start-before and start-after specified!
40+
; DOUBLE-STOP: stop-before and stop-after specified!
41+
42+
define void @f() {
43+
br label %b
44+
b:
45+
br label %b
46+
ret void
47+
}
Lines changed: 80 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,80 @@
1+
; When EXPENSIVE_CHECKS are enabled, the machine verifier appears between each
2+
; pass. Ignore it with 'grep -v'.
3+
; RUN: llc -mtriple=x86_64-- -O0 -debug-pass-manager -enable-new-pm < %s \
4+
; RUN: -o /dev/null 2>&1 | grep -v 'Verify generated machine code' | FileCheck %s
5+
6+
; REQUIRES: asserts
7+
8+
; CHECK-LABEL: Running pass: RequireAnalysisPass{{.*}}
9+
; CHECK-NEXT: Running analysis: ProfileSummaryAnalysis on [module]
10+
; CHECK-NEXT: Running pass: PreISelIntrinsicLoweringPass on [module]
11+
; CHECK-NEXT: Running analysis: {{.*InnerAnalysisManagerProxy.*}} on [module]
12+
; CHECK-NEXT: Running pass: ExpandLargeDivRemPass on f (1 instruction)
13+
; CHECK-NEXT: Running pass: ExpandLargeFpConvertPass on f (1 instruction)
14+
; CHECK-NEXT: Running pass: AtomicExpandPass on f (1 instruction)
15+
; CHECK-NEXT: Running pass: VerifierPass on f (1 instruction)
16+
; CHECK-NEXT: Running analysis: VerifierAnalysis on f
17+
; CHECK-NEXT: Running pass: GCLoweringPass on f (1 instruction)
18+
; CHECK-NEXT: Running pass: ShadowStackGCLoweringPass on f (1 instruction)
19+
; CHECK-NEXT: Running pass: LowerConstantIntrinsicsPass on f (1 instruction)
20+
; CHECK-NEXT: Running analysis: TargetLibraryAnalysis on f
21+
; CHECK-NEXT: Running pass: UnreachableBlockElimPass on f (1 instruction)
22+
; CHECK-NEXT: Running pass: ExpandVectorPredicationPass on f (1 instruction)
23+
; CHECK-NEXT: Running analysis: TargetIRAnalysis on f
24+
; CHECK-NEXT: Running pass: ScalarizeMaskedMemIntrinPass on f (1 instruction)
25+
; CHECK-NEXT: Running pass: ExpandReductionsPass on f (1 instruction)
26+
; CHECK-NEXT: Running pass: IndirectBrExpandPass on f (1 instruction)
27+
; CHECK-NEXT: Running pass: DwarfEHPreparePass on f (1 instruction)
28+
; CHECK-NEXT: Running pass: CallBrPreparePass on f (1 instruction)
29+
; CHECK-NEXT: Running pass: SafeStackPass on f (1 instruction)
30+
; CHECK-NEXT: Running pass: StackProtectorPass on f (1 instruction)
31+
; CHECK-NEXT: Running pass: VerifierPass on f (1 instruction)
32+
; CHECK-NEXT: Running analysis: MachineModuleAnalysis on [module]
33+
; CHECK-NEXT: Running pass: {{.*}}::X86ISelDagPass on f
34+
; CHECK-NEXT: Running pass: {{.*}}::X86GlobalBaseRegPass on f
35+
; CHECK-NEXT: Running pass: FinalizeISelPass on f
36+
; CHECK-NEXT: Running pass: MachineVerifierPass on f
37+
; CHECK-NEXT: Running pass: LocalStackSlotPass on f
38+
; CHECK-NEXT: Running pass: {{.*}}::X86SpeculativeLoadHardeningPass on f
39+
; CHECK-NEXT: Running pass: {{.*}}::X86FlagsCopyLoweringDummyPass on f
40+
; CHECK-NEXT: Running pass: {{.*}}::X86DynAllocaExpanderPass on f
41+
; CHECK-NEXT: Running pass: {{.*}}::X86FastPreTileConfigPass on f
42+
; CHECK-NEXT: Running pass: PHIEliminationPass on f
43+
; CHECK-NEXT: Running pass: TwoAddressInstructionPass on f
44+
; CHECK-NEXT: Running pass: RegAllocPass on f
45+
; CHECK-NEXT: Running pass: {{.*}}::X86FastTileConfigPass on f
46+
; CHECK-NEXT: Running pass: {{.*}}::X86LowerTileCopyPass on f
47+
; CHECK-NEXT: Running pass: {{.*}}::X86FloatingPointStackifierPass on f
48+
; CHECK-NEXT: Running pass: RemoveRedundantDebugValuesPass on f
49+
; CHECK-NEXT: Running pass: FixupStatepointCallerSavedPass on f
50+
; CHECK-NEXT: Running pass: PrologEpilogInserterPass on f
51+
; CHECK-NEXT: Running pass: ExpandPostRAPseudosPass on f
52+
; CHECK-NEXT: Running pass: {{.*}}::X86ExpandPseudoPass on f
53+
; CHECK-NEXT: Running pass: MachineKCFIPass on f
54+
; CHECK-NEXT: Running pass: FEntryInserterPass on f
55+
; CHECK-NEXT: Running pass: XRayInstrumentationPass on f
56+
; CHECK-NEXT: Running pass: PatchableFunctionPass on f
57+
; CHECK-NEXT: Running pass: {{.*}}::X86IndirectBranchTrackingPass on f
58+
; CHECK-NEXT: Running pass: {{.*}}::X86IssueVZeroUpperPass on f
59+
; CHECK-NEXT: Running pass: {{.*}}::X86EvexToVexInstsPass on f
60+
; CHECK-NEXT: Running pass: {{.*}}::X86DiscriminateMemOpsPass on f
61+
; CHECK-NEXT: Running pass: {{.*}}::X86InsertPrefetchPass on f
62+
; CHECK-NEXT: Running pass: {{.*}}::X86InsertX87waitPass on f
63+
; CHECK-NEXT: Running pass: FuncletLayoutPass on f
64+
; CHECK-NEXT: Running pass: StackMapLivenessPass on f
65+
; CHECK-NEXT: Running pass: LiveDebugValuesPass on f
66+
; CHECK-NEXT: Running pass: MachineSanitizerBinaryMetadata on f
67+
; CHECK-NEXT: Running pass: StackFrameLayoutAnalysisPass on f
68+
; CHECK-NEXT: Running pass: {{.*}}::X86SpeculativeExecutionSideEffectSuppressionPass on f
69+
; CHECK-NEXT: Running pass: {{.*}}::X86IndirectThunksPass on f
70+
; CHECK-NEXT: Running pass: {{.*}}::X86ReturnThunksPass on f
71+
; CHECK-NEXT: Running pass: CFIInstrInserterPass on f
72+
; CHECK-NEXT: Running pass: {{.*}}::X86LoadValueInjectionRetHardeningPass on f
73+
; CHECK-NEXT: Running pass: PseudoProbeInserterPass on [module]
74+
; CHECK-NEXT: Running pass: UnpackMachineBundlesPass on f
75+
; CHECK-NEXT: Running pass: {{.*}}::X86AsmPrinterPass on f
76+
; CHECK-NEXT: Running pass: FreeMachineFunctionPass on f
77+
78+
define void @f() {
79+
ret void
80+
}
Lines changed: 35 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,35 @@
1+
; RUN: llc -mtriple=x86_64-- -enable-new-pm -debug-pass-manager -stop-after=verify,1 \
2+
; RUN: %s -o /dev/null 2>&1 | FileCheck -check-prefix=STOP-AFTER-1 %s
3+
4+
; RUN: llc -mtriple=x86_64-- -enable-new-pm -debug-pass-manager -stop-after=verify,0 \
5+
; RUN: %s -o /dev/null 2>&1 | FileCheck -check-prefix=STOP-AFTER-0 %s
6+
7+
; RUN: llc -mtriple=x86_64-- -enable-new-pm -debug-pass-manager -stop-before=verify,1 \
8+
; RUN: %s -o /dev/null 2>&1 | FileCheck -check-prefix=STOP-BEFORE-1 %s
9+
10+
; RUN: llc -mtriple=x86_64-- -enable-new-pm -debug-pass-manager -start-before=verify,1 \
11+
; RUN: %s -o /dev/null 2>&1 | FileCheck -check-prefix=START-BEFORE-1 %s
12+
13+
; RUN: llc -mtriple=x86_64-- -enable-new-pm -debug-pass-manager -start-after=verify,1 \
14+
; RUN: %s -o /dev/null 2>&1 | FileCheck -check-prefix=START-AFTER-1 %s
15+
16+
17+
; STOP-AFTER-1: Running pass: VerifierPass
18+
; STOP-AFTER-1: Running pass: VerifierPass
19+
20+
; STOP-AFTER-0-NOT: Running pass: VerifierPass
21+
; STOP-AFTER-0: Running pass: VerifierPass
22+
; STOP-AFTER-0-NOT: Running pass: VerifierPass
23+
24+
; STOP-BEFORE-1: Running pass: VerifierPass
25+
; STOP-BEFORE-1-NOT: Running pass: VerifierPass
26+
27+
; START-BEFORE-1-NOT: Running pass: VerifierPass
28+
; START-BEFORE-1: Running pass: VerifierPass
29+
; START-BEFORE-1-NOT: Running pass: VerifierPass
30+
31+
; START-AFTER-1-NOT: Running pass: VerifierPass
32+
33+
define void @f() {
34+
ret void
35+
}
Lines changed: 166 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,166 @@
1+
; When EXPENSIVE_CHECKS are enabled, the machine verifier appears between each
2+
; pass. Ignore it with 'grep -v'.
3+
; RUN: llc -mtriple=x86_64-- -O1 -debug-pass-manager -enable-new-pm < %s \
4+
; RUN: -o /dev/null 2>&1 | FileCheck %s
5+
; RUN: llc -mtriple=x86_64-- -O2 -debug-pass-manager -enable-new-pm < %s \
6+
; RUN: -o /dev/null 2>&1 | FileCheck %s
7+
; RUN: llc -mtriple=x86_64-- -O3 -debug-pass-manager -enable-new-pm < %s \
8+
; RUN: -o /dev/null 2>&1 | FileCheck %s
9+
10+
; REQUIRES: asserts
11+
12+
; CHECK-LABEL: Running pass: RequireAnalysisPass{{.*}}
13+
; CHECK-NEXT: Running analysis: ProfileSummaryAnalysis on [module]
14+
; CHECK-NEXT: Running pass: PreISelIntrinsicLoweringPass on [module]
15+
; CHECK-NEXT: Running analysis: {{.*InnerAnalysisManagerProxy.*}} on [module]
16+
; CHECK-NEXT: Running pass: ExpandLargeDivRemPass on f (3 instructions)
17+
; CHECK-NEXT: Running pass: ExpandLargeFpConvertPass on f (3 instructions)
18+
; CHECK-NEXT: Running pass: AtomicExpandPass on f (3 instructions)
19+
; CHECK-NEXT: Running pass: VerifierPass on f (3 instructions)
20+
; CHECK-NEXT: Running analysis: VerifierAnalysis on f
21+
; CHECK-NEXT: Running pass: LoopSimplifyPass on f (3 instructions)
22+
; CHECK-NEXT: Running analysis: LoopAnalysis on f
23+
; CHECK-NEXT: Running analysis: DominatorTreeAnalysis on f
24+
; CHECK-NEXT: Running analysis: AssumptionAnalysis on f
25+
; CHECK-NEXT: Running analysis: TargetIRAnalysis on f
26+
; CHECK-NEXT: Running pass: LCSSAPass on f (3 instructions)
27+
; CHECK-NEXT: Running analysis: MemorySSAAnalysis on f
28+
; CHECK-NEXT: Running analysis: AAManager on f
29+
; CHECK-NEXT: Running analysis: TargetLibraryAnalysis on f
30+
; CHECK-NEXT: Running analysis: BasicAA on f
31+
; CHECK-NEXT: Running analysis: ScopedNoAliasAA on f
32+
; CHECK-NEXT: Running analysis: TypeBasedAA on f
33+
; CHECK-NEXT: Running analysis: {{.*OuterAnalysisManagerProxy.*}} on f
34+
; CHECK-NEXT: Running analysis: ScalarEvolutionAnalysis on f
35+
; CHECK-NEXT: Running analysis: {{.*InnerAnalysisManagerProxy.*}} on f
36+
; CHECK-NEXT: Running pass: CanonicalizeFreezeInLoopsPass on b
37+
; CHECK-NEXT: Running pass: LoopSimplifyPass on f (3 instructions)
38+
; CHECK-NEXT: Running pass: LCSSAPass on f (3 instructions)
39+
; CHECK-NEXT: Running pass: LoopStrengthReducePass on b
40+
; CHECK-NEXT: Running analysis: IVUsersAnalysis on b
41+
; CHECK-NEXT: Running pass: MergeICmpsPass on f (3 instructions)
42+
; CHECK-NEXT: Running pass: ExpandMemCmpPass on f (3 instructions)
43+
; CHECK-NEXT: Running pass: GCLoweringPass on f (3 instructions)
44+
; CHECK-NEXT: Running pass: ShadowStackGCLoweringPass on f (3 instructions)
45+
; CHECK-NEXT: Running pass: LowerConstantIntrinsicsPass on f (3 instructions)
46+
; CHECK-NEXT: Running pass: UnreachableBlockElimPass on f (3 instructions)
47+
; CHECK-NEXT: Clearing all analysis results for: <possibly invalidated loop>
48+
; CHECK-NEXT: Invalidating analysis: VerifierAnalysis on f
49+
; CHECK-NEXT: Invalidating analysis: LoopAnalysis on f
50+
; CHECK-NEXT: Invalidating analysis: MemorySSAAnalysis on f
51+
; CHECK-NEXT: Invalidating analysis: ScalarEvolutionAnalysis on f
52+
; CHECK-NEXT: Invalidating analysis: {{.*InnerAnalysisManagerProxy.*}} on f
53+
; CHECK-NEXT: Running pass: ConstantHoistingPass on f (2 instructions)
54+
; CHECK-NEXT: Running analysis: BlockFrequencyAnalysis on f
55+
; CHECK-NEXT: Running analysis: BranchProbabilityAnalysis on f
56+
; CHECK-NEXT: Running analysis: LoopAnalysis on f
57+
; CHECK-NEXT: Running analysis: PostDominatorTreeAnalysis on f
58+
; CHECK-NEXT: Running pass: ReplaceWithVeclib on f (2 instructions)
59+
; CHECK-NEXT: Running pass: PartiallyInlineLibCallsPass on f (2 instructions)
60+
; CHECK-NEXT: Running pass: ExpandVectorPredicationPass on f (2 instructions)
61+
; CHECK-NEXT: Running pass: ScalarizeMaskedMemIntrinPass on f (2 instructions)
62+
; CHECK-NEXT: Running pass: ExpandReductionsPass on f (2 instructions)
63+
; CHECK-NEXT: Running pass: TLSVariableHoistPass on f (2 instructions)
64+
; CHECK-NEXT: Running pass: InterleavedAccessPass on f (2 instructions)
65+
; CHECK-NEXT: Running pass: IndirectBrExpandPass on f (2 instructions)
66+
; CHECK-NEXT: Running pass: CodeGenPreparePass on f (2 instructions)
67+
; CHECK-NEXT: Running pass: DwarfEHPreparePass on f (2 instructions)
68+
; CHECK-NEXT: Running pass: CallBrPreparePass on f (2 instructions)
69+
; CHECK-NEXT: Running pass: SafeStackPass on f (2 instructions)
70+
; CHECK-NEXT: Running pass: StackProtectorPass on f (2 instructions)
71+
; CHECK-NEXT: Running pass: VerifierPass on f (2 instructions)
72+
; CHECK-NEXT: Running analysis: VerifierAnalysis on f
73+
; CHECK-NEXT: Running analysis: MachineModuleAnalysis on [module]
74+
; CHECK-NEXT: Running pass: {{.*}}::X86ISelDagPass on f
75+
; CHECK-NEXT: Running pass: {{.*}}::CleanupLocalDynamicTLSPass on f
76+
; CHECK-NEXT: Running pass: {{.*}}::X86GlobalBaseRegPass on f
77+
; CHECK-NEXT: Running pass: FinalizeISelPass on f
78+
; CHECK-NEXT: Running pass: MachineVerifierPass on f
79+
; CHECK-NEXT: Running pass: {{.*}}::X86DomainReassignmentPass on f
80+
; CHECK-NEXT: Running pass: EarlyTailDuplicatePass on f
81+
; CHECK-NEXT: Running pass: OptimizePHIsPass on f
82+
; CHECK-NEXT: Running pass: StackColoringPass on f
83+
; CHECK-NEXT: Running pass: LocalStackSlotPass on f
84+
; CHECK-NEXT: Running pass: DeadMachineInstructionElimPass on f
85+
; CHECK-NEXT: Running pass: EarlyIfConverterPass on f
86+
; CHECK-NEXT: Running pass: MachineCombinerPass on f
87+
; CHECK-NEXT: Running pass: {{.*}}::X86CmovConverterDummyPass on f
88+
; CHECK-NEXT: Running pass: EarlyMachineLICMPass on f
89+
; CHECK-NEXT: Running pass: MachineCSEPass on f
90+
; CHECK-NEXT: Running pass: MachineSinkingPass on f
91+
; CHECK-NEXT: Running pass: PeepholeOptimizerPass on f
92+
; CHECK-NEXT: Running pass: DeadMachineInstructionElimPass on f
93+
; CHECK-NEXT: Running pass: LiveRangeShrinkPass on f
94+
; CHECK-NEXT: Running pass: {{.*}}::X86FixupSetCCPass on f
95+
; CHECK-NEXT: Running pass: {{.*}}::X86OptimizeLEAsPass on f
96+
; CHECK-NEXT: Running pass: {{.*}}::X86CallFrameOptimizationPass on f
97+
; CHECK-NEXT: Running pass: {{.*}}::X86AvoidStoreForwardingBlocksPass on f
98+
; CHECK-NEXT: Running pass: {{.*}}::X86SpeculativeLoadHardeningPass on f
99+
; CHECK-NEXT: Running pass: {{.*}}::X86FlagsCopyLoweringDummyPass on f
100+
; CHECK-NEXT: Running pass: {{.*}}::X86DynAllocaExpanderPass on f
101+
; CHECK-NEXT: Running pass: {{.*}}::X86PreTileConfigPass on f
102+
; CHECK-NEXT: Running pass: DetectDeadLanesPass on f
103+
; CHECK-NEXT: Running pass: ProcessImplicitDefsPass on f
104+
; CHECK-NEXT: Running pass: PHIEliminationPass on f
105+
; CHECK-NEXT: Running pass: TwoAddressInstructionPass on f
106+
; CHECK-NEXT: Running pass: RegisterCoalescerPass on f
107+
; CHECK-NEXT: Running pass: RenameIndependentSubregsPass on f
108+
; CHECK-NEXT: Running pass: MachineSchedulerPass on f
109+
; CHECK-NEXT: Running pass: RegAllocPass on f
110+
; CHECK-NEXT: Running pass: {{.*}}::X86FastTileConfigPass on f
111+
; CHECK-NEXT: Running pass: MachineCopyPropagationPass on f
112+
; CHECK-NEXT: Running pass: MachineLICMPass on f
113+
; CHECK-NEXT: Running pass: {{.*}}::X86LowerTileCopyPass on f
114+
; CHECK-NEXT: Running pass: {{.*}}::X86FloatingPointStackifierPass on f
115+
; CHECK-NEXT: Running pass: {{.*}}::X86LoadValueInjectionRetHardeningPass on f
116+
; CHECK-NEXT: Running pass: RemoveRedundantDebugValuesPass on f
117+
; CHECK-NEXT: Running pass: FixupStatepointCallerSavedPass on f
118+
; CHECK-NEXT: Running pass: PostRAMachineSinkingPass on f
119+
; CHECK-NEXT: Running pass: ShrinkWrapPass on f
120+
; CHECK-NEXT: Running pass: PrologEpilogInserterPass on f
121+
; CHECK-NEXT: Running pass: BranchFolderPass on f
122+
; CHECK-NEXT: Running pass: TailDuplicatePass on f
123+
; CHECK-NEXT: Running pass: MachineLateInstrsCleanupPass on f
124+
; CHECK-NEXT: Running pass: MachineCopyPropagationPass on f
125+
; CHECK-NEXT: Running pass: ExpandPostRAPseudosPass on f
126+
; CHECK-NEXT: Running pass: {{.*}}::X86ExpandPseudoPass on f
127+
; CHECK-NEXT: Running pass: MachineKCFIPass on f
128+
; CHECK-NEXT: Running pass: PostRASchedulerPass on f
129+
; CHECK-NEXT: Running pass: MachineBlockPlacementPass on f
130+
; CHECK-NEXT: Running pass: FEntryInserterPass on f
131+
; CHECK-NEXT: Running pass: XRayInstrumentationPass on f
132+
; CHECK-NEXT: Running pass: PatchableFunctionPass on f
133+
; CHECK-NEXT: Running pass: {{.*}}::X86ExecutionDomainFixPass on f
134+
; CHECK-NEXT: Running pass: BreakFalseDepsPass on f
135+
; CHECK-NEXT: Running pass: {{.*}}::X86IndirectBranchTrackingPass on f
136+
; CHECK-NEXT: Running pass: {{.*}}::X86IssueVZeroUpperPass on f
137+
; CHECK-NEXT: Running pass: {{.*}}::X86FixupBWInstsPass on f
138+
; CHECK-NEXT: Running pass: {{.*}}::X86PadShortFunctionsPass on f
139+
; CHECK-NEXT: Running pass: {{.*}}::X86FixupLEAsPass on f
140+
; CHECK-NEXT: Running pass: {{.*}}::X86FixupInstTuningPass on f
141+
; CHECK-NEXT: Running pass: {{.*}}::X86FixupVectorConstantsPass on f
142+
; CHECK-NEXT: Running pass: {{.*}}::X86EvexToVexInstsPass on f
143+
; CHECK-NEXT: Running pass: {{.*}}::X86DiscriminateMemOpsPass on f
144+
; CHECK-NEXT: Running pass: {{.*}}::X86InsertPrefetchPass on f
145+
; CHECK-NEXT: Running pass: {{.*}}::X86InsertX87waitPass on f
146+
; CHECK-NEXT: Running pass: FuncletLayoutPass on f
147+
; CHECK-NEXT: Running pass: StackMapLivenessPass on f
148+
; CHECK-NEXT: Running pass: LiveDebugValuesPass on f
149+
; CHECK-NEXT: Running pass: MachineSanitizerBinaryMetadata on f
150+
; CHECK-NEXT: Running pass: StackFrameLayoutAnalysisPass on f
151+
; CHECK-NEXT: Running pass: {{.*}}::X86SpeculativeExecutionSideEffectSuppressionPass on f
152+
; CHECK-NEXT: Running pass: {{.*}}::X86IndirectThunksPass on f
153+
; CHECK-NEXT: Running pass: {{.*}}::X86ReturnThunksPass on f
154+
; CHECK-NEXT: Running pass: CFIInstrInserterPass on f
155+
; CHECK-NEXT: Running pass: {{.*}}::X86LoadValueInjectionRetHardeningPass on f
156+
; CHECK-NEXT: Running pass: PseudoProbeInserterPass on [module]
157+
; CHECK-NEXT: Running pass: UnpackMachineBundlesPass on f
158+
; CHECK-NEXT: Running pass: {{.*}}::X86AsmPrinterPass on f
159+
; CHECK-NEXT: Running pass: FreeMachineFunctionPass on f
160+
161+
define void @f() {
162+
br label %b
163+
b:
164+
br label %b
165+
ret void
166+
}

0 commit comments

Comments
 (0)