2010-10-07 18:41:20 +00:00
|
|
|
//===-- 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"
|
2014-01-07 11:48:04 +00:00
|
|
|
#include "llvm/PassRegistry.h"
|
2010-10-07 18:41:20 +00:00
|
|
|
|
|
|
|
|
using namespace llvm;
|
|
|
|
|
|
|
|
|
|
/// initializeCodeGen - Initialize all passes linked into the CodeGen library.
|
|
|
|
|
void llvm::initializeCodeGen(PassRegistry &Registry) {
|
2014-08-21 21:50:01 +00:00
|
|
|
initializeAtomicExpandPass(Registry);
|
2012-02-08 21:22:48 +00:00
|
|
|
initializeBranchFolderPassPass(Registry);
|
2016-10-06 15:38:53 +00:00
|
|
|
initializeBranchRelaxationPass(Registry);
|
2014-02-22 00:07:45 +00:00
|
|
|
initializeCodeGenPreparePass(Registry);
|
2016-09-01 09:42:39 +00:00
|
|
|
initializeCountingFunctionInserterPass(Registry);
|
2010-10-07 18:41:20 +00:00
|
|
|
initializeDeadMachineInstructionElimPass(Registry);
|
2016-04-28 03:07:16 +00:00
|
|
|
initializeDetectDeadLanesPass(Registry);
|
2015-03-09 22:45:16 +00:00
|
|
|
initializeDwarfEHPreparePass(Registry);
|
2012-07-04 00:09:54 +00:00
|
|
|
initializeEarlyIfConverterPass(Registry);
|
2015-02-20 02:15:36 +00:00
|
|
|
initializeExpandISelPseudosPass(Registry);
|
2015-03-09 22:45:16 +00:00
|
|
|
initializeExpandPostRAPass(Registry);
|
2012-02-08 21:23:13 +00:00
|
|
|
initializeFinalizeMachineBundlesPass(Registry);
|
2015-09-17 20:45:18 +00:00
|
|
|
initializeFuncletLayoutPass(Registry);
|
2012-02-08 21:23:13 +00:00
|
|
|
initializeGCMachineCodeAnalysisPass(Registry);
|
2010-10-07 18:41:20 +00:00
|
|
|
initializeGCModuleInfoPass(Registry);
|
|
|
|
|
initializeIfConverterPass(Registry);
|
2016-05-19 20:08:32 +00:00
|
|
|
initializeInterleavedAccessPass(Registry);
|
2010-11-30 02:17:10 +00:00
|
|
|
initializeLiveDebugVariablesPass(Registry);
|
2010-10-07 18:41:20 +00:00
|
|
|
initializeLiveIntervalsPass(Registry);
|
|
|
|
|
initializeLiveStacksPass(Registry);
|
|
|
|
|
initializeLiveVariablesPass(Registry);
|
2012-02-08 21:23:13 +00:00
|
|
|
initializeLocalStackSlotPassPass(Registry);
|
2015-03-09 22:45:16 +00:00
|
|
|
initializeLowerIntrinsicsPass(Registry);
|
2011-07-25 19:25:40 +00:00
|
|
|
initializeMachineBlockFrequencyInfoPass(Registry);
|
2011-10-21 06:46:38 +00:00
|
|
|
initializeMachineBlockPlacementPass(Registry);
|
2011-11-02 07:17:12 +00:00
|
|
|
initializeMachineBlockPlacementStatsPass(Registry);
|
2015-02-20 02:15:36 +00:00
|
|
|
initializeMachineCSEPass(Registry);
|
2015-06-15 18:44:27 +00:00
|
|
|
initializeImplicitNullChecksPass(Registry);
|
2015-03-09 22:45:16 +00:00
|
|
|
initializeMachineCombinerPass(Registry);
|
|
|
|
|
initializeMachineCopyPropagationPass(Registry);
|
2010-10-07 18:41:20 +00:00
|
|
|
initializeMachineDominatorTreePass(Registry);
|
2015-03-09 22:45:16 +00:00
|
|
|
initializeMachineFunctionPrinterPassPass(Registry);
|
2010-10-07 18:41:20 +00:00
|
|
|
initializeMachineLICMPass(Registry);
|
|
|
|
|
initializeMachineLoopInfoPass(Registry);
|
|
|
|
|
initializeMachineModuleInfoPass(Registry);
|
2016-07-29 16:44:44 +00:00
|
|
|
initializeMachinePipelinerPass(Registry);
|
2015-03-09 22:45:16 +00:00
|
|
|
initializeMachinePostDominatorTreePass(Registry);
|
2012-02-08 21:23:13 +00:00
|
|
|
initializeMachineSchedulerPass(Registry);
|
2010-10-07 18:41:20 +00:00
|
|
|
initializeMachineSinkingPass(Registry);
|
|
|
|
|
initializeMachineVerifierPassPass(Registry);
|
2016-07-14 04:06:33 +00:00
|
|
|
initializeXRayInstrumentationPass(Registry);
|
2016-04-19 05:24:47 +00:00
|
|
|
initializePatchableFunctionPass(Registry);
|
2010-10-07 18:41:20 +00:00
|
|
|
initializeOptimizePHIsPass(Registry);
|
2015-03-09 22:45:16 +00:00
|
|
|
initializePEIPass(Registry);
|
2010-10-07 18:41:20 +00:00
|
|
|
initializePHIEliminationPass(Registry);
|
|
|
|
|
initializePeepholeOptimizerPass(Registry);
|
2013-12-28 21:56:51 +00:00
|
|
|
initializePostMachineSchedulerPass(Registry);
|
2016-04-22 14:43:50 +00:00
|
|
|
initializePostRAHazardRecognizerPass(Registry);
|
2012-02-08 21:23:13 +00:00
|
|
|
initializePostRASchedulerPass(Registry);
|
2016-06-24 20:13:42 +00:00
|
|
|
initializePreISelIntrinsicLoweringLegacyPassPass(Registry);
|
2010-10-07 18:41:20 +00:00
|
|
|
initializeProcessImplicitDefsPass(Registry);
|
2016-11-14 21:50:13 +00:00
|
|
|
initializeRAGreedyPass(Registry);
|
2011-06-26 22:34:10 +00:00
|
|
|
initializeRegisterCoalescerPass(Registry);
|
2016-05-31 22:38:06 +00:00
|
|
|
initializeRenameIndependentSubregsPass(Registry);
|
2015-05-05 17:38:16 +00:00
|
|
|
initializeShrinkWrapPass(Registry);
|
2010-10-07 18:41:20 +00:00
|
|
|
initializeSlotIndexesPass(Registry);
|
2015-02-20 02:15:36 +00:00
|
|
|
initializeStackColoringPass(Registry);
|
2015-03-09 22:45:16 +00:00
|
|
|
initializeStackMapLivenessPass(Registry);
|
2015-12-16 11:09:48 +00:00
|
|
|
initializeLiveDebugValuesPass(Registry);
|
2016-01-27 16:53:42 +00:00
|
|
|
initializeSafeStackPass(Registry);
|
2015-03-09 22:45:16 +00:00
|
|
|
initializeStackProtectorPass(Registry);
|
2010-10-07 18:41:20 +00:00
|
|
|
initializeStackSlotColoringPass(Registry);
|
2012-02-08 21:23:13 +00:00
|
|
|
initializeTailDuplicatePassPass(Registry);
|
2012-02-04 02:56:45 +00:00
|
|
|
initializeTargetPassConfigPass(Registry);
|
2010-10-07 18:41:20 +00:00
|
|
|
initializeTwoAddressInstructionPassPass(Registry);
|
2012-02-08 21:23:13 +00:00
|
|
|
initializeUnpackMachineBundlesPass(Registry);
|
2016-07-08 03:32:49 +00:00
|
|
|
initializeUnreachableBlockElimLegacyPassPass(Registry);
|
2010-10-07 18:41:20 +00:00
|
|
|
initializeUnreachableMachineBlockElimPass(Registry);
|
|
|
|
|
initializeVirtRegMapPass(Registry);
|
2012-06-08 23:44:45 +00:00
|
|
|
initializeVirtRegRewriterPass(Registry);
|
2015-03-09 22:45:16 +00:00
|
|
|
initializeWinEHPreparePass(Registry);
|
2010-10-07 18:41:20 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
|
|
void LLVMInitializeCodeGen(LLVMPassRegistryRef R) {
|
|
|
|
|
initializeCodeGen(*unwrap(R));
|
|
|
|
|
}
|