You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
96 lines
3.8 KiB
96 lines
3.8 KiB
4 months ago
|
//===-- CodeGen.cpp -------------------------------------------------------===//
|
||
|
//
|
||
|
// The LLVM Compiler Infrastructure
|
||
|
//
|
||
|
// This file is distributed under the University of Illinois Open Source
|
||
|
// License. See LICENSE.TXT for details.
|
||
|
//
|
||
|
//===----------------------------------------------------------------------===//
|
||
|
//
|
||
|
// This file implements the common initialization routines for the
|
||
|
// CodeGen library.
|
||
|
//
|
||
|
//===----------------------------------------------------------------------===//
|
||
|
|
||
|
#include "llvm/InitializePasses.h"
|
||
|
#include "llvm-c/Initialization.h"
|
||
|
#include "llvm/PassRegistry.h"
|
||
|
|
||
|
using namespace llvm;
|
||
|
|
||
|
/// initializeCodeGen - Initialize all passes linked into the CodeGen library.
|
||
|
void llvm::initializeCodeGen(PassRegistry &Registry) {
|
||
|
initializeAtomicExpandPass(Registry);
|
||
|
initializeBranchFolderPassPass(Registry);
|
||
|
initializeCodeGenPreparePass(Registry);
|
||
|
initializeDeadMachineInstructionElimPass(Registry);
|
||
|
initializeDetectDeadLanesPass(Registry);
|
||
|
initializeDwarfEHPreparePass(Registry);
|
||
|
initializeEarlyIfConverterPass(Registry);
|
||
|
initializeExpandISelPseudosPass(Registry);
|
||
|
initializeExpandPostRAPass(Registry);
|
||
|
initializeFinalizeMachineBundlesPass(Registry);
|
||
|
initializeFuncletLayoutPass(Registry);
|
||
|
initializeGCMachineCodeAnalysisPass(Registry);
|
||
|
initializeGCModuleInfoPass(Registry);
|
||
|
initializeIfConverterPass(Registry);
|
||
|
initializeInterleavedAccessPass(Registry);
|
||
|
initializeLiveDebugVariablesPass(Registry);
|
||
|
initializeLiveIntervalsPass(Registry);
|
||
|
initializeLiveStacksPass(Registry);
|
||
|
initializeLiveVariablesPass(Registry);
|
||
|
initializeLocalStackSlotPassPass(Registry);
|
||
|
initializeLowerIntrinsicsPass(Registry);
|
||
|
initializeMachineBlockFrequencyInfoPass(Registry);
|
||
|
initializeMachineBlockPlacementPass(Registry);
|
||
|
initializeMachineBlockPlacementStatsPass(Registry);
|
||
|
initializeMachineCSEPass(Registry);
|
||
|
initializeImplicitNullChecksPass(Registry);
|
||
|
initializeMachineCombinerPass(Registry);
|
||
|
initializeMachineCopyPropagationPass(Registry);
|
||
|
initializeMachineDominatorTreePass(Registry);
|
||
|
initializeMachineFunctionPrinterPassPass(Registry);
|
||
|
initializeMachineLICMPass(Registry);
|
||
|
initializeMachineLoopInfoPass(Registry);
|
||
|
initializeMachineModuleInfoPass(Registry);
|
||
|
initializeMachinePipelinerPass(Registry);
|
||
|
initializeMachinePostDominatorTreePass(Registry);
|
||
|
initializeMachineSchedulerPass(Registry);
|
||
|
initializeMachineSinkingPass(Registry);
|
||
|
initializeMachineVerifierPassPass(Registry);
|
||
|
initializeXRayInstrumentationPass(Registry);
|
||
|
initializePatchableFunctionPass(Registry);
|
||
|
initializeOptimizePHIsPass(Registry);
|
||
|
initializePEIPass(Registry);
|
||
|
initializePHIEliminationPass(Registry);
|
||
|
initializePeepholeOptimizerPass(Registry);
|
||
|
initializePostMachineSchedulerPass(Registry);
|
||
|
initializePostRAHazardRecognizerPass(Registry);
|
||
|
initializePostRASchedulerPass(Registry);
|
||
|
initializePreISelIntrinsicLoweringLegacyPassPass(Registry);
|
||
|
initializeProcessImplicitDefsPass(Registry);
|
||
|
initializeRegisterCoalescerPass(Registry);
|
||
|
initializeRenameIndependentSubregsPass(Registry);
|
||
|
initializeShrinkWrapPass(Registry);
|
||
|
initializeSlotIndexesPass(Registry);
|
||
|
initializeStackColoringPass(Registry);
|
||
|
initializeStackMapLivenessPass(Registry);
|
||
|
initializeLiveDebugValuesPass(Registry);
|
||
|
initializeSafeStackPass(Registry);
|
||
|
initializeStackProtectorPass(Registry);
|
||
|
initializeStackSlotColoringPass(Registry);
|
||
|
initializeTailDuplicatePassPass(Registry);
|
||
|
initializeTargetPassConfigPass(Registry);
|
||
|
initializeTwoAddressInstructionPassPass(Registry);
|
||
|
initializeUnpackMachineBundlesPass(Registry);
|
||
|
initializeUnreachableBlockElimLegacyPassPass(Registry);
|
||
|
initializeUnreachableMachineBlockElimPass(Registry);
|
||
|
initializeVirtRegMapPass(Registry);
|
||
|
initializeVirtRegRewriterPass(Registry);
|
||
|
initializeWinEHPreparePass(Registry);
|
||
|
}
|
||
|
|
||
|
void LLVMInitializeCodeGen(LLVMPassRegistryRef R) {
|
||
|
initializeCodeGen(*unwrap(R));
|
||
|
}
|