1 //===- llvm/InitializePasses.h -------- Initialize All Passes ---*- C++ -*-===//
2 //
3 //                      The LLVM Compiler Infrastructure
4 //
5 // This file is distributed under the University of Illinois Open Source
6 // License. See LICENSE.TXT for details.
7 //
8 //===----------------------------------------------------------------------===//
9 //
10 // This file contains the declarations for the pass initialization routines
11 // for the entire LLVM project.
12 //
13 //===----------------------------------------------------------------------===//
14 
15 #ifndef LLVM_INITIALIZEPASSES_H
16 #define LLVM_INITIALIZEPASSES_H
17 
18 namespace llvm {
19 
20 class PassRegistry;
21 
22 /// initializeCore - Initialize all passes linked into the
23 /// TransformUtils library.
24 void initializeCore(PassRegistry&);
25 
26 /// initializeTransformUtils - Initialize all passes linked into the
27 /// TransformUtils library.
28 void initializeTransformUtils(PassRegistry&);
29 
30 /// initializeScalarOpts - Initialize all passes linked into the
31 /// ScalarOpts library.
32 void initializeScalarOpts(PassRegistry&);
33 
34 /// initializeObjCARCOpts - Initialize all passes linked into the ObjCARCOpts
35 /// library.
36 void initializeObjCARCOpts(PassRegistry&);
37 
38 /// initializeVectorization - Initialize all passes linked into the
39 /// Vectorize library.
40 void initializeVectorization(PassRegistry&);
41 
42 /// initializeInstCombine - Initialize all passes linked into the
43 /// InstCombine library.
44 void initializeInstCombine(PassRegistry&);
45 
46 /// initializeIPO - Initialize all passes linked into the IPO library.
47 void initializeIPO(PassRegistry&);
48 
49 /// initializeInstrumentation - Initialize all passes linked into the
50 /// Instrumentation library.
51 void initializeInstrumentation(PassRegistry&);
52 
53 /// initializeAnalysis - Initialize all passes linked into the Analysis library.
54 void initializeAnalysis(PassRegistry&);
55 
56 /// initializeIPA - Initialize all passes linked into the IPA library.
57 void initializeIPA(PassRegistry&);
58 
59 /// initializeCodeGen - Initialize all passes linked into the CodeGen library.
60 void initializeCodeGen(PassRegistry&);
61 
62 /// initializeCodeGen - Initialize all passes linked into the CodeGen library.
63 void initializeTarget(PassRegistry&);
64 
65 void initializeAAEvalPass(PassRegistry&);
66 void initializeAddDiscriminatorsPass(PassRegistry&);
67 void initializeADCEPass(PassRegistry&);
68 void initializeBDCEPass(PassRegistry&);
69 void initializeAliasAnalysisAnalysisGroup(PassRegistry&);
70 void initializeAliasAnalysisCounterPass(PassRegistry&);
71 void initializeAliasDebuggerPass(PassRegistry&);
72 void initializeAliasSetPrinterPass(PassRegistry&);
73 void initializeAlwaysInlinerPass(PassRegistry&);
74 void initializeArgPromotionPass(PassRegistry&);
75 void initializeAtomicExpandPass(PassRegistry&);
76 void initializeSampleProfileLoaderPass(PassRegistry&);
77 void initializeAlignmentFromAssumptionsPass(PassRegistry&);
78 void initializeBarrierNoopPass(PassRegistry&);
79 void initializeBasicAliasAnalysisPass(PassRegistry&);
80 void initializeCallGraphWrapperPassPass(PassRegistry &);
81 void initializeBlockExtractorPassPass(PassRegistry&);
82 void initializeBlockFrequencyInfoPass(PassRegistry&);
83 void initializeBoundsCheckingPass(PassRegistry&);
84 void initializeBranchFolderPassPass(PassRegistry&);
85 void initializeBranchProbabilityInfoPass(PassRegistry&);
86 void initializeBreakCriticalEdgesPass(PassRegistry&);
87 void initializeCallGraphPrinterPass(PassRegistry&);
88 void initializeCallGraphViewerPass(PassRegistry&);
89 void initializeCFGOnlyPrinterPass(PassRegistry&);
90 void initializeCFGOnlyViewerPass(PassRegistry&);
91 void initializeCFGPrinterPass(PassRegistry&);
92 void initializeCFGSimplifyPassPass(PassRegistry&);
93 void initializeCFLAliasAnalysisPass(PassRegistry&);
94 void initializeForwardControlFlowIntegrityPass(PassRegistry&);
95 void initializeFlattenCFGPassPass(PassRegistry&);
96 void initializeStructurizeCFGPass(PassRegistry&);
97 void initializeCFGViewerPass(PassRegistry&);
98 void initializeConstantHoistingPass(PassRegistry&);
99 void initializeCodeGenPreparePass(PassRegistry&);
100 void initializeConstantMergePass(PassRegistry&);
101 void initializeConstantPropagationPass(PassRegistry&);
102 void initializeMachineCopyPropagationPass(PassRegistry&);
103 void initializeCostModelAnalysisPass(PassRegistry&);
104 void initializeCorrelatedValuePropagationPass(PassRegistry&);
105 void initializeDAEPass(PassRegistry&);
106 void initializeDAHPass(PassRegistry&);
107 void initializeDCEPass(PassRegistry&);
108 void initializeDSEPass(PassRegistry&);
109 void initializeDeadInstEliminationPass(PassRegistry&);
110 void initializeDeadMachineInstructionElimPass(PassRegistry&);
111 void initializeDelinearizationPass(PassRegistry &);
112 void initializeDependenceAnalysisPass(PassRegistry&);
113 void initializeDivergenceAnalysisPass(PassRegistry&);
114 void initializeDomOnlyPrinterPass(PassRegistry&);
115 void initializeDomOnlyViewerPass(PassRegistry&);
116 void initializeDomPrinterPass(PassRegistry&);
117 void initializeDomViewerPass(PassRegistry&);
118 void initializeDominanceFrontierPass(PassRegistry&);
119 void initializeDominatorTreeWrapperPassPass(PassRegistry&);
120 void initializeEarlyIfConverterPass(PassRegistry&);
121 void initializeEdgeBundlesPass(PassRegistry&);
122 void initializeExpandPostRAPass(PassRegistry&);
123 void initializeGCOVProfilerPass(PassRegistry&);
124 void initializeInstrProfilingPass(PassRegistry&);
125 void initializeAddressSanitizerPass(PassRegistry&);
126 void initializeAddressSanitizerModulePass(PassRegistry&);
127 void initializeMemorySanitizerPass(PassRegistry&);
128 void initializeThreadSanitizerPass(PassRegistry&);
129 void initializeSanitizerCoverageModulePass(PassRegistry&);
130 void initializeDataFlowSanitizerPass(PassRegistry&);
131 void initializeScalarizerPass(PassRegistry&);
132 void initializeEarlyCSELegacyPassPass(PassRegistry &);
133 void initializeExpandISelPseudosPass(PassRegistry&);
134 void initializeFunctionAttrsPass(PassRegistry&);
135 void initializeGCMachineCodeAnalysisPass(PassRegistry&);
136 void initializeGCModuleInfoPass(PassRegistry&);
137 void initializeGVNPass(PassRegistry&);
138 void initializeGlobalDCEPass(PassRegistry&);
139 void initializeGlobalOptPass(PassRegistry&);
140 void initializeGlobalsModRefPass(PassRegistry&);
141 void initializeIPCPPass(PassRegistry&);
142 void initializeIPSCCPPass(PassRegistry&);
143 void initializeIVUsersPass(PassRegistry&);
144 void initializeIfConverterPass(PassRegistry&);
145 void initializeInductiveRangeCheckEliminationPass(PassRegistry&);
146 void initializeIndVarSimplifyPass(PassRegistry&);
147 void initializeInlineCostAnalysisPass(PassRegistry&);
148 void initializeInstructionCombiningPassPass(PassRegistry&);
149 void initializeInstCountPass(PassRegistry&);
150 void initializeInstNamerPass(PassRegistry&);
151 void initializeInternalizePassPass(PassRegistry&);
152 void initializeIntervalPartitionPass(PassRegistry&);
153 void initializeJumpThreadingPass(PassRegistry&);
154 void initializeLCSSAPass(PassRegistry&);
155 void initializeLICMPass(PassRegistry&);
156 void initializeLazyValueInfoPass(PassRegistry&);
157 void initializeLibCallAliasAnalysisPass(PassRegistry&);
158 void initializeLintPass(PassRegistry&);
159 void initializeLiveDebugVariablesPass(PassRegistry&);
160 void initializeLiveIntervalsPass(PassRegistry&);
161 void initializeLiveRegMatrixPass(PassRegistry&);
162 void initializeLiveStacksPass(PassRegistry&);
163 void initializeLiveVariablesPass(PassRegistry&);
164 void initializeLoaderPassPass(PassRegistry&);
165 void initializeLocalStackSlotPassPass(PassRegistry&);
166 void initializeLoopDeletionPass(PassRegistry&);
167 void initializeLoopExtractorPass(PassRegistry&);
168 void initializeLoopInfoWrapperPassPass(PassRegistry&);
169 void initializeLoopInterchangePass(PassRegistry &);
170 void initializeLoopInstSimplifyPass(PassRegistry&);
171 void initializeLoopRotatePass(PassRegistry&);
172 void initializeLoopSimplifyPass(PassRegistry&);
173 void initializeLoopStrengthReducePass(PassRegistry&);
174 void initializeGlobalMergePass(PassRegistry&);
175 void initializeLoopRerollPass(PassRegistry&);
176 void initializeLoopUnrollPass(PassRegistry&);
177 void initializeLoopUnswitchPass(PassRegistry&);
178 void initializeLoopIdiomRecognizePass(PassRegistry&);
179 void initializeLowerAtomicPass(PassRegistry&);
180 void initializeLowerBitSetsPass(PassRegistry&);
181 void initializeLowerExpectIntrinsicPass(PassRegistry&);
182 void initializeLowerIntrinsicsPass(PassRegistry&);
183 void initializeLowerInvokePass(PassRegistry&);
184 void initializeLowerSwitchPass(PassRegistry&);
185 void initializeMachineBlockFrequencyInfoPass(PassRegistry&);
186 void initializeMachineBlockPlacementPass(PassRegistry&);
187 void initializeMachineBlockPlacementStatsPass(PassRegistry&);
188 void initializeMachineBranchProbabilityInfoPass(PassRegistry&);
189 void initializeMachineCSEPass(PassRegistry&);
190 void initializeMachineDominatorTreePass(PassRegistry&);
191 void initializeMachineDominanceFrontierPass(PassRegistry&);
192 void initializeMachinePostDominatorTreePass(PassRegistry&);
193 void initializeMachineLICMPass(PassRegistry&);
194 void initializeMachineLoopInfoPass(PassRegistry&);
195 void initializeMachineModuleInfoPass(PassRegistry&);
196 void initializeMachineRegionInfoPassPass(PassRegistry&);
197 void initializeMachineSchedulerPass(PassRegistry&);
198 void initializeMachineSinkingPass(PassRegistry&);
199 void initializeMachineTraceMetricsPass(PassRegistry&);
200 void initializeMachineVerifierPassPass(PassRegistry&);
201 void initializeMemCpyOptPass(PassRegistry&);
202 void initializeMemDepPrinterPass(PassRegistry&);
203 void initializeMemDerefPrinterPass(PassRegistry&);
204 void initializeMemoryDependenceAnalysisPass(PassRegistry&);
205 void initializeMergedLoadStoreMotionPass(PassRegistry &);
206 void initializeMetaRenamerPass(PassRegistry&);
207 void initializeMergeFunctionsPass(PassRegistry&);
208 void initializeModuleDebugInfoPrinterPass(PassRegistry&);
209 void initializeNaryReassociatePass(PassRegistry&);
210 void initializeNoAAPass(PassRegistry&);
211 void initializeObjCARCAliasAnalysisPass(PassRegistry&);
212 void initializeObjCARCAPElimPass(PassRegistry&);
213 void initializeObjCARCExpandPass(PassRegistry&);
214 void initializeObjCARCContractPass(PassRegistry&);
215 void initializeObjCARCOptPass(PassRegistry&);
216 void initializePAEvalPass(PassRegistry &);
217 void initializeOptimizePHIsPass(PassRegistry&);
218 void initializePartiallyInlineLibCallsPass(PassRegistry&);
219 void initializePEIPass(PassRegistry&);
220 void initializePHIEliminationPass(PassRegistry&);
221 void initializePartialInlinerPass(PassRegistry&);
222 void initializePeepholeOptimizerPass(PassRegistry&);
223 void initializePostDomOnlyPrinterPass(PassRegistry&);
224 void initializePostDomOnlyViewerPass(PassRegistry&);
225 void initializePostDomPrinterPass(PassRegistry&);
226 void initializePostDomViewerPass(PassRegistry&);
227 void initializePostDominatorTreePass(PassRegistry&);
228 void initializePostRASchedulerPass(PassRegistry&);
229 void initializePostMachineSchedulerPass(PassRegistry&);
230 void initializePrintFunctionPassWrapperPass(PassRegistry&);
231 void initializePrintModulePassWrapperPass(PassRegistry&);
232 void initializePrintBasicBlockPassPass(PassRegistry&);
233 void initializeProcessImplicitDefsPass(PassRegistry&);
234 void initializePromotePassPass(PassRegistry&);
235 void initializePruneEHPass(PassRegistry&);
236 void initializeReassociatePass(PassRegistry&);
237 void initializeRegToMemPass(PassRegistry&);
238 void initializeRegionInfoPassPass(PassRegistry&);
239 void initializeRegionOnlyPrinterPass(PassRegistry&);
240 void initializeRegionOnlyViewerPass(PassRegistry&);
241 void initializeRegionPrinterPass(PassRegistry&);
242 void initializeRegionViewerPass(PassRegistry&);
243 void initializeRewriteStatepointsForGCPass(PassRegistry&);
244 void initializeSCCPPass(PassRegistry&);
245 void initializeSROAPass(PassRegistry&);
246 void initializeSROA_DTPass(PassRegistry&);
247 void initializeSROA_SSAUpPass(PassRegistry&);
248 void initializeScalarEvolutionAliasAnalysisPass(PassRegistry&);
249 void initializeScalarEvolutionPass(PassRegistry&);
250 void initializeSimpleInlinerPass(PassRegistry&);
251 void initializeShadowStackGCLoweringPass(PassRegistry&);
252 void initializeRegisterCoalescerPass(PassRegistry&);
253 void initializeSingleLoopExtractorPass(PassRegistry&);
254 void initializeSinkingPass(PassRegistry&);
255 void initializeSeparateConstOffsetFromGEPPass(PassRegistry &);
256 void initializeSlotIndexesPass(PassRegistry&);
257 void initializeSpillPlacementPass(PassRegistry&);
258 void initializeStackProtectorPass(PassRegistry&);
259 void initializeStackColoringPass(PassRegistry&);
260 void initializeStackSlotColoringPass(PassRegistry&);
261 void initializeStraightLineStrengthReducePass(PassRegistry &);
262 void initializeStripDeadDebugInfoPass(PassRegistry&);
263 void initializeStripDeadPrototypesPassPass(PassRegistry&);
264 void initializeStripDebugDeclarePass(PassRegistry&);
265 void initializeStripNonDebugSymbolsPass(PassRegistry&);
266 void initializeStripSymbolsPass(PassRegistry&);
267 void initializeTailCallElimPass(PassRegistry&);
268 void initializeTailDuplicatePassPass(PassRegistry&);
269 void initializeTargetPassConfigPass(PassRegistry&);
270 void initializeDataLayoutPassPass(PassRegistry &);
271 void initializeTargetTransformInfoWrapperPassPass(PassRegistry &);
272 void initializeTargetLibraryInfoWrapperPassPass(PassRegistry &);
273 void initializeAssumptionCacheTrackerPass(PassRegistry &);
274 void initializeTwoAddressInstructionPassPass(PassRegistry&);
275 void initializeTypeBasedAliasAnalysisPass(PassRegistry&);
276 void initializeScopedNoAliasAAPass(PassRegistry&);
277 void initializeUnifyFunctionExitNodesPass(PassRegistry&);
278 void initializeUnreachableBlockElimPass(PassRegistry&);
279 void initializeUnreachableMachineBlockElimPass(PassRegistry&);
280 void initializeVerifierLegacyPassPass(PassRegistry&);
281 void initializeVirtRegMapPass(PassRegistry&);
282 void initializeVirtRegRewriterPass(PassRegistry&);
283 void initializeInstSimplifierPass(PassRegistry&);
284 void initializeUnpackMachineBundlesPass(PassRegistry&);
285 void initializeFinalizeMachineBundlesPass(PassRegistry&);
286 void initializeLoopAccessAnalysisPass(PassRegistry&);
287 void initializeLoopVectorizePass(PassRegistry&);
288 void initializeSLPVectorizerPass(PassRegistry&);
289 void initializeBBVectorizePass(PassRegistry&);
290 void initializeMachineFunctionPrinterPassPass(PassRegistry&);
291 void initializeStackMapLivenessPass(PassRegistry&);
292 void initializeMachineCombinerPass(PassRegistry &);
293 void initializeLoadCombinePass(PassRegistry&);
294 void initializeRewriteSymbolsPass(PassRegistry&);
295 void initializeWinEHPreparePass(PassRegistry&);
296 void initializePlaceBackedgeSafepointsImplPass(PassRegistry&);
297 void initializePlaceSafepointsPass(PassRegistry&);
298 void initializeDwarfEHPreparePass(PassRegistry&);
299 void initializeFloat2IntPass(PassRegistry&);
300 }
301 
302 #endif
303