CodeGen.cpp revision 218885
1218885Sdim//===-- CodeGen.cpp -------------------------------------------------------===// 2218885Sdim// 3218885Sdim// The LLVM Compiler Infrastructure 4218885Sdim// 5218885Sdim// This file is distributed under the University of Illinois Open Source 6218885Sdim// License. See LICENSE.TXT for details. 7218885Sdim// 8218885Sdim//===----------------------------------------------------------------------===// 9218885Sdim// 10218885Sdim// This file implements the common initialization routines for the 11218885Sdim// CodeGen library. 12218885Sdim// 13218885Sdim//===----------------------------------------------------------------------===// 14218885Sdim 15218885Sdim#include "llvm/InitializePasses.h" 16218885Sdim#include "llvm-c/Initialization.h" 17218885Sdim 18218885Sdimusing namespace llvm; 19218885Sdim 20218885Sdim/// initializeCodeGen - Initialize all passes linked into the CodeGen library. 21218885Sdimvoid llvm::initializeCodeGen(PassRegistry &Registry) { 22218885Sdim initializeCalculateSpillWeightsPass(Registry); 23218885Sdim initializeDeadMachineInstructionElimPass(Registry); 24218885Sdim initializeGCModuleInfoPass(Registry); 25218885Sdim initializeIfConverterPass(Registry); 26218885Sdim initializeLiveDebugVariablesPass(Registry); 27218885Sdim initializeLiveIntervalsPass(Registry); 28218885Sdim initializeLiveStacksPass(Registry); 29218885Sdim initializeLiveVariablesPass(Registry); 30218885Sdim initializeMachineCSEPass(Registry); 31218885Sdim initializeMachineDominatorTreePass(Registry); 32218885Sdim initializeMachineLICMPass(Registry); 33218885Sdim initializeMachineLoopInfoPass(Registry); 34218885Sdim initializeMachineModuleInfoPass(Registry); 35218885Sdim initializeMachineSinkingPass(Registry); 36218885Sdim initializeMachineVerifierPassPass(Registry); 37218885Sdim initializeOptimizePHIsPass(Registry); 38218885Sdim initializePHIEliminationPass(Registry); 39218885Sdim initializePeepholeOptimizerPass(Registry); 40218885Sdim initializePreAllocSplittingPass(Registry); 41218885Sdim initializeProcessImplicitDefsPass(Registry); 42218885Sdim initializePEIPass(Registry); 43218885Sdim initializeRALinScanPass(Registry); 44218885Sdim initializeRegisterCoalescerAnalysisGroup(Registry); 45218885Sdim initializeRenderMachineFunctionPass(Registry); 46218885Sdim initializeSimpleRegisterCoalescingPass(Registry); 47218885Sdim initializeSlotIndexesPass(Registry); 48218885Sdim initializeLoopSplitterPass(Registry); 49218885Sdim initializeStackProtectorPass(Registry); 50218885Sdim initializeStackSlotColoringPass(Registry); 51218885Sdim initializeStrongPHIEliminationPass(Registry); 52218885Sdim initializeTwoAddressInstructionPassPass(Registry); 53218885Sdim initializeUnreachableBlockElimPass(Registry); 54218885Sdim initializeUnreachableMachineBlockElimPass(Registry); 55218885Sdim initializeVirtRegMapPass(Registry); 56218885Sdim initializeLowerIntrinsicsPass(Registry); 57218885Sdim} 58218885Sdim 59218885Sdimvoid LLVMInitializeCodeGen(LLVMPassRegistryRef R) { 60218885Sdim initializeCodeGen(*unwrap(R)); 61218885Sdim} 62