blob: 4f89179a03ded4a642d1725910712e388943f62a [file] [log] [blame]
Andrew Scull5e1ddfa2018-08-14 10:06:54 +01001//===- llvm/InitializePasses.h - Initialize All Passes ----------*- C++ -*-===//
2//
Andrew Walbran16937d02019-10-22 13:54:20 +01003// 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
Andrew Scull5e1ddfa2018-08-14 10:06:54 +01006//
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
17namespace llvm {
18
19class PassRegistry;
20
21/// Initialize all passes linked into the TransformUtils library.
22void initializeCore(PassRegistry&);
23
24/// Initialize all passes linked into the TransformUtils library.
25void initializeTransformUtils(PassRegistry&);
26
27/// Initialize all passes linked into the ScalarOpts library.
28void initializeScalarOpts(PassRegistry&);
29
30/// Initialize all passes linked into the ObjCARCOpts library.
31void initializeObjCARCOpts(PassRegistry&);
32
33/// Initialize all passes linked into the Vectorize library.
34void initializeVectorization(PassRegistry&);
35
36/// Initialize all passes linked into the InstCombine library.
37void initializeInstCombine(PassRegistry&);
38
Andrew Scullcdfcccc2018-10-05 20:58:37 +010039/// Initialize all passes linked into the AggressiveInstCombine library.
40void initializeAggressiveInstCombine(PassRegistry&);
41
Andrew Scull5e1ddfa2018-08-14 10:06:54 +010042/// Initialize all passes linked into the IPO library.
43void initializeIPO(PassRegistry&);
44
45/// Initialize all passes linked into the Instrumentation library.
46void initializeInstrumentation(PassRegistry&);
47
48/// Initialize all passes linked into the Analysis library.
49void initializeAnalysis(PassRegistry&);
50
51/// Initialize all passes linked into the Coroutines library.
52void initializeCoroutines(PassRegistry&);
53
54/// Initialize all passes linked into the CodeGen library.
55void initializeCodeGen(PassRegistry&);
56
57/// Initialize all passes linked into the GlobalISel library.
58void initializeGlobalISel(PassRegistry&);
59
60/// Initialize all passes linked into the CodeGen library.
61void initializeTarget(PassRegistry&);
62
63void initializeAAEvalLegacyPassPass(PassRegistry&);
64void initializeAAResultsWrapperPassPass(PassRegistry&);
65void initializeADCELegacyPassPass(PassRegistry&);
66void initializeAddDiscriminatorsLegacyPassPass(PassRegistry&);
Andrew Walbran3d2c1972020-04-07 12:24:26 +010067void initializeModuleAddressSanitizerLegacyPassPass(PassRegistry &);
68void initializeASanGlobalsMetadataWrapperPassPass(PassRegistry &);
69void initializeAddressSanitizerLegacyPassPass(PassRegistry &);
Andrew Scull5e1ddfa2018-08-14 10:06:54 +010070void initializeAggressiveInstCombinerLegacyPassPass(PassRegistry&);
71void initializeAliasSetPrinterPass(PassRegistry&);
72void initializeAlignmentFromAssumptionsPass(PassRegistry&);
73void initializeAlwaysInlinerLegacyPassPass(PassRegistry&);
Olivier Deprezf4ef2d02021-04-20 13:36:24 +020074void initializeAssumeSimplifyPassLegacyPassPass(PassRegistry &);
75void initializeAssumeBuilderPassLegacyPassPass(PassRegistry &);
76void initializeAnnotation2MetadataLegacyPass(PassRegistry &);
77void initializeAnnotationRemarksLegacyPass(PassRegistry &);
78void initializeOpenMPOptLegacyPassPass(PassRegistry &);
Andrew Scull5e1ddfa2018-08-14 10:06:54 +010079void initializeArgPromotionPass(PassRegistry&);
80void initializeAssumptionCacheTrackerPass(PassRegistry&);
81void initializeAtomicExpandPass(PassRegistry&);
Andrew Walbran3d2c1972020-04-07 12:24:26 +010082void initializeAttributorLegacyPassPass(PassRegistry&);
Olivier Deprezf4ef2d02021-04-20 13:36:24 +020083void initializeAttributorCGSCCLegacyPassPass(PassRegistry &);
84void initializeBasicBlockSectionsPass(PassRegistry &);
Andrew Scull5e1ddfa2018-08-14 10:06:54 +010085void initializeBDCELegacyPassPass(PassRegistry&);
86void initializeBarrierNoopPass(PassRegistry&);
87void initializeBasicAAWrapperPassPass(PassRegistry&);
Olivier Deprezf4ef2d02021-04-20 13:36:24 +020088void initializeBlockExtractorLegacyPassPass(PassRegistry &);
Andrew Scull5e1ddfa2018-08-14 10:06:54 +010089void initializeBlockFrequencyInfoWrapperPassPass(PassRegistry&);
90void initializeBoundsCheckingLegacyPassPass(PassRegistry&);
91void initializeBranchFolderPassPass(PassRegistry&);
92void initializeBranchProbabilityInfoWrapperPassPass(PassRegistry&);
93void initializeBranchRelaxationPass(PassRegistry&);
94void initializeBreakCriticalEdgesPass(PassRegistry&);
95void initializeBreakFalseDepsPass(PassRegistry&);
Andrew Walbran16937d02019-10-22 13:54:20 +010096void initializeCanonicalizeAliasesLegacyPassPass(PassRegistry &);
Olivier Deprezf4ef2d02021-04-20 13:36:24 +020097void initializeCanonicalizeFreezeInLoopsPass(PassRegistry &);
Andrew Scull5e1ddfa2018-08-14 10:06:54 +010098void initializeCFGOnlyPrinterLegacyPassPass(PassRegistry&);
99void initializeCFGOnlyViewerLegacyPassPass(PassRegistry&);
100void initializeCFGPrinterLegacyPassPass(PassRegistry&);
101void initializeCFGSimplifyPassPass(PassRegistry&);
Olivier Deprezf4ef2d02021-04-20 13:36:24 +0200102void initializeCFGuardPass(PassRegistry&);
103void initializeCFGuardLongjmpPass(PassRegistry&);
Andrew Scull5e1ddfa2018-08-14 10:06:54 +0100104void initializeCFGViewerLegacyPassPass(PassRegistry&);
Andrew Scullcdfcccc2018-10-05 20:58:37 +0100105void initializeCFIInstrInserterPass(PassRegistry&);
Andrew Scull5e1ddfa2018-08-14 10:06:54 +0100106void initializeCFLAndersAAWrapperPassPass(PassRegistry&);
107void initializeCFLSteensAAWrapperPassPass(PassRegistry&);
Olivier Deprezf4ef2d02021-04-20 13:36:24 +0200108void initializeCGProfileLegacyPassPass(PassRegistry &);
Andrew Scull5e1ddfa2018-08-14 10:06:54 +0100109void initializeCallGraphDOTPrinterPass(PassRegistry&);
110void initializeCallGraphPrinterLegacyPassPass(PassRegistry&);
111void initializeCallGraphViewerPass(PassRegistry&);
112void initializeCallGraphWrapperPassPass(PassRegistry&);
Andrew Scullcdfcccc2018-10-05 20:58:37 +0100113void initializeCallSiteSplittingLegacyPassPass(PassRegistry&);
114void initializeCalledValuePropagationLegacyPassPass(PassRegistry &);
Olivier Deprezf4ef2d02021-04-20 13:36:24 +0200115void initializeCheckDebugMachineModulePass(PassRegistry &);
Andrew Scull5e1ddfa2018-08-14 10:06:54 +0100116void initializeCodeGenPreparePass(PassRegistry&);
117void initializeConstantHoistingLegacyPassPass(PassRegistry&);
Andrew Scull5e1ddfa2018-08-14 10:06:54 +0100118void initializeConstantMergeLegacyPassPass(PassRegistry&);
Olivier Deprezf4ef2d02021-04-20 13:36:24 +0200119void initializeConstraintEliminationPass(PassRegistry &);
Andrew Scull0372a572018-11-16 15:47:06 +0000120void initializeControlHeightReductionLegacyPassPass(PassRegistry&);
Andrew Scull5e1ddfa2018-08-14 10:06:54 +0100121void initializeCorrelatedValuePropagationPass(PassRegistry&);
122void initializeCostModelAnalysisPass(PassRegistry&);
Andrew Scull5e1ddfa2018-08-14 10:06:54 +0100123void initializeCrossDSOCFIPass(PassRegistry&);
124void initializeDAEPass(PassRegistry&);
125void initializeDAHPass(PassRegistry&);
126void initializeDCELegacyPassPass(PassRegistry&);
127void initializeDSELegacyPassPass(PassRegistry&);
Olivier Deprezf4ef2d02021-04-20 13:36:24 +0200128void initializeDataFlowSanitizerLegacyPassPass(PassRegistry &);
Andrew Scull5e1ddfa2018-08-14 10:06:54 +0100129void initializeDeadMachineInstructionElimPass(PassRegistry&);
Olivier Deprezf4ef2d02021-04-20 13:36:24 +0200130void initializeDebugifyMachineModulePass(PassRegistry &);
Andrew Scull5e1ddfa2018-08-14 10:06:54 +0100131void initializeDelinearizationPass(PassRegistry&);
132void initializeDemandedBitsWrapperPassPass(PassRegistry&);
133void initializeDependenceAnalysisPass(PassRegistry&);
134void initializeDependenceAnalysisWrapperPassPass(PassRegistry&);
135void initializeDetectDeadLanesPass(PassRegistry&);
Andrew Scull5e1ddfa2018-08-14 10:06:54 +0100136void initializeDivRemPairsLegacyPassPass(PassRegistry&);
137void initializeDomOnlyPrinterPass(PassRegistry&);
138void initializeDomOnlyViewerPass(PassRegistry&);
139void initializeDomPrinterPass(PassRegistry&);
140void initializeDomViewerPass(PassRegistry&);
141void initializeDominanceFrontierWrapperPassPass(PassRegistry&);
142void initializeDominatorTreeWrapperPassPass(PassRegistry&);
Olivier Deprezf4ef2d02021-04-20 13:36:24 +0200143void initializeDwarfEHPrepareLegacyPassPass(PassRegistry &);
Andrew Scull5e1ddfa2018-08-14 10:06:54 +0100144void initializeEarlyCSELegacyPassPass(PassRegistry&);
145void initializeEarlyCSEMemSSALegacyPassPass(PassRegistry&);
146void initializeEarlyIfConverterPass(PassRegistry&);
Olivier Deprezf4ef2d02021-04-20 13:36:24 +0200147void initializeEarlyIfPredicatorPass(PassRegistry &);
Andrew Scullcdfcccc2018-10-05 20:58:37 +0100148void initializeEarlyMachineLICMPass(PassRegistry&);
149void initializeEarlyTailDuplicatePass(PassRegistry&);
Andrew Scull5e1ddfa2018-08-14 10:06:54 +0100150void initializeEdgeBundlesPass(PassRegistry&);
Andrew Scull5e1ddfa2018-08-14 10:06:54 +0100151void initializeEliminateAvailableExternallyLegacyPassPass(PassRegistry&);
Andrew Scullcdfcccc2018-10-05 20:58:37 +0100152void initializeEntryExitInstrumenterPass(PassRegistry&);
Andrew Scull5e1ddfa2018-08-14 10:06:54 +0100153void initializeExpandMemCmpPassPass(PassRegistry&);
154void initializeExpandPostRAPass(PassRegistry&);
155void initializeExpandReductionsPass(PassRegistry&);
Andrew Walbran16937d02019-10-22 13:54:20 +0100156void initializeMakeGuardsExplicitLegacyPassPass(PassRegistry&);
Andrew Scull5e1ddfa2018-08-14 10:06:54 +0100157void initializeExternalAAWrapperPassPass(PassRegistry&);
158void initializeFEntryInserterPass(PassRegistry&);
Andrew Walbran3d2c1972020-04-07 12:24:26 +0100159void initializeFinalizeISelPass(PassRegistry&);
Andrew Scull5e1ddfa2018-08-14 10:06:54 +0100160void initializeFinalizeMachineBundlesPass(PassRegistry&);
Olivier Deprezf4ef2d02021-04-20 13:36:24 +0200161void initializeFixIrreduciblePass(PassRegistry &);
162void initializeFixupStatepointCallerSavedPass(PassRegistry&);
Andrew Scull5e1ddfa2018-08-14 10:06:54 +0100163void initializeFlattenCFGPassPass(PassRegistry&);
164void initializeFloat2IntLegacyPassPass(PassRegistry&);
165void initializeForceFunctionAttrsLegacyPassPass(PassRegistry&);
166void initializeForwardControlFlowIntegrityPass(PassRegistry&);
167void initializeFuncletLayoutPass(PassRegistry&);
168void initializeFunctionImportLegacyPassPass(PassRegistry&);
169void initializeGCMachineCodeAnalysisPass(PassRegistry&);
170void initializeGCModuleInfoPass(PassRegistry&);
171void initializeGCOVProfilerLegacyPassPass(PassRegistry&);
172void initializeGVNHoistLegacyPassPass(PassRegistry&);
173void initializeGVNLegacyPassPass(PassRegistry&);
174void initializeGVNSinkLegacyPassPass(PassRegistry&);
175void initializeGlobalDCELegacyPassPass(PassRegistry&);
176void initializeGlobalMergePass(PassRegistry&);
177void initializeGlobalOptLegacyPassPass(PassRegistry&);
178void initializeGlobalSplitPass(PassRegistry&);
179void initializeGlobalsAAWrapperPassPass(PassRegistry&);
180void initializeGuardWideningLegacyPassPass(PassRegistry&);
Andrew Walbran3d2c1972020-04-07 12:24:26 +0100181void initializeHardwareLoopsPass(PassRegistry&);
Olivier Deprezf4ef2d02021-04-20 13:36:24 +0200182void initializeMemProfilerLegacyPassPass(PassRegistry &);
Andrew Scull0372a572018-11-16 15:47:06 +0000183void initializeHotColdSplittingLegacyPassPass(PassRegistry&);
Andrew Walbran3d2c1972020-04-07 12:24:26 +0100184void initializeHWAddressSanitizerLegacyPassPass(PassRegistry &);
Andrew Scull5e1ddfa2018-08-14 10:06:54 +0100185void initializeIPSCCPLegacyPassPass(PassRegistry&);
Andrew Scullcdfcccc2018-10-05 20:58:37 +0100186void initializeIRCELegacyPassPass(PassRegistry&);
Olivier Deprezf4ef2d02021-04-20 13:36:24 +0200187void initializeIROutlinerLegacyPassPass(PassRegistry&);
188void initializeIRSimilarityIdentifierWrapperPassPass(PassRegistry&);
Andrew Scull5e1ddfa2018-08-14 10:06:54 +0100189void initializeIRTranslatorPass(PassRegistry&);
190void initializeIVUsersWrapperPassPass(PassRegistry&);
191void initializeIfConverterPass(PassRegistry&);
Olivier Deprezf4ef2d02021-04-20 13:36:24 +0200192void initializeImmutableModuleSummaryIndexWrapperPassPass(PassRegistry&);
Andrew Scull5e1ddfa2018-08-14 10:06:54 +0100193void initializeImplicitNullChecksPass(PassRegistry&);
194void initializeIndVarSimplifyLegacyPassPass(PassRegistry&);
195void initializeIndirectBrExpandPassPass(PassRegistry&);
Andrew Scull5e1ddfa2018-08-14 10:06:54 +0100196void initializeInferAddressSpacesPass(PassRegistry&);
197void initializeInferFunctionAttrsLegacyPassPass(PassRegistry&);
Olivier Deprezf4ef2d02021-04-20 13:36:24 +0200198void initializeInjectTLIMappingsLegacyPass(PassRegistry &);
Andrew Scull5e1ddfa2018-08-14 10:06:54 +0100199void initializeInlineCostAnalysisPass(PassRegistry&);
Olivier Deprezf4ef2d02021-04-20 13:36:24 +0200200void initializeInstCountLegacyPassPass(PassRegistry &);
Andrew Scull5e1ddfa2018-08-14 10:06:54 +0100201void initializeInstNamerPass(PassRegistry&);
Andrew Scullcdfcccc2018-10-05 20:58:37 +0100202void initializeInstSimplifyLegacyPassPass(PassRegistry &);
Andrew Scull5e1ddfa2018-08-14 10:06:54 +0100203void initializeInstrProfilingLegacyPassPass(PassRegistry&);
Andrew Walbran3d2c1972020-04-07 12:24:26 +0100204void initializeInstrOrderFileLegacyPassPass(PassRegistry&);
Andrew Scull5e1ddfa2018-08-14 10:06:54 +0100205void initializeInstructionCombiningPassPass(PassRegistry&);
206void initializeInstructionSelectPass(PassRegistry&);
207void initializeInterleavedAccessPass(PassRegistry&);
Andrew Walbran16937d02019-10-22 13:54:20 +0100208void initializeInterleavedLoadCombinePass(PassRegistry &);
Andrew Scull5e1ddfa2018-08-14 10:06:54 +0100209void initializeInternalizeLegacyPassPass(PassRegistry&);
210void initializeIntervalPartitionPass(PassRegistry&);
211void initializeJumpThreadingPass(PassRegistry&);
212void initializeLCSSAVerificationPassPass(PassRegistry&);
213void initializeLCSSAWrapperPassPass(PassRegistry&);
214void initializeLazyBlockFrequencyInfoPassPass(PassRegistry&);
215void initializeLazyBranchProbabilityInfoPassPass(PassRegistry&);
216void initializeLazyMachineBlockFrequencyInfoPassPass(PassRegistry&);
217void initializeLazyValueInfoPrinterPass(PassRegistry&);
218void initializeLazyValueInfoWrapperPassPass(PassRegistry&);
Andrew Scull0372a572018-11-16 15:47:06 +0000219void initializeLegacyDivergenceAnalysisPass(PassRegistry&);
Andrew Scull5e1ddfa2018-08-14 10:06:54 +0100220void initializeLegacyLICMPassPass(PassRegistry&);
221void initializeLegacyLoopSinkPassPass(PassRegistry&);
222void initializeLegalizerPass(PassRegistry&);
Andrew Walbran16937d02019-10-22 13:54:20 +0100223void initializeGISelCSEAnalysisWrapperPassPass(PassRegistry &);
Olivier Deprezf4ef2d02021-04-20 13:36:24 +0200224void initializeGISelKnownBitsAnalysisPass(PassRegistry &);
Andrew Scull5e1ddfa2018-08-14 10:06:54 +0100225void initializeLibCallsShrinkWrapLegacyPassPass(PassRegistry&);
Olivier Deprezf4ef2d02021-04-20 13:36:24 +0200226void initializeLintLegacyPassPass(PassRegistry &);
Andrew Scull5e1ddfa2018-08-14 10:06:54 +0100227void initializeLiveDebugValuesPass(PassRegistry&);
228void initializeLiveDebugVariablesPass(PassRegistry&);
229void initializeLiveIntervalsPass(PassRegistry&);
230void initializeLiveRangeShrinkPass(PassRegistry&);
231void initializeLiveRegMatrixPass(PassRegistry&);
232void initializeLiveStacksPass(PassRegistry&);
233void initializeLiveVariablesPass(PassRegistry&);
Andrew Walbran16937d02019-10-22 13:54:20 +0100234void initializeLoadStoreVectorizerLegacyPassPass(PassRegistry&);
Andrew Scull5e1ddfa2018-08-14 10:06:54 +0100235void initializeLoaderPassPass(PassRegistry&);
236void initializeLocalStackSlotPassPass(PassRegistry&);
237void initializeLocalizerPass(PassRegistry&);
238void initializeLoopAccessLegacyAnalysisPass(PassRegistry&);
239void initializeLoopDataPrefetchLegacyPassPass(PassRegistry&);
240void initializeLoopDeletionLegacyPassPass(PassRegistry&);
241void initializeLoopDistributeLegacyPass(PassRegistry&);
Olivier Deprezf4ef2d02021-04-20 13:36:24 +0200242void initializeLoopExtractorLegacyPassPass(PassRegistry &);
Andrew Scullcdfcccc2018-10-05 20:58:37 +0100243void initializeLoopGuardWideningLegacyPassPass(PassRegistry&);
Andrew Walbran3d2c1972020-04-07 12:24:26 +0100244void initializeLoopFuseLegacyPass(PassRegistry&);
Andrew Scull5e1ddfa2018-08-14 10:06:54 +0100245void initializeLoopIdiomRecognizeLegacyPassPass(PassRegistry&);
246void initializeLoopInfoWrapperPassPass(PassRegistry&);
Andrew Scullcdfcccc2018-10-05 20:58:37 +0100247void initializeLoopInstSimplifyLegacyPassPass(PassRegistry&);
Olivier Deprezf4ef2d02021-04-20 13:36:24 +0200248void initializeLoopInterchangeLegacyPassPass(PassRegistry &);
249void initializeLoopFlattenLegacyPassPass(PassRegistry&);
Andrew Scull5e1ddfa2018-08-14 10:06:54 +0100250void initializeLoopLoadEliminationPass(PassRegistry&);
251void initializeLoopPassPass(PassRegistry&);
252void initializeLoopPredicationLegacyPassPass(PassRegistry&);
Olivier Deprezf4ef2d02021-04-20 13:36:24 +0200253void initializeLoopRerollLegacyPassPass(PassRegistry &);
Andrew Scull5e1ddfa2018-08-14 10:06:54 +0100254void initializeLoopRotateLegacyPassPass(PassRegistry&);
255void initializeLoopSimplifyCFGLegacyPassPass(PassRegistry&);
256void initializeLoopSimplifyPass(PassRegistry&);
257void initializeLoopStrengthReducePass(PassRegistry&);
Andrew Scullcdfcccc2018-10-05 20:58:37 +0100258void initializeLoopUnrollAndJamPass(PassRegistry&);
Andrew Scull5e1ddfa2018-08-14 10:06:54 +0100259void initializeLoopUnrollPass(PassRegistry&);
260void initializeLoopUnswitchPass(PassRegistry&);
261void initializeLoopVectorizePass(PassRegistry&);
Olivier Deprezf4ef2d02021-04-20 13:36:24 +0200262void initializeLoopVersioningLICMLegacyPassPass(PassRegistry &);
263void initializeLoopVersioningLegacyPassPass(PassRegistry &);
Andrew Scull5e1ddfa2018-08-14 10:06:54 +0100264void initializeLowerAtomicLegacyPassPass(PassRegistry&);
Olivier Deprezf4ef2d02021-04-20 13:36:24 +0200265void initializeLowerConstantIntrinsicsPass(PassRegistry&);
Andrew Scull5e1ddfa2018-08-14 10:06:54 +0100266void initializeLowerEmuTLSPass(PassRegistry&);
267void initializeLowerExpectIntrinsicPass(PassRegistry&);
268void initializeLowerGuardIntrinsicLegacyPassPass(PassRegistry&);
Andrew Walbran16937d02019-10-22 13:54:20 +0100269void initializeLowerWidenableConditionLegacyPassPass(PassRegistry&);
Andrew Scull5e1ddfa2018-08-14 10:06:54 +0100270void initializeLowerIntrinsicsPass(PassRegistry&);
271void initializeLowerInvokeLegacyPassPass(PassRegistry&);
Olivier Deprezf4ef2d02021-04-20 13:36:24 +0200272void initializeLowerSwitchLegacyPassPass(PassRegistry &);
Andrew Scull5e1ddfa2018-08-14 10:06:54 +0100273void initializeLowerTypeTestsPass(PassRegistry&);
Olivier Deprezf4ef2d02021-04-20 13:36:24 +0200274void initializeLowerMatrixIntrinsicsLegacyPassPass(PassRegistry &);
275void initializeLowerMatrixIntrinsicsMinimalLegacyPassPass(PassRegistry &);
Andrew Scullcdfcccc2018-10-05 20:58:37 +0100276void initializeMIRCanonicalizerPass(PassRegistry &);
Olivier Deprezf4ef2d02021-04-20 13:36:24 +0200277void initializeMIRNamerPass(PassRegistry &);
Andrew Scull5e1ddfa2018-08-14 10:06:54 +0100278void initializeMIRPrintingPassPass(PassRegistry&);
279void initializeMachineBlockFrequencyInfoPass(PassRegistry&);
280void initializeMachineBlockPlacementPass(PassRegistry&);
281void initializeMachineBlockPlacementStatsPass(PassRegistry&);
282void initializeMachineBranchProbabilityInfoPass(PassRegistry&);
283void initializeMachineCSEPass(PassRegistry&);
284void initializeMachineCombinerPass(PassRegistry&);
285void initializeMachineCopyPropagationPass(PassRegistry&);
286void initializeMachineDominanceFrontierPass(PassRegistry&);
287void initializeMachineDominatorTreePass(PassRegistry&);
288void initializeMachineFunctionPrinterPassPass(PassRegistry&);
Olivier Deprezf4ef2d02021-04-20 13:36:24 +0200289void initializeMachineFunctionSplitterPass(PassRegistry &);
Andrew Scull5e1ddfa2018-08-14 10:06:54 +0100290void initializeMachineLICMPass(PassRegistry&);
291void initializeMachineLoopInfoPass(PassRegistry&);
Olivier Deprezf4ef2d02021-04-20 13:36:24 +0200292void initializeMachineModuleInfoWrapperPassPass(PassRegistry &);
Andrew Scull5e1ddfa2018-08-14 10:06:54 +0100293void initializeMachineOptimizationRemarkEmitterPassPass(PassRegistry&);
294void initializeMachineOutlinerPass(PassRegistry&);
295void initializeMachinePipelinerPass(PassRegistry&);
296void initializeMachinePostDominatorTreePass(PassRegistry&);
297void initializeMachineRegionInfoPassPass(PassRegistry&);
298void initializeMachineSchedulerPass(PassRegistry&);
299void initializeMachineSinkingPass(PassRegistry&);
300void initializeMachineTraceMetricsPass(PassRegistry&);
301void initializeMachineVerifierPassPass(PassRegistry&);
302void initializeMemCpyOptLegacyPassPass(PassRegistry&);
303void initializeMemDepPrinterPass(PassRegistry&);
304void initializeMemDerefPrinterPass(PassRegistry&);
305void initializeMemoryDependenceWrapperPassPass(PassRegistry&);
306void initializeMemorySSAPrinterLegacyPassPass(PassRegistry&);
307void initializeMemorySSAWrapperPassPass(PassRegistry&);
Andrew Walbran16937d02019-10-22 13:54:20 +0100308void initializeMemorySanitizerLegacyPassPass(PassRegistry&);
Olivier Deprezf4ef2d02021-04-20 13:36:24 +0200309void initializeMergeFunctionsLegacyPassPass(PassRegistry&);
Andrew Walbran3d2c1972020-04-07 12:24:26 +0100310void initializeMergeICmpsLegacyPassPass(PassRegistry &);
Andrew Scull5e1ddfa2018-08-14 10:06:54 +0100311void initializeMergedLoadStoreMotionLegacyPassPass(PassRegistry&);
312void initializeMetaRenamerPass(PassRegistry&);
Olivier Deprezf4ef2d02021-04-20 13:36:24 +0200313void initializeModuleDebugInfoLegacyPrinterPass(PassRegistry &);
314void initializeModuleMemProfilerLegacyPassPass(PassRegistry &);
Andrew Scull5e1ddfa2018-08-14 10:06:54 +0100315void initializeModuleSummaryIndexWrapperPassPass(PassRegistry&);
Olivier Deprezf4ef2d02021-04-20 13:36:24 +0200316void initializeModuloScheduleTestPass(PassRegistry&);
Andrew Scull5e1ddfa2018-08-14 10:06:54 +0100317void initializeMustExecutePrinterPass(PassRegistry&);
Olivier Deprezf4ef2d02021-04-20 13:36:24 +0200318void initializeMustBeExecutedContextPrinterPass(PassRegistry&);
Andrew Scull5e1ddfa2018-08-14 10:06:54 +0100319void initializeNameAnonGlobalLegacyPassPass(PassRegistry&);
Olivier Deprezf4ef2d02021-04-20 13:36:24 +0200320void initializeUniqueInternalLinkageNamesLegacyPassPass(PassRegistry &);
Andrew Scull5e1ddfa2018-08-14 10:06:54 +0100321void initializeNaryReassociateLegacyPassPass(PassRegistry&);
322void initializeNewGVNLegacyPassPass(PassRegistry&);
323void initializeObjCARCAAWrapperPassPass(PassRegistry&);
324void initializeObjCARCAPElimPass(PassRegistry&);
Olivier Deprezf4ef2d02021-04-20 13:36:24 +0200325void initializeObjCARCContractLegacyPassPass(PassRegistry &);
Andrew Scull5e1ddfa2018-08-14 10:06:54 +0100326void initializeObjCARCExpandPass(PassRegistry&);
Olivier Deprezf4ef2d02021-04-20 13:36:24 +0200327void initializeObjCARCOptLegacyPassPass(PassRegistry &);
Andrew Scull5e1ddfa2018-08-14 10:06:54 +0100328void initializeOptimizationRemarkEmitterWrapperPassPass(PassRegistry&);
329void initializeOptimizePHIsPass(PassRegistry&);
330void initializePAEvalPass(PassRegistry&);
331void initializePEIPass(PassRegistry&);
332void initializePGOIndirectCallPromotionLegacyPassPass(PassRegistry&);
333void initializePGOInstrumentationGenLegacyPassPass(PassRegistry&);
334void initializePGOInstrumentationUseLegacyPassPass(PassRegistry&);
Andrew Walbran3d2c1972020-04-07 12:24:26 +0100335void initializePGOInstrumentationGenCreateVarLegacyPassPass(PassRegistry&);
Andrew Scull5e1ddfa2018-08-14 10:06:54 +0100336void initializePGOMemOPSizeOptLegacyPassPass(PassRegistry&);
337void initializePHIEliminationPass(PassRegistry&);
338void initializePartialInlinerLegacyPassPass(PassRegistry&);
339void initializePartiallyInlineLibCallsLegacyPassPass(PassRegistry&);
340void initializePatchableFunctionPass(PassRegistry&);
341void initializePeepholeOptimizerPass(PassRegistry&);
Andrew Scullcdfcccc2018-10-05 20:58:37 +0100342void initializePhiValuesWrapperPassPass(PassRegistry&);
Andrew Scull5e1ddfa2018-08-14 10:06:54 +0100343void initializePhysicalRegisterUsageInfoPass(PassRegistry&);
344void initializePlaceBackedgeSafepointsImplPass(PassRegistry&);
345void initializePlaceSafepointsPass(PassRegistry&);
346void initializePostDomOnlyPrinterPass(PassRegistry&);
347void initializePostDomOnlyViewerPass(PassRegistry&);
348void initializePostDomPrinterPass(PassRegistry&);
349void initializePostDomViewerPass(PassRegistry&);
350void initializePostDominatorTreeWrapperPassPass(PassRegistry&);
Andrew Scullcdfcccc2018-10-05 20:58:37 +0100351void initializePostInlineEntryExitInstrumenterPass(PassRegistry&);
Andrew Scull5e1ddfa2018-08-14 10:06:54 +0100352void initializePostMachineSchedulerPass(PassRegistry&);
353void initializePostOrderFunctionAttrsLegacyPassPass(PassRegistry&);
354void initializePostRAHazardRecognizerPass(PassRegistry&);
355void initializePostRAMachineSinkingPass(PassRegistry&);
356void initializePostRASchedulerPass(PassRegistry&);
357void initializePreISelIntrinsicLoweringLegacyPassPass(PassRegistry&);
358void initializePredicateInfoPrinterLegacyPassPass(PassRegistry&);
Andrew Scull5e1ddfa2018-08-14 10:06:54 +0100359void initializePrintFunctionPassWrapperPass(PassRegistry&);
360void initializePrintModulePassWrapperPass(PassRegistry&);
361void initializeProcessImplicitDefsPass(PassRegistry&);
362void initializeProfileSummaryInfoWrapperPassPass(PassRegistry&);
363void initializePromoteLegacyPassPass(PassRegistry&);
364void initializePruneEHPass(PassRegistry&);
365void initializeRABasicPass(PassRegistry&);
Olivier Deprezf4ef2d02021-04-20 13:36:24 +0200366void initializePseudoProbeInserterPass(PassRegistry &);
Andrew Scull5e1ddfa2018-08-14 10:06:54 +0100367void initializeRAGreedyPass(PassRegistry&);
Andrew Scull5e1ddfa2018-08-14 10:06:54 +0100368void initializeReachingDefAnalysisPass(PassRegistry&);
Andrew Scullcdfcccc2018-10-05 20:58:37 +0100369void initializeReassociateLegacyPassPass(PassRegistry&);
Olivier Deprezf4ef2d02021-04-20 13:36:24 +0200370void initializeRedundantDbgInstEliminationPass(PassRegistry&);
Andrew Scullcdfcccc2018-10-05 20:58:37 +0100371void initializeRegAllocFastPass(PassRegistry&);
372void initializeRegBankSelectPass(PassRegistry&);
Olivier Deprezf4ef2d02021-04-20 13:36:24 +0200373void initializeRegToMemLegacyPass(PassRegistry&);
Andrew Scullcdfcccc2018-10-05 20:58:37 +0100374void initializeRegUsageInfoCollectorPass(PassRegistry&);
375void initializeRegUsageInfoPropagationPass(PassRegistry&);
Andrew Scull5e1ddfa2018-08-14 10:06:54 +0100376void initializeRegionInfoPassPass(PassRegistry&);
377void initializeRegionOnlyPrinterPass(PassRegistry&);
378void initializeRegionOnlyViewerPass(PassRegistry&);
379void initializeRegionPrinterPass(PassRegistry&);
380void initializeRegionViewerPass(PassRegistry&);
381void initializeRegisterCoalescerPass(PassRegistry&);
382void initializeRenameIndependentSubregsPass(PassRegistry&);
383void initializeResetMachineFunctionPass(PassRegistry&);
384void initializeReversePostOrderFunctionAttrsLegacyPassPass(PassRegistry&);
385void initializeRewriteStatepointsForGCLegacyPassPass(PassRegistry &);
386void initializeRewriteSymbolsLegacyPassPass(PassRegistry&);
Andrew Scull5e1ddfa2018-08-14 10:06:54 +0100387void initializeSCCPLegacyPassPass(PassRegistry&);
388void initializeSCEVAAWrapperPassPass(PassRegistry&);
389void initializeSLPVectorizerPass(PassRegistry&);
390void initializeSROALegacyPassPass(PassRegistry&);
391void initializeSafeStackLegacyPassPass(PassRegistry&);
Andrew Scullcdfcccc2018-10-05 20:58:37 +0100392void initializeSafepointIRVerifierPass(PassRegistry&);
Andrew Scull5e1ddfa2018-08-14 10:06:54 +0100393void initializeSampleProfileLoaderLegacyPassPass(PassRegistry&);
Olivier Deprezf4ef2d02021-04-20 13:36:24 +0200394void initializeModuleSanitizerCoverageLegacyPassPass(PassRegistry &);
Andrew Scull5e1ddfa2018-08-14 10:06:54 +0100395void initializeScalarEvolutionWrapperPassPass(PassRegistry&);
Olivier Deprezf4ef2d02021-04-20 13:36:24 +0200396void initializeScalarizeMaskedMemIntrinLegacyPassPass(PassRegistry &);
Andrew Walbran16937d02019-10-22 13:54:20 +0100397void initializeScalarizerLegacyPassPass(PassRegistry&);
Andrew Scull5e1ddfa2018-08-14 10:06:54 +0100398void initializeScavengerTestPass(PassRegistry&);
399void initializeScopedNoAliasAAWrapperPassPass(PassRegistry&);
Olivier Deprezf4ef2d02021-04-20 13:36:24 +0200400void initializeSeparateConstOffsetFromGEPLegacyPassPass(PassRegistry &);
Andrew Scull5e1ddfa2018-08-14 10:06:54 +0100401void initializeShadowStackGCLoweringPass(PassRegistry&);
402void initializeShrinkWrapPass(PassRegistry&);
403void initializeSimpleInlinerPass(PassRegistry&);
404void initializeSimpleLoopUnswitchLegacyPassPass(PassRegistry&);
405void initializeSingleLoopExtractorPass(PassRegistry&);
406void initializeSinkingLegacyPassPass(PassRegistry&);
407void initializeSjLjEHPreparePass(PassRegistry&);
408void initializeSlotIndexesPass(PassRegistry&);
409void initializeSpeculativeExecutionLegacyPassPass(PassRegistry&);
410void initializeSpillPlacementPass(PassRegistry&);
411void initializeStackColoringPass(PassRegistry&);
412void initializeStackMapLivenessPass(PassRegistry&);
413void initializeStackProtectorPass(PassRegistry&);
Andrew Walbran16937d02019-10-22 13:54:20 +0100414void initializeStackSafetyGlobalInfoWrapperPassPass(PassRegistry &);
415void initializeStackSafetyInfoWrapperPassPass(PassRegistry &);
Andrew Scull5e1ddfa2018-08-14 10:06:54 +0100416void initializeStackSlotColoringPass(PassRegistry&);
Olivier Deprezf4ef2d02021-04-20 13:36:24 +0200417void initializeStraightLineStrengthReduceLegacyPassPass(PassRegistry &);
Andrew Scull5e1ddfa2018-08-14 10:06:54 +0100418void initializeStripDeadDebugInfoPass(PassRegistry&);
419void initializeStripDeadPrototypesLegacyPassPass(PassRegistry&);
420void initializeStripDebugDeclarePass(PassRegistry&);
Olivier Deprezf4ef2d02021-04-20 13:36:24 +0200421void initializeStripDebugMachineModulePass(PassRegistry &);
422void initializeStripGCRelocatesLegacyPass(PassRegistry &);
Andrew Scull5e1ddfa2018-08-14 10:06:54 +0100423void initializeStripNonDebugSymbolsPass(PassRegistry&);
Olivier Deprezf4ef2d02021-04-20 13:36:24 +0200424void initializeStripNonLineTableDebugLegacyPassPass(PassRegistry &);
Andrew Scull5e1ddfa2018-08-14 10:06:54 +0100425void initializeStripSymbolsPass(PassRegistry&);
Olivier Deprezf4ef2d02021-04-20 13:36:24 +0200426void initializeStructurizeCFGLegacyPassPass(PassRegistry &);
Andrew Scull5e1ddfa2018-08-14 10:06:54 +0100427void initializeTailCallElimPass(PassRegistry&);
428void initializeTailDuplicatePass(PassRegistry&);
429void initializeTargetLibraryInfoWrapperPassPass(PassRegistry&);
430void initializeTargetPassConfigPass(PassRegistry&);
431void initializeTargetTransformInfoWrapperPassPass(PassRegistry&);
Andrew Walbran16937d02019-10-22 13:54:20 +0100432void initializeThreadSanitizerLegacyPassPass(PassRegistry&);
Andrew Scull5e1ddfa2018-08-14 10:06:54 +0100433void initializeTwoAddressInstructionPassPass(PassRegistry&);
434void initializeTypeBasedAAWrapperPassPass(PassRegistry&);
Olivier Deprezf4ef2d02021-04-20 13:36:24 +0200435void initializeTypePromotionPass(PassRegistry&);
436void initializeUnifyFunctionExitNodesLegacyPassPass(PassRegistry &);
437void initializeUnifyLoopExitsLegacyPassPass(PassRegistry &);
Andrew Scull5e1ddfa2018-08-14 10:06:54 +0100438void initializeUnpackMachineBundlesPass(PassRegistry&);
439void initializeUnreachableBlockElimLegacyPassPass(PassRegistry&);
440void initializeUnreachableMachineBlockElimPass(PassRegistry&);
Olivier Deprezf4ef2d02021-04-20 13:36:24 +0200441void initializeVectorCombineLegacyPassPass(PassRegistry&);
Andrew Scull5e1ddfa2018-08-14 10:06:54 +0100442void initializeVerifierLegacyPassPass(PassRegistry&);
443void initializeVirtRegMapPass(PassRegistry&);
444void initializeVirtRegRewriterPass(PassRegistry&);
Andrew Walbran16937d02019-10-22 13:54:20 +0100445void initializeWarnMissedTransformationsLegacyPass(PassRegistry &);
Andrew Scullcdfcccc2018-10-05 20:58:37 +0100446void initializeWasmEHPreparePass(PassRegistry&);
Andrew Scull5e1ddfa2018-08-14 10:06:54 +0100447void initializeWholeProgramDevirtPass(PassRegistry&);
448void initializeWinEHPreparePass(PassRegistry&);
449void initializeWriteBitcodePassPass(PassRegistry&);
450void initializeWriteThinLTOBitcodePass(PassRegistry&);
451void initializeXRayInstrumentationPass(PassRegistry&);
Andrew Scull5e1ddfa2018-08-14 10:06:54 +0100452
453} // end namespace llvm
454
455#endif // LLVM_INITIALIZEPASSES_H