1 //===- llvm/InitializePasses.h - Initialize All Passes ----------*- C++ -*-===//
2 //
3 // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
4 // See https://llvm.org/LICENSE.txt for license information.
5 // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
6 //
7 //===----------------------------------------------------------------------===//
8 //
9 // This file contains the declarations for the pass initialization routines
10 // for the entire LLVM project.
11 //
12 //===----------------------------------------------------------------------===//
13 
14 #ifndef LLVM_INITIALIZEPASSES_H
15 #define LLVM_INITIALIZEPASSES_H
16 
17 namespace llvm {
18 
19 class PassRegistry;
20 
21 /// Initialize all passes linked into the Core library.
22 void initializeCore(PassRegistry&);
23 
24 /// Initialize all passes linked into the TransformUtils library.
25 void initializeTransformUtils(PassRegistry&);
26 
27 /// Initialize all passes linked into the ScalarOpts library.
28 void initializeScalarOpts(PassRegistry&);
29 
30 /// Initialize all passes linked into the Vectorize library.
31 void initializeVectorization(PassRegistry&);
32 
33 /// Initialize all passes linked into the InstCombine library.
34 void initializeInstCombine(PassRegistry&);
35 
36 /// Initialize all passes linked into the IPO library.
37 void initializeIPO(PassRegistry&);
38 
39 /// Initialize all passes linked into the Analysis library.
40 void initializeAnalysis(PassRegistry&);
41 
42 /// Initialize all passes linked into the CodeGen library.
43 void initializeCodeGen(PassRegistry&);
44 
45 /// Initialize all passes linked into the GlobalISel library.
46 void initializeGlobalISel(PassRegistry&);
47 
48 /// Initialize all passes linked into the CodeGen library.
49 void initializeTarget(PassRegistry&);
50 
51 void initializeAAResultsWrapperPassPass(PassRegistry&);
52 void initializeAlwaysInlinerLegacyPassPass(PassRegistry&);
53 void initializeAssignmentTrackingAnalysisPass(PassRegistry &);
54 void initializeAssumptionCacheTrackerPass(PassRegistry&);
55 void initializeAtomicExpandLegacyPass(PassRegistry &);
56 void initializeBasicBlockPathCloningPass(PassRegistry &);
57 void initializeBasicBlockSectionsProfileReaderWrapperPassPass(PassRegistry &);
58 void initializeBasicBlockSectionsPass(PassRegistry &);
59 void initializeBarrierNoopPass(PassRegistry&);
60 void initializeBasicAAWrapperPassPass(PassRegistry&);
61 void initializeBlockFrequencyInfoWrapperPassPass(PassRegistry&);
62 void initializeBranchFolderPassPass(PassRegistry&);
63 void initializeBranchProbabilityInfoWrapperPassPass(PassRegistry&);
64 void initializeBranchRelaxationPass(PassRegistry&);
65 void initializeBreakCriticalEdgesPass(PassRegistry&);
66 void initializeBreakFalseDepsPass(PassRegistry&);
67 void initializeCanonicalizeFreezeInLoopsPass(PassRegistry &);
68 void initializeCFGSimplifyPassPass(PassRegistry&);
69 void initializeCFGuardPass(PassRegistry&);
70 void initializeCFGuardLongjmpPass(PassRegistry&);
71 void initializeCFIFixupPass(PassRegistry&);
72 void initializeCFIInstrInserterPass(PassRegistry&);
73 void initializeCallBrPreparePass(PassRegistry &);
74 void initializeCallGraphDOTPrinterPass(PassRegistry&);
75 void initializeCallGraphViewerPass(PassRegistry&);
76 void initializeCallGraphWrapperPassPass(PassRegistry&);
77 void initializeCheckDebugMachineModulePass(PassRegistry &);
78 void initializeCodeGenPrepareLegacyPassPass(PassRegistry &);
79 void initializeComplexDeinterleavingLegacyPassPass(PassRegistry&);
80 void initializeConstantHoistingLegacyPassPass(PassRegistry&);
81 void initializeCycleInfoWrapperPassPass(PassRegistry &);
82 void initializeDAEPass(PassRegistry&);
83 void initializeDAHPass(PassRegistry&);
84 void initializeDCELegacyPassPass(PassRegistry&);
85 void initializeDeadMachineInstructionElimPass(PassRegistry&);
86 void initializeDebugifyMachineModulePass(PassRegistry &);
87 void initializeDependenceAnalysisWrapperPassPass(PassRegistry&);
88 void initializeDetectDeadLanesPass(PassRegistry&);
89 void initializeDomOnlyPrinterWrapperPassPass(PassRegistry &);
90 void initializeDomOnlyViewerWrapperPassPass(PassRegistry &);
91 void initializeDomPrinterWrapperPassPass(PassRegistry &);
92 void initializeDomViewerWrapperPassPass(PassRegistry &);
93 void initializeDominanceFrontierWrapperPassPass(PassRegistry&);
94 void initializeDominatorTreeWrapperPassPass(PassRegistry&);
95 void initializeDwarfEHPrepareLegacyPassPass(PassRegistry &);
96 void initializeEarlyCSELegacyPassPass(PassRegistry&);
97 void initializeEarlyCSEMemSSALegacyPassPass(PassRegistry&);
98 void initializeEarlyIfConverterPass(PassRegistry&);
99 void initializeEarlyIfPredicatorPass(PassRegistry &);
100 void initializeEarlyMachineLICMPass(PassRegistry&);
101 void initializeEarlyTailDuplicatePass(PassRegistry&);
102 void initializeEdgeBundlesPass(PassRegistry&);
103 void initializeEHContGuardCatchretPass(PassRegistry &);
104 void initializeExpandLargeFpConvertLegacyPassPass(PassRegistry&);
105 void initializeExpandLargeDivRemLegacyPassPass(PassRegistry&);
106 void initializeExpandMemCmpLegacyPassPass(PassRegistry &);
107 void initializeExpandPostRAPass(PassRegistry&);
108 void initializeExpandReductionsPass(PassRegistry&);
109 void initializeExpandVectorPredicationPass(PassRegistry &);
110 void initializeExternalAAWrapperPassPass(PassRegistry&);
111 void initializeFEntryInserterPass(PassRegistry&);
112 void initializeFinalizeISelPass(PassRegistry&);
113 void initializeFinalizeMachineBundlesPass(PassRegistry&);
114 void initializeFixIrreduciblePass(PassRegistry &);
115 void initializeFixupStatepointCallerSavedPass(PassRegistry&);
116 void initializeFlattenCFGLegacyPassPass(PassRegistry &);
117 void initializeFuncletLayoutPass(PassRegistry&);
118 void initializeGCEmptyBasicBlocksPass(PassRegistry &);
119 void initializeGCMachineCodeAnalysisPass(PassRegistry&);
120 void initializeGCModuleInfoPass(PassRegistry&);
121 void initializeGVNLegacyPassPass(PassRegistry&);
122 void initializeGlobalMergePass(PassRegistry&);
123 void initializeGlobalsAAWrapperPassPass(PassRegistry &);
124 void initializeHardwareLoopsLegacyPass(PassRegistry&);
125 void initializeMIRProfileLoaderPassPass(PassRegistry &);
126 void initializeIRSimilarityIdentifierWrapperPassPass(PassRegistry&);
127 void initializeIRTranslatorPass(PassRegistry&);
128 void initializeIVUsersWrapperPassPass(PassRegistry&);
129 void initializeIfConverterPass(PassRegistry&);
130 void initializeImmutableModuleSummaryIndexWrapperPassPass(PassRegistry&);
131 void initializeImplicitNullChecksPass(PassRegistry&);
132 void initializeIndirectBrExpandLegacyPassPass(PassRegistry &);
133 void initializeInferAddressSpacesPass(PassRegistry&);
134 void initializeInstSimplifyLegacyPassPass(PassRegistry &);
135 void initializeInstructionCombiningPassPass(PassRegistry&);
136 void initializeInstructionSelectPass(PassRegistry&);
137 void initializeInterleavedAccessPass(PassRegistry&);
138 void initializeInterleavedLoadCombinePass(PassRegistry &);
139 void initializeJMCInstrumenterPass(PassRegistry&);
140 void initializeKCFIPass(PassRegistry &);
141 void initializeLCSSAVerificationPassPass(PassRegistry&);
142 void initializeLCSSAWrapperPassPass(PassRegistry&);
143 void initializeLazyBlockFrequencyInfoPassPass(PassRegistry&);
144 void initializeLazyBranchProbabilityInfoPassPass(PassRegistry&);
145 void initializeLazyMachineBlockFrequencyInfoPassPass(PassRegistry&);
146 void initializeLazyValueInfoWrapperPassPass(PassRegistry&);
147 void initializeLegacyLICMPassPass(PassRegistry&);
148 void initializeLegalizerPass(PassRegistry&);
149 void initializeGISelCSEAnalysisWrapperPassPass(PassRegistry &);
150 void initializeGISelKnownBitsAnalysisPass(PassRegistry &);
151 void initializeLiveDebugValuesPass(PassRegistry&);
152 void initializeLiveDebugVariablesPass(PassRegistry&);
153 void initializeLiveIntervalsPass(PassRegistry&);
154 void initializeLiveRangeShrinkPass(PassRegistry&);
155 void initializeLiveRegMatrixPass(PassRegistry&);
156 void initializeLiveStacksPass(PassRegistry&);
157 void initializeLiveVariablesPass(PassRegistry &);
158 void initializeLoadStoreOptPass(PassRegistry &);
159 void initializeLoadStoreVectorizerLegacyPassPass(PassRegistry&);
160 void initializeLocalStackSlotPassPass(PassRegistry&);
161 void initializeLocalizerPass(PassRegistry&);
162 void initializeLoopDataPrefetchLegacyPassPass(PassRegistry&);
163 void initializeLoopExtractorLegacyPassPass(PassRegistry &);
164 void initializeLoopInfoWrapperPassPass(PassRegistry&);
165 void initializeLoopPassPass(PassRegistry&);
166 void initializeLoopSimplifyPass(PassRegistry&);
167 void initializeLoopStrengthReducePass(PassRegistry&);
168 void initializeLoopUnrollPass(PassRegistry&);
169 void initializeLowerAtomicLegacyPassPass(PassRegistry&);
170 void initializeLowerConstantIntrinsicsPass(PassRegistry&);
171 void initializeLowerEmuTLSPass(PassRegistry&);
172 void initializeLowerGlobalDtorsLegacyPassPass(PassRegistry &);
173 void initializeLowerIntrinsicsPass(PassRegistry&);
174 void initializeLowerInvokeLegacyPassPass(PassRegistry&);
175 void initializeLowerSwitchLegacyPassPass(PassRegistry &);
176 void initializeKCFIPass(PassRegistry &);
177 void initializeMIRAddFSDiscriminatorsPass(PassRegistry &);
178 void initializeMIRCanonicalizerPass(PassRegistry &);
179 void initializeMIRNamerPass(PassRegistry &);
180 void initializeMIRPrintingPassPass(PassRegistry&);
181 void initializeMachineBlockFrequencyInfoPass(PassRegistry&);
182 void initializeMachineBlockPlacementPass(PassRegistry&);
183 void initializeMachineBlockPlacementStatsPass(PassRegistry&);
184 void initializeMachineBranchProbabilityInfoPass(PassRegistry&);
185 void initializeMachineCFGPrinterPass(PassRegistry &);
186 void initializeMachineCSEPass(PassRegistry&);
187 void initializeMachineCombinerPass(PassRegistry&);
188 void initializeMachineCopyPropagationPass(PassRegistry&);
189 void initializeMachineCycleInfoPrinterPassPass(PassRegistry &);
190 void initializeMachineCycleInfoWrapperPassPass(PassRegistry &);
191 void initializeMachineDominanceFrontierPass(PassRegistry&);
192 void initializeMachineDominatorTreePass(PassRegistry&);
193 void initializeMachineFunctionPrinterPassPass(PassRegistry&);
194 void initializeMachineFunctionSplitterPass(PassRegistry &);
195 void initializeMachineLateInstrsCleanupPass(PassRegistry&);
196 void initializeMachineLICMPass(PassRegistry&);
197 void initializeMachineLoopInfoPass(PassRegistry&);
198 void initializeMachineModuleInfoWrapperPassPass(PassRegistry &);
199 void initializeMachineOptimizationRemarkEmitterPassPass(PassRegistry&);
200 void initializeMachineOutlinerPass(PassRegistry&);
201 void initializeMachinePipelinerPass(PassRegistry&);
202 void initializeMachinePostDominatorTreePass(PassRegistry&);
203 void initializeMachineRegionInfoPassPass(PassRegistry&);
204 void initializeMachineSanitizerBinaryMetadataPass(PassRegistry &);
205 void initializeMachineSchedulerPass(PassRegistry&);
206 void initializeMachineSinkingPass(PassRegistry&);
207 void initializeMachineTraceMetricsPass(PassRegistry&);
208 void initializeMachineUniformityInfoPrinterPassPass(PassRegistry &);
209 void initializeMachineUniformityAnalysisPassPass(PassRegistry &);
210 void initializeMachineVerifierPassPass(PassRegistry&);
211 void initializeMemoryDependenceWrapperPassPass(PassRegistry&);
212 void initializeMemorySSAWrapperPassPass(PassRegistry&);
213 void initializeMergeICmpsLegacyPassPass(PassRegistry &);
214 void initializeModuleSummaryIndexWrapperPassPass(PassRegistry&);
215 void initializeModuloScheduleTestPass(PassRegistry&);
216 void initializeNaryReassociateLegacyPassPass(PassRegistry&);
217 void initializeObjCARCContractLegacyPassPass(PassRegistry &);
218 void initializeOptimizationRemarkEmitterWrapperPassPass(PassRegistry&);
219 void initializeOptimizePHIsPass(PassRegistry&);
220 void initializePEIPass(PassRegistry&);
221 void initializePHIEliminationPass(PassRegistry&);
222 void initializePartiallyInlineLibCallsLegacyPassPass(PassRegistry&);
223 void initializePatchableFunctionPass(PassRegistry&);
224 void initializePeepholeOptimizerPass(PassRegistry&);
225 void initializePhiValuesWrapperPassPass(PassRegistry&);
226 void initializePhysicalRegisterUsageInfoPass(PassRegistry&);
227 void initializePlaceBackedgeSafepointsLegacyPassPass(PassRegistry &);
228 void initializePostDomOnlyPrinterWrapperPassPass(PassRegistry &);
229 void initializePostDomOnlyViewerWrapperPassPass(PassRegistry &);
230 void initializePostDomPrinterWrapperPassPass(PassRegistry &);
231 void initializePostDomViewerWrapperPassPass(PassRegistry &);
232 void initializePostDominatorTreeWrapperPassPass(PassRegistry&);
233 void initializePostMachineSchedulerPass(PassRegistry&);
234 void initializePostRAHazardRecognizerPass(PassRegistry&);
235 void initializePostRAMachineSinkingPass(PassRegistry&);
236 void initializePostRASchedulerPass(PassRegistry&);
237 void initializePreISelIntrinsicLoweringLegacyPassPass(PassRegistry&);
238 void initializePrintFunctionPassWrapperPass(PassRegistry&);
239 void initializePrintModulePassWrapperPass(PassRegistry&);
240 void initializeProcessImplicitDefsPass(PassRegistry&);
241 void initializeProfileSummaryInfoWrapperPassPass(PassRegistry&);
242 void initializePromoteLegacyPassPass(PassRegistry&);
243 void initializeRABasicPass(PassRegistry&);
244 void initializePseudoProbeInserterPass(PassRegistry &);
245 void initializeRAGreedyPass(PassRegistry&);
246 void initializeReachingDefAnalysisPass(PassRegistry&);
247 void initializeReassociateLegacyPassPass(PassRegistry&);
248 void initializeRegAllocEvictionAdvisorAnalysisPass(PassRegistry &);
249 void initializeRegAllocFastPass(PassRegistry&);
250 void initializeRegAllocPriorityAdvisorAnalysisPass(PassRegistry &);
251 void initializeRegAllocScoringPass(PassRegistry &);
252 void initializeRegBankSelectPass(PassRegistry&);
253 void initializeRegUsageInfoCollectorPass(PassRegistry&);
254 void initializeRegUsageInfoPropagationPass(PassRegistry&);
255 void initializeRegionInfoPassPass(PassRegistry&);
256 void initializeRegionOnlyPrinterPass(PassRegistry&);
257 void initializeRegionOnlyViewerPass(PassRegistry&);
258 void initializeRegionPrinterPass(PassRegistry&);
259 void initializeRegionViewerPass(PassRegistry&);
260 void initializeRegisterCoalescerPass(PassRegistry&);
261 void initializeRemoveRedundantDebugValuesPass(PassRegistry&);
262 void initializeRenameIndependentSubregsPass(PassRegistry&);
263 void initializeReplaceWithVeclibLegacyPass(PassRegistry &);
264 void initializeResetMachineFunctionPass(PassRegistry&);
265 void initializeSCEVAAWrapperPassPass(PassRegistry&);
266 void initializeSROALegacyPassPass(PassRegistry&);
267 void initializeSafeStackLegacyPassPass(PassRegistry&);
268 void initializeSafepointIRVerifierPass(PassRegistry&);
269 void initializeSelectOptimizePass(PassRegistry &);
270 void initializeScalarEvolutionWrapperPassPass(PassRegistry&);
271 void initializeScalarizeMaskedMemIntrinLegacyPassPass(PassRegistry &);
272 void initializeScavengerTestPass(PassRegistry&);
273 void initializeScopedNoAliasAAWrapperPassPass(PassRegistry&);
274 void initializeSeparateConstOffsetFromGEPLegacyPassPass(PassRegistry &);
275 void initializeShadowStackGCLoweringPass(PassRegistry&);
276 void initializeShrinkWrapPass(PassRegistry&);
277 void initializeSingleLoopExtractorPass(PassRegistry&);
278 void initializeSinkingLegacyPassPass(PassRegistry&);
279 void initializeSjLjEHPreparePass(PassRegistry&);
280 void initializeSlotIndexesPass(PassRegistry&);
281 void initializeSpeculativeExecutionLegacyPassPass(PassRegistry&);
282 void initializeSpillPlacementPass(PassRegistry&);
283 void initializeStackColoringPass(PassRegistry&);
284 void initializeStackFrameLayoutAnalysisPassPass(PassRegistry &);
285 void initializeStackMapLivenessPass(PassRegistry&);
286 void initializeStackProtectorPass(PassRegistry&);
287 void initializeStackSafetyGlobalInfoWrapperPassPass(PassRegistry &);
288 void initializeStackSafetyInfoWrapperPassPass(PassRegistry &);
289 void initializeStackSlotColoringPass(PassRegistry&);
290 void initializeStraightLineStrengthReduceLegacyPassPass(PassRegistry &);
291 void initializeStripDebugMachineModulePass(PassRegistry &);
292 void initializeStructurizeCFGLegacyPassPass(PassRegistry &);
293 void initializeTailCallElimPass(PassRegistry&);
294 void initializeTailDuplicatePass(PassRegistry&);
295 void initializeTargetLibraryInfoWrapperPassPass(PassRegistry&);
296 void initializeTargetPassConfigPass(PassRegistry&);
297 void initializeTargetTransformInfoWrapperPassPass(PassRegistry&);
298 void initializeTLSVariableHoistLegacyPassPass(PassRegistry &);
299 void initializeTwoAddressInstructionPassPass(PassRegistry&);
300 void initializeTypeBasedAAWrapperPassPass(PassRegistry&);
301 void initializeTypePromotionLegacyPass(PassRegistry&);
302 void initializeInitUndefPass(PassRegistry &);
303 void initializeUniformityInfoWrapperPassPass(PassRegistry &);
304 void initializeUnifyLoopExitsLegacyPassPass(PassRegistry &);
305 void initializeUnpackMachineBundlesPass(PassRegistry&);
306 void initializeUnreachableBlockElimLegacyPassPass(PassRegistry&);
307 void initializeUnreachableMachineBlockElimPass(PassRegistry&);
308 void initializeVerifierLegacyPassPass(PassRegistry&);
309 void initializeVirtRegMapPass(PassRegistry&);
310 void initializeVirtRegRewriterPass(PassRegistry&);
311 void initializeWasmEHPreparePass(PassRegistry&);
312 void initializeWinEHPreparePass(PassRegistry&);
313 void initializeWriteBitcodePassPass(PassRegistry&);
314 void initializeXRayInstrumentationPass(PassRegistry&);
315 
316 } // end namespace llvm
317 
318 #endif // LLVM_INITIALIZEPASSES_H
319