Path: blob/main/contrib/llvm-project/llvm/lib/CodeGen/CodeGen.cpp
35232 views
//===-- CodeGen.cpp -------------------------------------------------------===//1//2// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.3// See https://llvm.org/LICENSE.txt for license information.4// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception5//6//===----------------------------------------------------------------------===//7//8// This file implements the common initialization routines for the9// CodeGen library.10//11//===----------------------------------------------------------------------===//1213#include "llvm/InitializePasses.h"14#include "llvm/PassRegistry.h"1516using namespace llvm;1718/// initializeCodeGen - Initialize all passes linked into the CodeGen library.19void llvm::initializeCodeGen(PassRegistry &Registry) {20initializeAssignmentTrackingAnalysisPass(Registry);21initializeAtomicExpandLegacyPass(Registry);22initializeBasicBlockPathCloningPass(Registry);23initializeBasicBlockSectionsPass(Registry);24initializeBranchFolderPassPass(Registry);25initializeBranchRelaxationPass(Registry);26initializeBreakFalseDepsPass(Registry);27initializeCallBrPreparePass(Registry);28initializeCFGuardLongjmpPass(Registry);29initializeCFIFixupPass(Registry);30initializeCFIInstrInserterPass(Registry);31initializeCheckDebugMachineModulePass(Registry);32initializeCodeGenPrepareLegacyPassPass(Registry);33initializeDeadMachineInstructionElimPass(Registry);34initializeDebugifyMachineModulePass(Registry);35initializeDetectDeadLanesPass(Registry);36initializeDwarfEHPrepareLegacyPassPass(Registry);37initializeEarlyIfConverterPass(Registry);38initializeEarlyIfPredicatorPass(Registry);39initializeEarlyMachineLICMPass(Registry);40initializeEarlyTailDuplicatePass(Registry);41initializeExpandLargeDivRemLegacyPassPass(Registry);42initializeExpandLargeFpConvertLegacyPassPass(Registry);43initializeExpandMemCmpLegacyPassPass(Registry);44initializeExpandPostRAPass(Registry);45initializeFEntryInserterPass(Registry);46initializeFinalizeISelPass(Registry);47initializeFinalizeMachineBundlesPass(Registry);48initializeFixupStatepointCallerSavedPass(Registry);49initializeFuncletLayoutPass(Registry);50initializeGCMachineCodeAnalysisPass(Registry);51initializeGCModuleInfoPass(Registry);52initializeHardwareLoopsLegacyPass(Registry);53initializeIfConverterPass(Registry);54initializeImplicitNullChecksPass(Registry);55initializeIndirectBrExpandLegacyPassPass(Registry);56initializeInitUndefPass(Registry);57initializeInterleavedLoadCombinePass(Registry);58initializeInterleavedAccessPass(Registry);59initializeJMCInstrumenterPass(Registry);60initializeLiveDebugValuesPass(Registry);61initializeLiveDebugVariablesPass(Registry);62initializeLiveIntervalsWrapperPassPass(Registry);63initializeLiveRangeShrinkPass(Registry);64initializeLiveStacksPass(Registry);65initializeLiveVariablesWrapperPassPass(Registry);66initializeLocalStackSlotPassPass(Registry);67initializeLowerGlobalDtorsLegacyPassPass(Registry);68initializeLowerIntrinsicsPass(Registry);69initializeMIRAddFSDiscriminatorsPass(Registry);70initializeMIRCanonicalizerPass(Registry);71initializeMIRNamerPass(Registry);72initializeMIRProfileLoaderPassPass(Registry);73initializeMachineBlockFrequencyInfoWrapperPassPass(Registry);74initializeMachineBlockPlacementPass(Registry);75initializeMachineBlockPlacementStatsPass(Registry);76initializeMachineCFGPrinterPass(Registry);77initializeMachineCSEPass(Registry);78initializeMachineCombinerPass(Registry);79initializeMachineCopyPropagationPass(Registry);80initializeMachineCycleInfoPrinterPassPass(Registry);81initializeMachineCycleInfoWrapperPassPass(Registry);82initializeMachineDominatorTreeWrapperPassPass(Registry);83initializeMachineFunctionPrinterPassPass(Registry);84initializeMachineLateInstrsCleanupPass(Registry);85initializeMachineLICMPass(Registry);86initializeMachineLoopInfoWrapperPassPass(Registry);87initializeMachineModuleInfoWrapperPassPass(Registry);88initializeMachineOptimizationRemarkEmitterPassPass(Registry);89initializeMachineOutlinerPass(Registry);90initializeMachinePipelinerPass(Registry);91initializeMachineSanitizerBinaryMetadataPass(Registry);92initializeModuloScheduleTestPass(Registry);93initializeMachinePostDominatorTreeWrapperPassPass(Registry);94initializeMachineRegionInfoPassPass(Registry);95initializeMachineSchedulerPass(Registry);96initializeMachineSinkingPass(Registry);97initializeMachineUniformityAnalysisPassPass(Registry);98initializeMachineUniformityInfoPrinterPassPass(Registry);99initializeMachineVerifierLegacyPassPass(Registry);100initializeObjCARCContractLegacyPassPass(Registry);101initializeOptimizePHIsPass(Registry);102initializePEIPass(Registry);103initializePHIEliminationPass(Registry);104initializePatchableFunctionPass(Registry);105initializePeepholeOptimizerPass(Registry);106initializePostMachineSchedulerPass(Registry);107initializePostRAHazardRecognizerPass(Registry);108initializePostRAMachineSinkingPass(Registry);109initializePostRASchedulerPass(Registry);110initializePreISelIntrinsicLoweringLegacyPassPass(Registry);111initializeProcessImplicitDefsPass(Registry);112initializeRABasicPass(Registry);113initializeRAGreedyPass(Registry);114initializeRegAllocFastPass(Registry);115initializeRegUsageInfoCollectorPass(Registry);116initializeRegUsageInfoPropagationPass(Registry);117initializeRegisterCoalescerPass(Registry);118initializeRemoveRedundantDebugValuesPass(Registry);119initializeRenameIndependentSubregsPass(Registry);120initializeSafeStackLegacyPassPass(Registry);121initializeSelectOptimizePass(Registry);122initializeShadowStackGCLoweringPass(Registry);123initializeShrinkWrapPass(Registry);124initializeSjLjEHPreparePass(Registry);125initializeSlotIndexesWrapperPassPass(Registry);126initializeStackColoringPass(Registry);127initializeStackFrameLayoutAnalysisPassPass(Registry);128initializeStackMapLivenessPass(Registry);129initializeStackProtectorPass(Registry);130initializeStackSlotColoringPass(Registry);131initializeStripDebugMachineModulePass(Registry);132initializeTailDuplicatePass(Registry);133initializeTargetPassConfigPass(Registry);134initializeTwoAddressInstructionLegacyPassPass(Registry);135initializeTypePromotionLegacyPass(Registry);136initializeUnpackMachineBundlesPass(Registry);137initializeUnreachableBlockElimLegacyPassPass(Registry);138initializeUnreachableMachineBlockElimPass(Registry);139initializeVirtRegMapPass(Registry);140initializeVirtRegRewriterPass(Registry);141initializeWasmEHPreparePass(Registry);142initializeWinEHPreparePass(Registry);143initializeXRayInstrumentationPass(Registry);144}145146147