1218885Sdim//===- llvm/InitializePasses.h -------- Initialize All Passes ---*- C++ -*-===//
2218885Sdim//
3218885Sdim//                      The LLVM Compiler Infrastructure
4218885Sdim//
5218885Sdim// This file is distributed under the University of Illinois Open Source
6218885Sdim// License. See LICENSE.TXT for details.
7218885Sdim//
8218885Sdim//===----------------------------------------------------------------------===//
9218885Sdim//
10218885Sdim// This file contains the declarations for the pass initialization routines
11218885Sdim// for the entire LLVM project.
12218885Sdim//
13218885Sdim//===----------------------------------------------------------------------===//
14218885Sdim
15218885Sdim#ifndef LLVM_INITIALIZEPASSES_H
16218885Sdim#define LLVM_INITIALIZEPASSES_H
17218885Sdim
18218885Sdimnamespace llvm {
19218885Sdim
20218885Sdimclass PassRegistry;
21218885Sdim
22218885Sdim/// initializeCore - Initialize all passes linked into the
23218885Sdim/// TransformUtils library.
24218885Sdimvoid initializeCore(PassRegistry&);
25218885Sdim
26218885Sdim/// initializeTransformUtils - Initialize all passes linked into the
27218885Sdim/// TransformUtils library.
28218885Sdimvoid initializeTransformUtils(PassRegistry&);
29218885Sdim
30218885Sdim/// initializeScalarOpts - Initialize all passes linked into the
31218885Sdim/// ScalarOpts library.
32218885Sdimvoid initializeScalarOpts(PassRegistry&);
33218885Sdim
34249423Sdim/// initializeObjCARCOpts - Initialize all passes linked into the ObjCARCOpts
35249423Sdim/// library.
36249423Sdimvoid initializeObjCARCOpts(PassRegistry&);
37249423Sdim
38234353Sdim/// initializeVectorization - Initialize all passes linked into the
39234353Sdim/// Vectorize library.
40234353Sdimvoid initializeVectorization(PassRegistry&);
41234353Sdim
42218885Sdim/// initializeInstCombine - Initialize all passes linked into the
43218885Sdim/// ScalarOpts library.
44218885Sdimvoid initializeInstCombine(PassRegistry&);
45218885Sdim
46218885Sdim/// initializeIPO - Initialize all passes linked into the IPO library.
47218885Sdimvoid initializeIPO(PassRegistry&);
48218885Sdim
49218885Sdim/// initializeInstrumentation - Initialize all passes linked into the
50218885Sdim/// Instrumentation library.
51218885Sdimvoid initializeInstrumentation(PassRegistry&);
52218885Sdim
53218885Sdim/// initializeAnalysis - Initialize all passes linked into the Analysis library.
54218885Sdimvoid initializeAnalysis(PassRegistry&);
55218885Sdim
56218885Sdim/// initializeIPA - Initialize all passes linked into the IPA library.
57218885Sdimvoid initializeIPA(PassRegistry&);
58218885Sdim
59218885Sdim/// initializeCodeGen - Initialize all passes linked into the CodeGen library.
60218885Sdimvoid initializeCodeGen(PassRegistry&);
61218885Sdim
62218885Sdim/// initializeCodeGen - Initialize all passes linked into the CodeGen library.
63218885Sdimvoid initializeTarget(PassRegistry&);
64218885Sdim
65218885Sdimvoid initializeAAEvalPass(PassRegistry&);
66218885Sdimvoid initializeADCEPass(PassRegistry&);
67218885Sdimvoid initializeAliasAnalysisAnalysisGroup(PassRegistry&);
68218885Sdimvoid initializeAliasAnalysisCounterPass(PassRegistry&);
69218885Sdimvoid initializeAliasDebuggerPass(PassRegistry&);
70218885Sdimvoid initializeAliasSetPrinterPass(PassRegistry&);
71218885Sdimvoid initializeAlwaysInlinerPass(PassRegistry&);
72218885Sdimvoid initializeArgPromotionPass(PassRegistry&);
73263508Sdimvoid initializeSampleProfileLoaderPass(PassRegistry&);
74243830Sdimvoid initializeBarrierNoopPass(PassRegistry&);
75218885Sdimvoid initializeBasicAliasAnalysisPass(PassRegistry&);
76263508Sdimvoid initializeCallGraphPass(PassRegistry&);
77249423Sdimvoid initializeBasicTTIPass(PassRegistry&);
78218885Sdimvoid initializeBlockExtractorPassPass(PassRegistry&);
79226633Sdimvoid initializeBlockFrequencyInfoPass(PassRegistry&);
80239462Sdimvoid initializeBoundsCheckingPass(PassRegistry&);
81234353Sdimvoid initializeBranchFolderPassPass(PassRegistry&);
82223017Sdimvoid initializeBranchProbabilityInfoPass(PassRegistry&);
83218885Sdimvoid initializeBreakCriticalEdgesPass(PassRegistry&);
84249423Sdimvoid initializeCallGraphPrinterPass(PassRegistry&);
85249423Sdimvoid initializeCallGraphViewerPass(PassRegistry&);
86218885Sdimvoid initializeCFGOnlyPrinterPass(PassRegistry&);
87218885Sdimvoid initializeCFGOnlyViewerPass(PassRegistry&);
88218885Sdimvoid initializeCFGPrinterPass(PassRegistry&);
89218885Sdimvoid initializeCFGSimplifyPassPass(PassRegistry&);
90263508Sdimvoid initializeFlattenCFGPassPass(PassRegistry&);
91263508Sdimvoid initializeStructurizeCFGPass(PassRegistry&);
92218885Sdimvoid initializeCFGViewerPass(PassRegistry&);
93218885Sdimvoid initializeCodeGenPreparePass(PassRegistry&);
94218885Sdimvoid initializeConstantMergePass(PassRegistry&);
95218885Sdimvoid initializeConstantPropagationPass(PassRegistry&);
96234353Sdimvoid initializeMachineCopyPropagationPass(PassRegistry&);
97243830Sdimvoid initializeCostModelAnalysisPass(PassRegistry&);
98218885Sdimvoid initializeCorrelatedValuePropagationPass(PassRegistry&);
99218885Sdimvoid initializeDAEPass(PassRegistry&);
100218885Sdimvoid initializeDAHPass(PassRegistry&);
101218885Sdimvoid initializeDCEPass(PassRegistry&);
102218885Sdimvoid initializeDSEPass(PassRegistry&);
103263508Sdimvoid initializeDebugIRPass(PassRegistry&);
104218885Sdimvoid initializeDeadInstEliminationPass(PassRegistry&);
105218885Sdimvoid initializeDeadMachineInstructionElimPass(PassRegistry&);
106263508Sdimvoid initializeDelinearizationPass(PassRegistry &);
107243830Sdimvoid initializeDependenceAnalysisPass(PassRegistry&);
108218885Sdimvoid initializeDomOnlyPrinterPass(PassRegistry&);
109218885Sdimvoid initializeDomOnlyViewerPass(PassRegistry&);
110218885Sdimvoid initializeDomPrinterPass(PassRegistry&);
111218885Sdimvoid initializeDomViewerPass(PassRegistry&);
112218885Sdimvoid initializeDominanceFrontierPass(PassRegistry&);
113218885Sdimvoid initializeDominatorTreePass(PassRegistry&);
114239462Sdimvoid initializeEarlyIfConverterPass(PassRegistry&);
115218885Sdimvoid initializeEdgeBundlesPass(PassRegistry&);
116234353Sdimvoid initializeExpandPostRAPass(PassRegistry&);
117221345Sdimvoid initializeGCOVProfilerPass(PassRegistry&);
118234353Sdimvoid initializeAddressSanitizerPass(PassRegistry&);
119249423Sdimvoid initializeAddressSanitizerModulePass(PassRegistry&);
120249423Sdimvoid initializeMemorySanitizerPass(PassRegistry&);
121234353Sdimvoid initializeThreadSanitizerPass(PassRegistry&);
122263508Sdimvoid initializeDataFlowSanitizerPass(PassRegistry&);
123218885Sdimvoid initializeEarlyCSEPass(PassRegistry&);
124218885Sdimvoid initializeExpandISelPseudosPass(PassRegistry&);
125218885Sdimvoid initializeFindUsedTypesPass(PassRegistry&);
126218885Sdimvoid initializeFunctionAttrsPass(PassRegistry&);
127234353Sdimvoid initializeGCMachineCodeAnalysisPass(PassRegistry&);
128218885Sdimvoid initializeGCModuleInfoPass(PassRegistry&);
129218885Sdimvoid initializeGVNPass(PassRegistry&);
130218885Sdimvoid initializeGlobalDCEPass(PassRegistry&);
131218885Sdimvoid initializeGlobalOptPass(PassRegistry&);
132218885Sdimvoid initializeGlobalsModRefPass(PassRegistry&);
133218885Sdimvoid initializeIPCPPass(PassRegistry&);
134218885Sdimvoid initializeIPSCCPPass(PassRegistry&);
135218885Sdimvoid initializeIVUsersPass(PassRegistry&);
136218885Sdimvoid initializeIfConverterPass(PassRegistry&);
137218885Sdimvoid initializeIndVarSimplifyPass(PassRegistry&);
138249423Sdimvoid initializeInlineCostAnalysisPass(PassRegistry&);
139218885Sdimvoid initializeInstCombinerPass(PassRegistry&);
140218885Sdimvoid initializeInstCountPass(PassRegistry&);
141218885Sdimvoid initializeInstNamerPass(PassRegistry&);
142218885Sdimvoid initializeInternalizePassPass(PassRegistry&);
143218885Sdimvoid initializeIntervalPartitionPass(PassRegistry&);
144218885Sdimvoid initializeJumpThreadingPass(PassRegistry&);
145218885Sdimvoid initializeLCSSAPass(PassRegistry&);
146218885Sdimvoid initializeLICMPass(PassRegistry&);
147218885Sdimvoid initializeLazyValueInfoPass(PassRegistry&);
148218885Sdimvoid initializeLibCallAliasAnalysisPass(PassRegistry&);
149218885Sdimvoid initializeLintPass(PassRegistry&);
150218885Sdimvoid initializeLiveDebugVariablesPass(PassRegistry&);
151218885Sdimvoid initializeLiveIntervalsPass(PassRegistry&);
152239462Sdimvoid initializeLiveRegMatrixPass(PassRegistry&);
153218885Sdimvoid initializeLiveStacksPass(PassRegistry&);
154218885Sdimvoid initializeLiveVariablesPass(PassRegistry&);
155218885Sdimvoid initializeLoaderPassPass(PassRegistry&);
156234353Sdimvoid initializeLocalStackSlotPassPass(PassRegistry&);
157218885Sdimvoid initializeLoopDeletionPass(PassRegistry&);
158218885Sdimvoid initializeLoopExtractorPass(PassRegistry&);
159218885Sdimvoid initializeLoopInfoPass(PassRegistry&);
160218885Sdimvoid initializeLoopInstSimplifyPass(PassRegistry&);
161218885Sdimvoid initializeLoopRotatePass(PassRegistry&);
162218885Sdimvoid initializeLoopSimplifyPass(PassRegistry&);
163218885Sdimvoid initializeLoopStrengthReducePass(PassRegistry&);
164234353Sdimvoid initializeGlobalMergePass(PassRegistry&);
165263508Sdimvoid initializeLoopRerollPass(PassRegistry&);
166218885Sdimvoid initializeLoopUnrollPass(PassRegistry&);
167218885Sdimvoid initializeLoopUnswitchPass(PassRegistry&);
168218885Sdimvoid initializeLoopIdiomRecognizePass(PassRegistry&);
169218885Sdimvoid initializeLowerAtomicPass(PassRegistry&);
170224145Sdimvoid initializeLowerExpectIntrinsicPass(PassRegistry&);
171218885Sdimvoid initializeLowerIntrinsicsPass(PassRegistry&);
172218885Sdimvoid initializeLowerInvokePass(PassRegistry&);
173218885Sdimvoid initializeLowerSwitchPass(PassRegistry&);
174226633Sdimvoid initializeMachineBlockFrequencyInfoPass(PassRegistry&);
175234353Sdimvoid initializeMachineBlockPlacementPass(PassRegistry&);
176234353Sdimvoid initializeMachineBlockPlacementStatsPass(PassRegistry&);
177224145Sdimvoid initializeMachineBranchProbabilityInfoPass(PassRegistry&);
178218885Sdimvoid initializeMachineCSEPass(PassRegistry&);
179218885Sdimvoid initializeMachineDominatorTreePass(PassRegistry&);
180243830Sdimvoid initializeMachinePostDominatorTreePass(PassRegistry&);
181218885Sdimvoid initializeMachineLICMPass(PassRegistry&);
182218885Sdimvoid initializeMachineLoopInfoPass(PassRegistry&);
183218885Sdimvoid initializeMachineModuleInfoPass(PassRegistry&);
184234353Sdimvoid initializeMachineSchedulerPass(PassRegistry&);
185218885Sdimvoid initializeMachineSinkingPass(PassRegistry&);
186239462Sdimvoid initializeMachineTraceMetricsPass(PassRegistry&);
187218885Sdimvoid initializeMachineVerifierPassPass(PassRegistry&);
188218885Sdimvoid initializeMemCpyOptPass(PassRegistry&);
189218885Sdimvoid initializeMemDepPrinterPass(PassRegistry&);
190218885Sdimvoid initializeMemoryDependenceAnalysisPass(PassRegistry&);
191243830Sdimvoid initializeMetaRenamerPass(PassRegistry&);
192218885Sdimvoid initializeMergeFunctionsPass(PassRegistry&);
193218885Sdimvoid initializeModuleDebugInfoPrinterPass(PassRegistry&);
194218885Sdimvoid initializeNoAAPass(PassRegistry&);
195224145Sdimvoid initializeObjCARCAliasAnalysisPass(PassRegistry&);
196234353Sdimvoid initializeObjCARCAPElimPass(PassRegistry&);
197224145Sdimvoid initializeObjCARCExpandPass(PassRegistry&);
198224145Sdimvoid initializeObjCARCContractPass(PassRegistry&);
199224145Sdimvoid initializeObjCARCOptPass(PassRegistry&);
200218885Sdimvoid initializeOptimizePHIsPass(PassRegistry&);
201263508Sdimvoid initializePartiallyInlineLibCallsPass(PassRegistry&);
202218885Sdimvoid initializePEIPass(PassRegistry&);
203218885Sdimvoid initializePHIEliminationPass(PassRegistry&);
204218885Sdimvoid initializePartialInlinerPass(PassRegistry&);
205218885Sdimvoid initializePeepholeOptimizerPass(PassRegistry&);
206218885Sdimvoid initializePostDomOnlyPrinterPass(PassRegistry&);
207218885Sdimvoid initializePostDomOnlyViewerPass(PassRegistry&);
208218885Sdimvoid initializePostDomPrinterPass(PassRegistry&);
209218885Sdimvoid initializePostDomViewerPass(PassRegistry&);
210218885Sdimvoid initializePostDominatorTreePass(PassRegistry&);
211234353Sdimvoid initializePostRASchedulerPass(PassRegistry&);
212218885Sdimvoid initializePreVerifierPass(PassRegistry&);
213218885Sdimvoid initializePrintFunctionPassPass(PassRegistry&);
214218885Sdimvoid initializePrintModulePassPass(PassRegistry&);
215249423Sdimvoid initializePrintBasicBlockPassPass(PassRegistry&);
216218885Sdimvoid initializeProcessImplicitDefsPass(PassRegistry&);
217218885Sdimvoid initializePromotePassPass(PassRegistry&);
218218885Sdimvoid initializePruneEHPass(PassRegistry&);
219218885Sdimvoid initializeReassociatePass(PassRegistry&);
220218885Sdimvoid initializeRegToMemPass(PassRegistry&);
221218885Sdimvoid initializeRegionInfoPass(PassRegistry&);
222218885Sdimvoid initializeRegionOnlyPrinterPass(PassRegistry&);
223218885Sdimvoid initializeRegionOnlyViewerPass(PassRegistry&);
224218885Sdimvoid initializeRegionPrinterPass(PassRegistry&);
225218885Sdimvoid initializeRegionViewerPass(PassRegistry&);
226218885Sdimvoid initializeSCCPPass(PassRegistry&);
227243830Sdimvoid initializeSROAPass(PassRegistry&);
228218885Sdimvoid initializeSROA_DTPass(PassRegistry&);
229218885Sdimvoid initializeSROA_SSAUpPass(PassRegistry&);
230218885Sdimvoid initializeScalarEvolutionAliasAnalysisPass(PassRegistry&);
231218885Sdimvoid initializeScalarEvolutionPass(PassRegistry&);
232218885Sdimvoid initializeSimpleInlinerPass(PassRegistry&);
233224145Sdimvoid initializeRegisterCoalescerPass(PassRegistry&);
234218885Sdimvoid initializeSingleLoopExtractorPass(PassRegistry&);
235218885Sdimvoid initializeSinkingPass(PassRegistry&);
236218885Sdimvoid initializeSlotIndexesPass(PassRegistry&);
237218885Sdimvoid initializeSpillPlacementPass(PassRegistry&);
238218885Sdimvoid initializeStackProtectorPass(PassRegistry&);
239243830Sdimvoid initializeStackColoringPass(PassRegistry&);
240218885Sdimvoid initializeStackSlotColoringPass(PassRegistry&);
241218885Sdimvoid initializeStripDeadDebugInfoPass(PassRegistry&);
242218885Sdimvoid initializeStripDeadPrototypesPassPass(PassRegistry&);
243218885Sdimvoid initializeStripDebugDeclarePass(PassRegistry&);
244218885Sdimvoid initializeStripNonDebugSymbolsPass(PassRegistry&);
245218885Sdimvoid initializeStripSymbolsPass(PassRegistry&);
246218885Sdimvoid initializeTailCallElimPass(PassRegistry&);
247234353Sdimvoid initializeTailDuplicatePassPass(PassRegistry&);
248234353Sdimvoid initializeTargetPassConfigPass(PassRegistry&);
249243830Sdimvoid initializeDataLayoutPass(PassRegistry&);
250249423Sdimvoid initializeTargetTransformInfoAnalysisGroup(PassRegistry&);
251249423Sdimvoid initializeNoTTIPass(PassRegistry&);
252218885Sdimvoid initializeTargetLibraryInfoPass(PassRegistry&);
253218885Sdimvoid initializeTwoAddressInstructionPassPass(PassRegistry&);
254218885Sdimvoid initializeTypeBasedAliasAnalysisPass(PassRegistry&);
255218885Sdimvoid initializeUnifyFunctionExitNodesPass(PassRegistry&);
256218885Sdimvoid initializeUnreachableBlockElimPass(PassRegistry&);
257218885Sdimvoid initializeUnreachableMachineBlockElimPass(PassRegistry&);
258218885Sdimvoid initializeVerifierPass(PassRegistry&);
259218885Sdimvoid initializeVirtRegMapPass(PassRegistry&);
260239462Sdimvoid initializeVirtRegRewriterPass(PassRegistry&);
261218885Sdimvoid initializeInstSimplifierPass(PassRegistry&);
262234353Sdimvoid initializeUnpackMachineBundlesPass(PassRegistry&);
263234353Sdimvoid initializeFinalizeMachineBundlesPass(PassRegistry&);
264243830Sdimvoid initializeLoopVectorizePass(PassRegistry&);
265251662Sdimvoid initializeSLPVectorizerPass(PassRegistry&);
266234353Sdimvoid initializeBBVectorizePass(PassRegistry&);
267239462Sdimvoid initializeMachineFunctionPrinterPassPass(PassRegistry&);
268218885Sdim}
269218885Sdim
270218885Sdim#endif
271