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