CodeGen.cpp revision 239462
142120Sdes//===-- CodeGen.cpp -------------------------------------------------------===// 242120Sdes// 342120Sdes// The LLVM Compiler Infrastructure 442120Sdes// 542120Sdes// This file is distributed under the University of Illinois Open Source 642120Sdes// License. See LICENSE.TXT for details. 742120Sdes// 842120Sdes//===----------------------------------------------------------------------===// 942120Sdes// 1042120Sdes// This file implements the common initialization routines for the 1142120Sdes// CodeGen library. 1242120Sdes// 1342120Sdes//===----------------------------------------------------------------------===// 1442120Sdes 1542120Sdes#include "llvm/InitializePasses.h" 1642120Sdes#include "llvm-c/Initialization.h" 1742120Sdes 1842120Sdesusing namespace llvm; 1942120Sdes 2042120Sdes/// initializeCodeGen - Initialize all passes linked into the CodeGen library. 2142120Sdesvoid llvm::initializeCodeGen(PassRegistry &Registry) { 2242120Sdes initializeBranchFolderPassPass(Registry); 2342120Sdes initializeCalculateSpillWeightsPass(Registry); 2442120Sdes initializeCodePlacementOptPass(Registry); 2542120Sdes initializeDeadMachineInstructionElimPass(Registry); 2642120Sdes initializeEarlyIfConverterPass(Registry); 2742120Sdes initializeExpandPostRAPass(Registry); 2850477Speter initializeExpandISelPseudosPass(Registry); 2942120Sdes initializeFinalizeMachineBundlesPass(Registry); 3042120Sdes initializeGCMachineCodeAnalysisPass(Registry); 3142120Sdes initializeGCModuleInfoPass(Registry); 3242120Sdes initializeIfConverterPass(Registry); 3342120Sdes initializeLiveDebugVariablesPass(Registry); 3442120Sdes initializeLiveIntervalsPass(Registry); 3542120Sdes initializeLiveStacksPass(Registry); 3648104Syokota initializeLiveVariablesPass(Registry); 3748104Syokota initializeLocalStackSlotPassPass(Registry); 3842120Sdes initializeMachineBlockFrequencyInfoPass(Registry); 3948104Syokota initializeMachineBlockPlacementPass(Registry); 4048104Syokota initializeMachineBlockPlacementStatsPass(Registry); 4148104Syokota initializeMachineCopyPropagationPass(Registry); 4242120Sdes initializeMachineCSEPass(Registry); 4342120Sdes initializeMachineDominatorTreePass(Registry); 4443673Sdes initializeMachineLICMPass(Registry); 4542504Syokota initializeMachineLoopInfoPass(Registry); 4642120Sdes initializeMachineModuleInfoPass(Registry); 4742120Sdes initializeMachineSchedulerPass(Registry); 4842120Sdes initializeMachineSinkingPass(Registry); 4942120Sdes initializeMachineVerifierPassPass(Registry); 5042504Syokota initializeOptimizePHIsPass(Registry); 5142120Sdes initializePHIEliminationPass(Registry); 5242120Sdes initializePeepholeOptimizerPass(Registry); 5342120Sdes initializePostRASchedulerPass(Registry); 5443673Sdes initializeProcessImplicitDefsPass(Registry); 5542120Sdes initializePEIPass(Registry); 5642504Syokota initializeRegisterCoalescerPass(Registry); 5742120Sdes initializeSlotIndexesPass(Registry); 5842120Sdes initializeStackProtectorPass(Registry); 5942120Sdes initializeStackSlotColoringPass(Registry); 6042120Sdes initializeStrongPHIEliminationPass(Registry); 6143673Sdes initializeTailDuplicatePassPass(Registry); 6242120Sdes initializeTargetPassConfigPass(Registry); 6342120Sdes initializeTwoAddressInstructionPassPass(Registry); 6442120Sdes initializeUnpackMachineBundlesPass(Registry); 6542504Syokota initializeUnreachableBlockElimPass(Registry); 6642120Sdes initializeUnreachableMachineBlockElimPass(Registry); 6743673Sdes initializeVirtRegMapPass(Registry); 6842120Sdes initializeVirtRegRewriterPass(Registry); 6942120Sdes initializeLowerIntrinsicsPass(Registry); 7042504Syokota initializeMachineFunctionPrinterPassPass(Registry); 7142120Sdes} 7243673Sdes 7342120Sdesvoid LLVMInitializeCodeGen(LLVMPassRegistryRef R) { 7442120Sdes initializeCodeGen(*unwrap(R)); 7542120Sdes} 7642120Sdes