xref: /freebsd/contrib/llvm-project/llvm/include/llvm/InitializePasses.h (revision bdd1243df58e60e85101c09001d9812a789b6bc4)
10b57cec5SDimitry Andric //===- llvm/InitializePasses.h - Initialize All Passes ----------*- C++ -*-===//
20b57cec5SDimitry Andric //
30b57cec5SDimitry Andric // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
40b57cec5SDimitry Andric // See https://llvm.org/LICENSE.txt for license information.
50b57cec5SDimitry Andric // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
60b57cec5SDimitry Andric //
70b57cec5SDimitry Andric //===----------------------------------------------------------------------===//
80b57cec5SDimitry Andric //
90b57cec5SDimitry Andric // This file contains the declarations for the pass initialization routines
100b57cec5SDimitry Andric // for the entire LLVM project.
110b57cec5SDimitry Andric //
120b57cec5SDimitry Andric //===----------------------------------------------------------------------===//
130b57cec5SDimitry Andric 
140b57cec5SDimitry Andric #ifndef LLVM_INITIALIZEPASSES_H
150b57cec5SDimitry Andric #define LLVM_INITIALIZEPASSES_H
160b57cec5SDimitry Andric 
170b57cec5SDimitry Andric namespace llvm {
180b57cec5SDimitry Andric 
190b57cec5SDimitry Andric class PassRegistry;
200b57cec5SDimitry Andric 
21*bdd1243dSDimitry Andric /// Initialize all passes linked into the Core library.
220b57cec5SDimitry Andric void initializeCore(PassRegistry&);
230b57cec5SDimitry Andric 
240b57cec5SDimitry Andric /// Initialize all passes linked into the TransformUtils library.
250b57cec5SDimitry Andric void initializeTransformUtils(PassRegistry&);
260b57cec5SDimitry Andric 
270b57cec5SDimitry Andric /// Initialize all passes linked into the ScalarOpts library.
280b57cec5SDimitry Andric void initializeScalarOpts(PassRegistry&);
290b57cec5SDimitry Andric 
300b57cec5SDimitry Andric /// Initialize all passes linked into the Vectorize library.
310b57cec5SDimitry Andric void initializeVectorization(PassRegistry&);
320b57cec5SDimitry Andric 
330b57cec5SDimitry Andric /// Initialize all passes linked into the InstCombine library.
340b57cec5SDimitry Andric void initializeInstCombine(PassRegistry&);
350b57cec5SDimitry Andric 
360b57cec5SDimitry Andric /// Initialize all passes linked into the IPO library.
370b57cec5SDimitry Andric void initializeIPO(PassRegistry&);
380b57cec5SDimitry Andric 
390b57cec5SDimitry Andric /// Initialize all passes linked into the Analysis library.
400b57cec5SDimitry Andric void initializeAnalysis(PassRegistry&);
410b57cec5SDimitry Andric 
420b57cec5SDimitry Andric /// Initialize all passes linked into the CodeGen library.
430b57cec5SDimitry Andric void initializeCodeGen(PassRegistry&);
440b57cec5SDimitry Andric 
450b57cec5SDimitry Andric /// Initialize all passes linked into the GlobalISel library.
460b57cec5SDimitry Andric void initializeGlobalISel(PassRegistry&);
470b57cec5SDimitry Andric 
480b57cec5SDimitry Andric /// Initialize all passes linked into the CodeGen library.
490b57cec5SDimitry Andric void initializeTarget(PassRegistry&);
500b57cec5SDimitry Andric 
510b57cec5SDimitry Andric void initializeAAEvalLegacyPassPass(PassRegistry&);
520b57cec5SDimitry Andric void initializeAAResultsWrapperPassPass(PassRegistry&);
530b57cec5SDimitry Andric void initializeADCELegacyPassPass(PassRegistry&);
540b57cec5SDimitry Andric void initializeAddDiscriminatorsLegacyPassPass(PassRegistry&);
550b57cec5SDimitry Andric void initializeAlignmentFromAssumptionsPass(PassRegistry&);
560b57cec5SDimitry Andric void initializeAlwaysInlinerLegacyPassPass(PassRegistry&);
57*bdd1243dSDimitry Andric void initializeAssignmentTrackingAnalysisPass(PassRegistry &);
585ffd83dbSDimitry Andric void initializeAssumeSimplifyPassLegacyPassPass(PassRegistry &);
595ffd83dbSDimitry Andric void initializeAssumeBuilderPassLegacyPassPass(PassRegistry &);
60e8d8bef9SDimitry Andric void initializeAnnotation2MetadataLegacyPass(PassRegistry &);
610b57cec5SDimitry Andric void initializeAssumptionCacheTrackerPass(PassRegistry&);
620b57cec5SDimitry Andric void initializeAtomicExpandPass(PassRegistry&);
630b57cec5SDimitry Andric void initializeAttributorLegacyPassPass(PassRegistry&);
645ffd83dbSDimitry Andric void initializeAttributorCGSCCLegacyPassPass(PassRegistry &);
6581ad6265SDimitry Andric void initializeBasicBlockSectionsProfileReaderPass(PassRegistry &);
66e8d8bef9SDimitry Andric void initializeBasicBlockSectionsPass(PassRegistry &);
670b57cec5SDimitry Andric void initializeBDCELegacyPassPass(PassRegistry&);
680b57cec5SDimitry Andric void initializeBarrierNoopPass(PassRegistry&);
690b57cec5SDimitry Andric void initializeBasicAAWrapperPassPass(PassRegistry&);
700b57cec5SDimitry Andric void initializeBlockFrequencyInfoWrapperPassPass(PassRegistry&);
710b57cec5SDimitry Andric void initializeBranchFolderPassPass(PassRegistry&);
720b57cec5SDimitry Andric void initializeBranchProbabilityInfoWrapperPassPass(PassRegistry&);
730b57cec5SDimitry Andric void initializeBranchRelaxationPass(PassRegistry&);
740b57cec5SDimitry Andric void initializeBreakCriticalEdgesPass(PassRegistry&);
750b57cec5SDimitry Andric void initializeBreakFalseDepsPass(PassRegistry&);
765ffd83dbSDimitry Andric void initializeCanonicalizeFreezeInLoopsPass(PassRegistry &);
770b57cec5SDimitry Andric void initializeCFGOnlyPrinterLegacyPassPass(PassRegistry&);
780b57cec5SDimitry Andric void initializeCFGOnlyViewerLegacyPassPass(PassRegistry&);
790b57cec5SDimitry Andric void initializeCFGPrinterLegacyPassPass(PassRegistry&);
800b57cec5SDimitry Andric void initializeCFGSimplifyPassPass(PassRegistry&);
81480093f4SDimitry Andric void initializeCFGuardPass(PassRegistry&);
82480093f4SDimitry Andric void initializeCFGuardLongjmpPass(PassRegistry&);
830b57cec5SDimitry Andric void initializeCFGViewerLegacyPassPass(PassRegistry&);
8481ad6265SDimitry Andric void initializeCFIFixupPass(PassRegistry&);
850b57cec5SDimitry Andric void initializeCFIInstrInserterPass(PassRegistry&);
860b57cec5SDimitry Andric void initializeCallGraphDOTPrinterPass(PassRegistry&);
870b57cec5SDimitry Andric void initializeCallGraphPrinterLegacyPassPass(PassRegistry&);
880b57cec5SDimitry Andric void initializeCallGraphViewerPass(PassRegistry&);
890b57cec5SDimitry Andric void initializeCallGraphWrapperPassPass(PassRegistry&);
900b57cec5SDimitry Andric void initializeCallSiteSplittingLegacyPassPass(PassRegistry&);
910b57cec5SDimitry Andric void initializeCalledValuePropagationLegacyPassPass(PassRegistry &);
92e8d8bef9SDimitry Andric void initializeCheckDebugMachineModulePass(PassRegistry &);
930b57cec5SDimitry Andric void initializeCodeGenPreparePass(PassRegistry&);
94*bdd1243dSDimitry Andric void initializeComplexDeinterleavingLegacyPassPass(PassRegistry&);
950b57cec5SDimitry Andric void initializeConstantHoistingLegacyPassPass(PassRegistry&);
960b57cec5SDimitry Andric void initializeConstantMergeLegacyPassPass(PassRegistry&);
970b57cec5SDimitry Andric void initializeCorrelatedValuePropagationPass(PassRegistry&);
980b57cec5SDimitry Andric void initializeCostModelAnalysisPass(PassRegistry&);
990b57cec5SDimitry Andric void initializeCrossDSOCFIPass(PassRegistry&);
1000eae32dcSDimitry Andric void initializeCycleInfoWrapperPassPass(PassRegistry &);
1010b57cec5SDimitry Andric void initializeDAEPass(PassRegistry&);
1020b57cec5SDimitry Andric void initializeDAHPass(PassRegistry&);
1030b57cec5SDimitry Andric void initializeDCELegacyPassPass(PassRegistry&);
104fe6060f1SDimitry Andric void initializeDFAJumpThreadingLegacyPassPass(PassRegistry &);
1050b57cec5SDimitry Andric void initializeDSELegacyPassPass(PassRegistry&);
1060b57cec5SDimitry Andric void initializeDeadMachineInstructionElimPass(PassRegistry&);
1075ffd83dbSDimitry Andric void initializeDebugifyMachineModulePass(PassRegistry &);
1080b57cec5SDimitry Andric void initializeDelinearizationPass(PassRegistry&);
1090b57cec5SDimitry Andric void initializeDemandedBitsWrapperPassPass(PassRegistry&);
1100b57cec5SDimitry Andric void initializeDependenceAnalysisWrapperPassPass(PassRegistry&);
1110b57cec5SDimitry Andric void initializeDetectDeadLanesPass(PassRegistry&);
1120b57cec5SDimitry Andric void initializeDivRemPairsLegacyPassPass(PassRegistry&);
11381ad6265SDimitry Andric void initializeDomOnlyPrinterWrapperPassPass(PassRegistry &);
11481ad6265SDimitry Andric void initializeDomOnlyViewerWrapperPassPass(PassRegistry &);
11581ad6265SDimitry Andric void initializeDomPrinterWrapperPassPass(PassRegistry &);
11681ad6265SDimitry Andric void initializeDomViewerWrapperPassPass(PassRegistry &);
1170b57cec5SDimitry Andric void initializeDominanceFrontierWrapperPassPass(PassRegistry&);
1180b57cec5SDimitry Andric void initializeDominatorTreeWrapperPassPass(PassRegistry&);
119e8d8bef9SDimitry Andric void initializeDwarfEHPrepareLegacyPassPass(PassRegistry &);
1200b57cec5SDimitry Andric void initializeEarlyCSELegacyPassPass(PassRegistry&);
1210b57cec5SDimitry Andric void initializeEarlyCSEMemSSALegacyPassPass(PassRegistry&);
1220b57cec5SDimitry Andric void initializeEarlyIfConverterPass(PassRegistry&);
1238bcb0991SDimitry Andric void initializeEarlyIfPredicatorPass(PassRegistry &);
1240b57cec5SDimitry Andric void initializeEarlyMachineLICMPass(PassRegistry&);
1250b57cec5SDimitry Andric void initializeEarlyTailDuplicatePass(PassRegistry&);
1260b57cec5SDimitry Andric void initializeEdgeBundlesPass(PassRegistry&);
127fe6060f1SDimitry Andric void initializeEHContGuardCatchretPass(PassRegistry &);
1280b57cec5SDimitry Andric void initializeEliminateAvailableExternallyLegacyPassPass(PassRegistry&);
129*bdd1243dSDimitry Andric void initializeExpandLargeFpConvertLegacyPassPass(PassRegistry&);
130*bdd1243dSDimitry Andric void initializeExpandLargeDivRemLegacyPassPass(PassRegistry&);
1310b57cec5SDimitry Andric void initializeExpandMemCmpPassPass(PassRegistry&);
1320b57cec5SDimitry Andric void initializeExpandPostRAPass(PassRegistry&);
1330b57cec5SDimitry Andric void initializeExpandReductionsPass(PassRegistry&);
134fe6060f1SDimitry Andric void initializeExpandVectorPredicationPass(PassRegistry &);
1350b57cec5SDimitry Andric void initializeMakeGuardsExplicitLegacyPassPass(PassRegistry&);
1360b57cec5SDimitry Andric void initializeExternalAAWrapperPassPass(PassRegistry&);
1370b57cec5SDimitry Andric void initializeFEntryInserterPass(PassRegistry&);
1380b57cec5SDimitry Andric void initializeFinalizeISelPass(PassRegistry&);
1390b57cec5SDimitry Andric void initializeFinalizeMachineBundlesPass(PassRegistry&);
1405ffd83dbSDimitry Andric void initializeFixIrreduciblePass(PassRegistry &);
1415ffd83dbSDimitry Andric void initializeFixupStatepointCallerSavedPass(PassRegistry&);
1420eae32dcSDimitry Andric void initializeFlattenCFGLegacyPassPass(PassRegistry &);
1430b57cec5SDimitry Andric void initializeFloat2IntLegacyPassPass(PassRegistry&);
1440b57cec5SDimitry Andric void initializeForceFunctionAttrsLegacyPassPass(PassRegistry&);
1450b57cec5SDimitry Andric void initializeFuncletLayoutPass(PassRegistry&);
1460b57cec5SDimitry Andric void initializeGCMachineCodeAnalysisPass(PassRegistry&);
1470b57cec5SDimitry Andric void initializeGCModuleInfoPass(PassRegistry&);
1480b57cec5SDimitry Andric void initializeGVNHoistLegacyPassPass(PassRegistry&);
1490b57cec5SDimitry Andric void initializeGVNLegacyPassPass(PassRegistry&);
1500b57cec5SDimitry Andric void initializeGVNSinkLegacyPassPass(PassRegistry&);
1510b57cec5SDimitry Andric void initializeGlobalDCELegacyPassPass(PassRegistry&);
1520b57cec5SDimitry Andric void initializeGlobalMergePass(PassRegistry&);
1530b57cec5SDimitry Andric void initializeGlobalOptLegacyPassPass(PassRegistry&);
1540b57cec5SDimitry Andric void initializeGlobalSplitPass(PassRegistry&);
1550b57cec5SDimitry Andric void initializeGlobalsAAWrapperPassPass(PassRegistry&);
1560b57cec5SDimitry Andric void initializeGuardWideningLegacyPassPass(PassRegistry&);
1570b57cec5SDimitry Andric void initializeHardwareLoopsPass(PassRegistry&);
158349cc55cSDimitry Andric void initializeMIRProfileLoaderPassPass(PassRegistry &);
1590b57cec5SDimitry Andric void initializeHotColdSplittingLegacyPassPass(PassRegistry&);
1600b57cec5SDimitry Andric void initializeIPSCCPLegacyPassPass(PassRegistry&);
1610b57cec5SDimitry Andric void initializeIRCELegacyPassPass(PassRegistry&);
162e8d8bef9SDimitry Andric void initializeIROutlinerLegacyPassPass(PassRegistry&);
163e8d8bef9SDimitry Andric void initializeIRSimilarityIdentifierWrapperPassPass(PassRegistry&);
1640b57cec5SDimitry Andric void initializeIRTranslatorPass(PassRegistry&);
1650b57cec5SDimitry Andric void initializeIVUsersWrapperPassPass(PassRegistry&);
1660b57cec5SDimitry Andric void initializeIfConverterPass(PassRegistry&);
1675ffd83dbSDimitry Andric void initializeImmutableModuleSummaryIndexWrapperPassPass(PassRegistry&);
1680b57cec5SDimitry Andric void initializeImplicitNullChecksPass(PassRegistry&);
1690b57cec5SDimitry Andric void initializeIndVarSimplifyLegacyPassPass(PassRegistry&);
1700b57cec5SDimitry Andric void initializeIndirectBrExpandPassPass(PassRegistry&);
1710b57cec5SDimitry Andric void initializeInferAddressSpacesPass(PassRegistry&);
1720b57cec5SDimitry Andric void initializeInferFunctionAttrsLegacyPassPass(PassRegistry&);
173480093f4SDimitry Andric void initializeInjectTLIMappingsLegacyPass(PassRegistry &);
174e8d8bef9SDimitry Andric void initializeInstCountLegacyPassPass(PassRegistry &);
1750b57cec5SDimitry Andric void initializeInstNamerPass(PassRegistry&);
1760b57cec5SDimitry Andric void initializeInstSimplifyLegacyPassPass(PassRegistry &);
1770b57cec5SDimitry Andric void initializeInstructionCombiningPassPass(PassRegistry&);
1780b57cec5SDimitry Andric void initializeInstructionSelectPass(PassRegistry&);
1790b57cec5SDimitry Andric void initializeInterleavedAccessPass(PassRegistry&);
1800b57cec5SDimitry Andric void initializeInterleavedLoadCombinePass(PassRegistry &);
1810b57cec5SDimitry Andric void initializeInternalizeLegacyPassPass(PassRegistry&);
1820b57cec5SDimitry Andric void initializeIntervalPartitionPass(PassRegistry&);
18381ad6265SDimitry Andric void initializeJMCInstrumenterPass(PassRegistry&);
1840b57cec5SDimitry Andric void initializeJumpThreadingPass(PassRegistry&);
1850b57cec5SDimitry Andric void initializeLCSSAVerificationPassPass(PassRegistry&);
1860b57cec5SDimitry Andric void initializeLCSSAWrapperPassPass(PassRegistry&);
1870b57cec5SDimitry Andric void initializeLazyBlockFrequencyInfoPassPass(PassRegistry&);
1880b57cec5SDimitry Andric void initializeLazyBranchProbabilityInfoPassPass(PassRegistry&);
1890b57cec5SDimitry Andric void initializeLazyMachineBlockFrequencyInfoPassPass(PassRegistry&);
1900b57cec5SDimitry Andric void initializeLazyValueInfoPrinterPass(PassRegistry&);
1910b57cec5SDimitry Andric void initializeLazyValueInfoWrapperPassPass(PassRegistry&);
1920b57cec5SDimitry Andric void initializeLegacyDivergenceAnalysisPass(PassRegistry&);
1930b57cec5SDimitry Andric void initializeLegacyLICMPassPass(PassRegistry&);
1940b57cec5SDimitry Andric void initializeLegacyLoopSinkPassPass(PassRegistry&);
1950b57cec5SDimitry Andric void initializeLegalizerPass(PassRegistry&);
1960b57cec5SDimitry Andric void initializeGISelCSEAnalysisWrapperPassPass(PassRegistry &);
1978bcb0991SDimitry Andric void initializeGISelKnownBitsAnalysisPass(PassRegistry &);
1980b57cec5SDimitry Andric void initializeLibCallsShrinkWrapLegacyPassPass(PassRegistry&);
199e8d8bef9SDimitry Andric void initializeLintLegacyPassPass(PassRegistry &);
2000b57cec5SDimitry Andric void initializeLiveDebugValuesPass(PassRegistry&);
2010b57cec5SDimitry Andric void initializeLiveDebugVariablesPass(PassRegistry&);
2020b57cec5SDimitry Andric void initializeLiveIntervalsPass(PassRegistry&);
2030b57cec5SDimitry Andric void initializeLiveRangeShrinkPass(PassRegistry&);
2040b57cec5SDimitry Andric void initializeLiveRegMatrixPass(PassRegistry&);
2050b57cec5SDimitry Andric void initializeLiveStacksPass(PassRegistry&);
2060b57cec5SDimitry Andric void initializeLiveVariablesPass(PassRegistry &);
207349cc55cSDimitry Andric void initializeLoadStoreOptPass(PassRegistry &);
2080b57cec5SDimitry Andric void initializeLoadStoreVectorizerLegacyPassPass(PassRegistry&);
2090b57cec5SDimitry Andric void initializeLocalStackSlotPassPass(PassRegistry&);
2100b57cec5SDimitry Andric void initializeLocalizerPass(PassRegistry&);
2110b57cec5SDimitry Andric void initializeLoopAccessLegacyAnalysisPass(PassRegistry&);
2120b57cec5SDimitry Andric void initializeLoopDataPrefetchLegacyPassPass(PassRegistry&);
2130b57cec5SDimitry Andric void initializeLoopDeletionLegacyPassPass(PassRegistry&);
2140b57cec5SDimitry Andric void initializeLoopDistributeLegacyPass(PassRegistry&);
215e8d8bef9SDimitry Andric void initializeLoopExtractorLegacyPassPass(PassRegistry &);
2160b57cec5SDimitry Andric void initializeLoopGuardWideningLegacyPassPass(PassRegistry&);
2170b57cec5SDimitry Andric void initializeLoopFuseLegacyPass(PassRegistry&);
2180b57cec5SDimitry Andric void initializeLoopIdiomRecognizeLegacyPassPass(PassRegistry&);
2190b57cec5SDimitry Andric void initializeLoopInfoWrapperPassPass(PassRegistry&);
2200b57cec5SDimitry Andric void initializeLoopInstSimplifyLegacyPassPass(PassRegistry&);
221e8d8bef9SDimitry Andric void initializeLoopInterchangeLegacyPassPass(PassRegistry &);
222e8d8bef9SDimitry Andric void initializeLoopFlattenLegacyPassPass(PassRegistry&);
2230b57cec5SDimitry Andric void initializeLoopLoadEliminationPass(PassRegistry&);
2240b57cec5SDimitry Andric void initializeLoopPassPass(PassRegistry&);
2250b57cec5SDimitry Andric void initializeLoopPredicationLegacyPassPass(PassRegistry&);
226e8d8bef9SDimitry Andric void initializeLoopRerollLegacyPassPass(PassRegistry &);
2270b57cec5SDimitry Andric void initializeLoopRotateLegacyPassPass(PassRegistry&);
2280b57cec5SDimitry Andric void initializeLoopSimplifyCFGLegacyPassPass(PassRegistry&);
2290b57cec5SDimitry Andric void initializeLoopSimplifyPass(PassRegistry&);
2300b57cec5SDimitry Andric void initializeLoopStrengthReducePass(PassRegistry&);
2310b57cec5SDimitry Andric void initializeLoopUnrollAndJamPass(PassRegistry&);
2320b57cec5SDimitry Andric void initializeLoopUnrollPass(PassRegistry&);
2330b57cec5SDimitry Andric void initializeLoopVectorizePass(PassRegistry&);
234e8d8bef9SDimitry Andric void initializeLoopVersioningLICMLegacyPassPass(PassRegistry &);
235e8d8bef9SDimitry Andric void initializeLoopVersioningLegacyPassPass(PassRegistry &);
2360b57cec5SDimitry Andric void initializeLowerAtomicLegacyPassPass(PassRegistry&);
2378bcb0991SDimitry Andric void initializeLowerConstantIntrinsicsPass(PassRegistry&);
2380b57cec5SDimitry Andric void initializeLowerEmuTLSPass(PassRegistry&);
2390b57cec5SDimitry Andric void initializeLowerExpectIntrinsicPass(PassRegistry&);
24081ad6265SDimitry Andric void initializeLowerGlobalDtorsLegacyPassPass(PassRegistry &);
2410b57cec5SDimitry Andric void initializeLowerGuardIntrinsicLegacyPassPass(PassRegistry&);
2420b57cec5SDimitry Andric void initializeLowerWidenableConditionLegacyPassPass(PassRegistry&);
2430b57cec5SDimitry Andric void initializeLowerIntrinsicsPass(PassRegistry&);
2440b57cec5SDimitry Andric void initializeLowerInvokeLegacyPassPass(PassRegistry&);
245e8d8bef9SDimitry Andric void initializeLowerSwitchLegacyPassPass(PassRegistry &);
246480093f4SDimitry Andric void initializeLowerMatrixIntrinsicsLegacyPassPass(PassRegistry &);
247e8d8bef9SDimitry Andric void initializeLowerMatrixIntrinsicsMinimalLegacyPassPass(PassRegistry &);
248*bdd1243dSDimitry Andric void initializeKCFIPass(PassRegistry &);
249fe6060f1SDimitry Andric void initializeMIRAddFSDiscriminatorsPass(PassRegistry &);
2500b57cec5SDimitry Andric void initializeMIRCanonicalizerPass(PassRegistry &);
2518bcb0991SDimitry Andric void initializeMIRNamerPass(PassRegistry &);
2520b57cec5SDimitry Andric void initializeMIRPrintingPassPass(PassRegistry&);
2530b57cec5SDimitry Andric void initializeMachineBlockFrequencyInfoPass(PassRegistry&);
2540b57cec5SDimitry Andric void initializeMachineBlockPlacementPass(PassRegistry&);
2550b57cec5SDimitry Andric void initializeMachineBlockPlacementStatsPass(PassRegistry&);
2560b57cec5SDimitry Andric void initializeMachineBranchProbabilityInfoPass(PassRegistry&);
257*bdd1243dSDimitry Andric void initializeMachineCFGPrinterPass(PassRegistry &);
2580b57cec5SDimitry Andric void initializeMachineCSEPass(PassRegistry&);
2590b57cec5SDimitry Andric void initializeMachineCombinerPass(PassRegistry&);
2600b57cec5SDimitry Andric void initializeMachineCopyPropagationPass(PassRegistry&);
2610eae32dcSDimitry Andric void initializeMachineCycleInfoPrinterPassPass(PassRegistry &);
2620eae32dcSDimitry Andric void initializeMachineCycleInfoWrapperPassPass(PassRegistry &);
2630b57cec5SDimitry Andric void initializeMachineDominanceFrontierPass(PassRegistry&);
2640b57cec5SDimitry Andric void initializeMachineDominatorTreePass(PassRegistry&);
2650b57cec5SDimitry Andric void initializeMachineFunctionPrinterPassPass(PassRegistry&);
266e8d8bef9SDimitry Andric void initializeMachineFunctionSplitterPass(PassRegistry &);
267*bdd1243dSDimitry Andric void initializeMachineLateInstrsCleanupPass(PassRegistry&);
2680b57cec5SDimitry Andric void initializeMachineLICMPass(PassRegistry&);
2690b57cec5SDimitry Andric void initializeMachineLoopInfoPass(PassRegistry&);
2708bcb0991SDimitry Andric void initializeMachineModuleInfoWrapperPassPass(PassRegistry &);
2710b57cec5SDimitry Andric void initializeMachineOptimizationRemarkEmitterPassPass(PassRegistry&);
2720b57cec5SDimitry Andric void initializeMachineOutlinerPass(PassRegistry&);
2730b57cec5SDimitry Andric void initializeMachinePipelinerPass(PassRegistry&);
2740b57cec5SDimitry Andric void initializeMachinePostDominatorTreePass(PassRegistry&);
2750b57cec5SDimitry Andric void initializeMachineRegionInfoPassPass(PassRegistry&);
276*bdd1243dSDimitry Andric void initializeMachineSanitizerBinaryMetadataPass(PassRegistry &);
2770b57cec5SDimitry Andric void initializeMachineSchedulerPass(PassRegistry&);
2780b57cec5SDimitry Andric void initializeMachineSinkingPass(PassRegistry&);
2790b57cec5SDimitry Andric void initializeMachineTraceMetricsPass(PassRegistry&);
280*bdd1243dSDimitry Andric void initializeMachineUniformityInfoPrinterPassPass(PassRegistry &);
281*bdd1243dSDimitry Andric void initializeMachineUniformityAnalysisPassPass(PassRegistry &);
2820b57cec5SDimitry Andric void initializeMachineVerifierPassPass(PassRegistry&);
2830b57cec5SDimitry Andric void initializeMemCpyOptLegacyPassPass(PassRegistry&);
2840b57cec5SDimitry Andric void initializeMemDepPrinterPass(PassRegistry&);
2850b57cec5SDimitry Andric void initializeMemDerefPrinterPass(PassRegistry&);
2860b57cec5SDimitry Andric void initializeMemoryDependenceWrapperPassPass(PassRegistry&);
2870b57cec5SDimitry Andric void initializeMemorySSAPrinterLegacyPassPass(PassRegistry&);
2880b57cec5SDimitry Andric void initializeMemorySSAWrapperPassPass(PassRegistry&);
289480093f4SDimitry Andric void initializeMergeFunctionsLegacyPassPass(PassRegistry&);
2900b57cec5SDimitry Andric void initializeMergeICmpsLegacyPassPass(PassRegistry &);
2910b57cec5SDimitry Andric void initializeMergedLoadStoreMotionLegacyPassPass(PassRegistry&);
2920b57cec5SDimitry Andric void initializeMetaRenamerPass(PassRegistry&);
293e8d8bef9SDimitry Andric void initializeModuleDebugInfoLegacyPrinterPass(PassRegistry &);
2940b57cec5SDimitry Andric void initializeModuleSummaryIndexWrapperPassPass(PassRegistry&);
2958bcb0991SDimitry Andric void initializeModuloScheduleTestPass(PassRegistry&);
2960b57cec5SDimitry Andric void initializeMustExecutePrinterPass(PassRegistry&);
2978bcb0991SDimitry Andric void initializeMustBeExecutedContextPrinterPass(PassRegistry&);
2980b57cec5SDimitry Andric void initializeNaryReassociateLegacyPassPass(PassRegistry&);
2990b57cec5SDimitry Andric void initializeNewGVNLegacyPassPass(PassRegistry&);
300e8d8bef9SDimitry Andric void initializeObjCARCContractLegacyPassPass(PassRegistry &);
3010b57cec5SDimitry Andric void initializeOptimizationRemarkEmitterWrapperPassPass(PassRegistry&);
3020b57cec5SDimitry Andric void initializeOptimizePHIsPass(PassRegistry&);
3030b57cec5SDimitry Andric void initializePEIPass(PassRegistry&);
3040b57cec5SDimitry Andric void initializePHIEliminationPass(PassRegistry&);
3050b57cec5SDimitry Andric void initializePartialInlinerLegacyPassPass(PassRegistry&);
3060b57cec5SDimitry Andric void initializePartiallyInlineLibCallsLegacyPassPass(PassRegistry&);
3070b57cec5SDimitry Andric void initializePatchableFunctionPass(PassRegistry&);
3080b57cec5SDimitry Andric void initializePeepholeOptimizerPass(PassRegistry&);
3090b57cec5SDimitry Andric void initializePhiValuesWrapperPassPass(PassRegistry&);
3100b57cec5SDimitry Andric void initializePhysicalRegisterUsageInfoPass(PassRegistry&);
3110b57cec5SDimitry Andric void initializePlaceBackedgeSafepointsImplPass(PassRegistry&);
3120b57cec5SDimitry Andric void initializePlaceSafepointsPass(PassRegistry&);
31381ad6265SDimitry Andric void initializePostDomOnlyPrinterWrapperPassPass(PassRegistry &);
31481ad6265SDimitry Andric void initializePostDomOnlyViewerWrapperPassPass(PassRegistry &);
31581ad6265SDimitry Andric void initializePostDomPrinterWrapperPassPass(PassRegistry &);
31681ad6265SDimitry Andric void initializePostDomViewerWrapperPassPass(PassRegistry &);
3170b57cec5SDimitry Andric void initializePostDominatorTreeWrapperPassPass(PassRegistry&);
3180b57cec5SDimitry Andric void initializePostMachineSchedulerPass(PassRegistry&);
3190b57cec5SDimitry Andric void initializePostOrderFunctionAttrsLegacyPassPass(PassRegistry&);
3200b57cec5SDimitry Andric void initializePostRAHazardRecognizerPass(PassRegistry&);
3210b57cec5SDimitry Andric void initializePostRAMachineSinkingPass(PassRegistry&);
3220b57cec5SDimitry Andric void initializePostRASchedulerPass(PassRegistry&);
3230b57cec5SDimitry Andric void initializePreISelIntrinsicLoweringLegacyPassPass(PassRegistry&);
3240b57cec5SDimitry Andric void initializePredicateInfoPrinterLegacyPassPass(PassRegistry&);
3250b57cec5SDimitry Andric void initializePrintFunctionPassWrapperPass(PassRegistry&);
3260b57cec5SDimitry Andric void initializePrintModulePassWrapperPass(PassRegistry&);
3270b57cec5SDimitry Andric void initializeProcessImplicitDefsPass(PassRegistry&);
3280b57cec5SDimitry Andric void initializeProfileSummaryInfoWrapperPassPass(PassRegistry&);
3290b57cec5SDimitry Andric void initializePromoteLegacyPassPass(PassRegistry&);
3300b57cec5SDimitry Andric void initializeRABasicPass(PassRegistry&);
331e8d8bef9SDimitry Andric void initializePseudoProbeInserterPass(PassRegistry &);
3320b57cec5SDimitry Andric void initializeRAGreedyPass(PassRegistry&);
3330b57cec5SDimitry Andric void initializeReachingDefAnalysisPass(PassRegistry&);
3340b57cec5SDimitry Andric void initializeReassociateLegacyPassPass(PassRegistry&);
335480093f4SDimitry Andric void initializeRedundantDbgInstEliminationPass(PassRegistry&);
3360eae32dcSDimitry Andric void initializeRegAllocEvictionAdvisorAnalysisPass(PassRegistry &);
3370b57cec5SDimitry Andric void initializeRegAllocFastPass(PassRegistry&);
338*bdd1243dSDimitry Andric void initializeRegAllocPriorityAdvisorAnalysisPass(PassRegistry &);
33904eeddc0SDimitry Andric void initializeRegAllocScoringPass(PassRegistry &);
3400b57cec5SDimitry Andric void initializeRegBankSelectPass(PassRegistry&);
341e8d8bef9SDimitry Andric void initializeRegToMemLegacyPass(PassRegistry&);
3420b57cec5SDimitry Andric void initializeRegUsageInfoCollectorPass(PassRegistry&);
3430b57cec5SDimitry Andric void initializeRegUsageInfoPropagationPass(PassRegistry&);
3440b57cec5SDimitry Andric void initializeRegionInfoPassPass(PassRegistry&);
3450b57cec5SDimitry Andric void initializeRegionOnlyPrinterPass(PassRegistry&);
3460b57cec5SDimitry Andric void initializeRegionOnlyViewerPass(PassRegistry&);
3470b57cec5SDimitry Andric void initializeRegionPrinterPass(PassRegistry&);
3480b57cec5SDimitry Andric void initializeRegionViewerPass(PassRegistry&);
3490b57cec5SDimitry Andric void initializeRegisterCoalescerPass(PassRegistry&);
350fe6060f1SDimitry Andric void initializeRemoveRedundantDebugValuesPass(PassRegistry&);
3510b57cec5SDimitry Andric void initializeRenameIndependentSubregsPass(PassRegistry&);
352fe6060f1SDimitry Andric void initializeReplaceWithVeclibLegacyPass(PassRegistry &);
3530b57cec5SDimitry Andric void initializeResetMachineFunctionPass(PassRegistry&);
3540b57cec5SDimitry Andric void initializeReversePostOrderFunctionAttrsLegacyPassPass(PassRegistry&);
3550b57cec5SDimitry Andric void initializeRewriteStatepointsForGCLegacyPassPass(PassRegistry &);
3560b57cec5SDimitry Andric void initializeRewriteSymbolsLegacyPassPass(PassRegistry&);
3570b57cec5SDimitry Andric void initializeSCCPLegacyPassPass(PassRegistry&);
3580b57cec5SDimitry Andric void initializeSCEVAAWrapperPassPass(PassRegistry&);
3590b57cec5SDimitry Andric void initializeSLPVectorizerPass(PassRegistry&);
3600b57cec5SDimitry Andric void initializeSROALegacyPassPass(PassRegistry&);
3610b57cec5SDimitry Andric void initializeSafeStackLegacyPassPass(PassRegistry&);
3620b57cec5SDimitry Andric void initializeSafepointIRVerifierPass(PassRegistry&);
36381ad6265SDimitry Andric void initializeSelectOptimizePass(PassRegistry &);
3640b57cec5SDimitry Andric void initializeScalarEvolutionWrapperPassPass(PassRegistry&);
365e8d8bef9SDimitry Andric void initializeScalarizeMaskedMemIntrinLegacyPassPass(PassRegistry &);
3660b57cec5SDimitry Andric void initializeScalarizerLegacyPassPass(PassRegistry&);
3670b57cec5SDimitry Andric void initializeScavengerTestPass(PassRegistry&);
3680b57cec5SDimitry Andric void initializeScopedNoAliasAAWrapperPassPass(PassRegistry&);
369e8d8bef9SDimitry Andric void initializeSeparateConstOffsetFromGEPLegacyPassPass(PassRegistry &);
3700b57cec5SDimitry Andric void initializeShadowStackGCLoweringPass(PassRegistry&);
3710b57cec5SDimitry Andric void initializeShrinkWrapPass(PassRegistry&);
3720b57cec5SDimitry Andric void initializeSimpleInlinerPass(PassRegistry&);
3730b57cec5SDimitry Andric void initializeSimpleLoopUnswitchLegacyPassPass(PassRegistry&);
3740b57cec5SDimitry Andric void initializeSingleLoopExtractorPass(PassRegistry&);
3750b57cec5SDimitry Andric void initializeSinkingLegacyPassPass(PassRegistry&);
3760b57cec5SDimitry Andric void initializeSjLjEHPreparePass(PassRegistry&);
3770b57cec5SDimitry Andric void initializeSlotIndexesPass(PassRegistry&);
3780b57cec5SDimitry Andric void initializeSpeculativeExecutionLegacyPassPass(PassRegistry&);
3790b57cec5SDimitry Andric void initializeSpillPlacementPass(PassRegistry&);
3800b57cec5SDimitry Andric void initializeStackColoringPass(PassRegistry&);
381*bdd1243dSDimitry Andric void initializeStackFrameLayoutAnalysisPassPass(PassRegistry &);
3820b57cec5SDimitry Andric void initializeStackMapLivenessPass(PassRegistry&);
3830b57cec5SDimitry Andric void initializeStackProtectorPass(PassRegistry&);
3840b57cec5SDimitry Andric void initializeStackSafetyGlobalInfoWrapperPassPass(PassRegistry &);
3850b57cec5SDimitry Andric void initializeStackSafetyInfoWrapperPassPass(PassRegistry &);
3860b57cec5SDimitry Andric void initializeStackSlotColoringPass(PassRegistry&);
387e8d8bef9SDimitry Andric void initializeStraightLineStrengthReduceLegacyPassPass(PassRegistry &);
3880b57cec5SDimitry Andric void initializeStripDeadDebugInfoPass(PassRegistry&);
3890b57cec5SDimitry Andric void initializeStripDeadPrototypesLegacyPassPass(PassRegistry&);
3900b57cec5SDimitry Andric void initializeStripDebugDeclarePass(PassRegistry&);
3915ffd83dbSDimitry Andric void initializeStripDebugMachineModulePass(PassRegistry &);
392e8d8bef9SDimitry Andric void initializeStripGCRelocatesLegacyPass(PassRegistry &);
3930b57cec5SDimitry Andric void initializeStripNonDebugSymbolsPass(PassRegistry&);
394e8d8bef9SDimitry Andric void initializeStripNonLineTableDebugLegacyPassPass(PassRegistry &);
3950b57cec5SDimitry Andric void initializeStripSymbolsPass(PassRegistry&);
396e8d8bef9SDimitry Andric void initializeStructurizeCFGLegacyPassPass(PassRegistry &);
3970b57cec5SDimitry Andric void initializeTailCallElimPass(PassRegistry&);
3980b57cec5SDimitry Andric void initializeTailDuplicatePass(PassRegistry&);
3990b57cec5SDimitry Andric void initializeTargetLibraryInfoWrapperPassPass(PassRegistry&);
4000b57cec5SDimitry Andric void initializeTargetPassConfigPass(PassRegistry&);
4010b57cec5SDimitry Andric void initializeTargetTransformInfoWrapperPassPass(PassRegistry&);
40281ad6265SDimitry Andric void initializeTLSVariableHoistLegacyPassPass(PassRegistry &);
4030b57cec5SDimitry Andric void initializeTwoAddressInstructionPassPass(PassRegistry&);
4040b57cec5SDimitry Andric void initializeTypeBasedAAWrapperPassPass(PassRegistry&);
405*bdd1243dSDimitry Andric void initializeTypePromotionLegacyPass(PassRegistry&);
406*bdd1243dSDimitry Andric void initializeUniformityInfoWrapperPassPass(PassRegistry &);
407e8d8bef9SDimitry Andric void initializeUnifyFunctionExitNodesLegacyPassPass(PassRegistry &);
408e8d8bef9SDimitry Andric void initializeUnifyLoopExitsLegacyPassPass(PassRegistry &);
4090b57cec5SDimitry Andric void initializeUnpackMachineBundlesPass(PassRegistry&);
4100b57cec5SDimitry Andric void initializeUnreachableBlockElimLegacyPassPass(PassRegistry&);
4110b57cec5SDimitry Andric void initializeUnreachableMachineBlockElimPass(PassRegistry&);
4125ffd83dbSDimitry Andric void initializeVectorCombineLegacyPassPass(PassRegistry&);
4130b57cec5SDimitry Andric void initializeVerifierLegacyPassPass(PassRegistry&);
4140b57cec5SDimitry Andric void initializeVirtRegMapPass(PassRegistry&);
4150b57cec5SDimitry Andric void initializeVirtRegRewriterPass(PassRegistry&);
4160b57cec5SDimitry Andric void initializeWarnMissedTransformationsLegacyPass(PassRegistry &);
4170b57cec5SDimitry Andric void initializeWasmEHPreparePass(PassRegistry&);
4180b57cec5SDimitry Andric void initializeWinEHPreparePass(PassRegistry&);
4190b57cec5SDimitry Andric void initializeWriteBitcodePassPass(PassRegistry&);
4200b57cec5SDimitry Andric void initializeXRayInstrumentationPass(PassRegistry&);
4210b57cec5SDimitry Andric 
4220b57cec5SDimitry Andric } // end namespace llvm
4230b57cec5SDimitry Andric 
4240b57cec5SDimitry Andric #endif // LLVM_INITIALIZEPASSES_H
425