blob: 037c0dbb56ecec04318f6a667f9d39649362a140 [file] [log] [blame]
Eugene Zelenko9797e4a2017-09-06 23:05:38 +00001//===- llvm/InitializePasses.h - Initialize All Passes ----------*- C++ -*-===//
Owen Anderson7bf8a4b2010-10-07 04:17:38 +00002//
3// The LLVM Compiler Infrastructure
4//
5// This file is distributed under the University of Illinois Open Source
6// License. See LICENSE.TXT for details.
7//
8//===----------------------------------------------------------------------===//
9//
10// This file contains the declarations for the pass initialization routines
11// for the entire LLVM project.
12//
13//===----------------------------------------------------------------------===//
14
15#ifndef LLVM_INITIALIZEPASSES_H
16#define LLVM_INITIALIZEPASSES_H
17
18namespace llvm {
19
20class PassRegistry;
21
Sanjoy Das1684d072016-06-09 19:58:30 +000022/// Initialize all passes linked into the TransformUtils library.
Owen Andersonb8a1ccfc2010-10-07 19:51:21 +000023void initializeCore(PassRegistry&);
24
Sanjoy Das1684d072016-06-09 19:58:30 +000025/// Initialize all passes linked into the TransformUtils library.
Owen Anderson1a3d2332010-10-07 17:55:47 +000026void initializeTransformUtils(PassRegistry&);
27
Sanjoy Das1684d072016-06-09 19:58:30 +000028/// Initialize all passes linked into the ScalarOpts library.
Owen Anderson1a3d2332010-10-07 17:55:47 +000029void initializeScalarOpts(PassRegistry&);
30
Sanjoy Das1684d072016-06-09 19:58:30 +000031/// Initialize all passes linked into the ObjCARCOpts library.
Michael Gottesman24c48982013-01-28 01:35:51 +000032void initializeObjCARCOpts(PassRegistry&);
33
Sanjoy Das1684d072016-06-09 19:58:30 +000034/// Initialize all passes linked into the Vectorize library.
Hal Finkelde5e5ec2012-02-01 03:51:43 +000035void initializeVectorization(PassRegistry&);
36
Sanjoy Das1684d072016-06-09 19:58:30 +000037/// Initialize all passes linked into the InstCombine library.
Owen Anderson74cfb0c2010-10-07 20:04:55 +000038void initializeInstCombine(PassRegistry&);
39
Craig Topper043b2352018-04-24 00:05:21 +000040/// Initialize all passes linked into the AggressiveInstCombine library.
41void initializeAggressiveInstCombine(PassRegistry&);
42
Sanjoy Das1684d072016-06-09 19:58:30 +000043/// Initialize all passes linked into the IPO library.
Owen Anderson2c812962010-10-07 18:09:59 +000044void initializeIPO(PassRegistry&);
45
Sanjoy Das1684d072016-06-09 19:58:30 +000046/// Initialize all passes linked into the Instrumentation library.
Owen Andersonaa4897f2010-10-07 20:17:24 +000047void initializeInstrumentation(PassRegistry&);
48
Sanjoy Das1684d072016-06-09 19:58:30 +000049/// Initialize all passes linked into the Analysis library.
Owen Anderson861f4c32010-10-07 18:31:00 +000050void initializeAnalysis(PassRegistry&);
51
David Majnemer88019052016-07-28 21:04:31 +000052/// Initialize all passes linked into the Coroutines library.
53void initializeCoroutines(PassRegistry&);
54
Sanjoy Das1684d072016-06-09 19:58:30 +000055/// Initialize all passes linked into the CodeGen library.
Owen Anderson78b15242010-10-07 18:41:20 +000056void initializeCodeGen(PassRegistry&);
57
Quentin Colombet1f00e2d2016-03-08 01:38:55 +000058/// Initialize all passes linked into the GlobalISel library.
Matthias Braun6012ab12017-03-18 05:05:29 +000059void initializeGlobalISel(PassRegistry&);
Quentin Colombet1f00e2d2016-03-08 01:38:55 +000060
Sanjoy Das1684d072016-06-09 19:58:30 +000061/// Initialize all passes linked into the CodeGen library.
Owen Anderson99663062010-10-07 18:50:11 +000062void initializeTarget(PassRegistry&);
63
Chandler Carruth89a08aa2016-02-20 03:46:03 +000064void initializeAAEvalLegacyPassPass(PassRegistry&);
Matthias Braun6012ab12017-03-18 05:05:29 +000065void initializeAAResultsWrapperPassPass(PassRegistry&);
Justin Bogneraf019982015-10-30 23:13:18 +000066void initializeADCELegacyPassPass(PassRegistry&);
Xinliang David Li438355c2016-06-15 21:51:30 +000067void initializeAddDiscriminatorsLegacyPassPass(PassRegistry&);
Leonard Chanb49d1c12018-10-26 22:51:51 +000068void initializeAddressSanitizerModulePass(PassRegistry&);
69void initializeAddressSanitizerPass(PassRegistry&);
Amjad Aboudc6483fb2018-01-25 12:06:32 +000070void initializeAggressiveInstCombinerLegacyPassPass(PassRegistry&);
Owen Anderson7bf8a4b2010-10-07 04:17:38 +000071void initializeAliasSetPrinterPass(PassRegistry&);
Sanjoy Das1684d072016-06-09 19:58:30 +000072void initializeAlignmentFromAssumptionsPass(PassRegistry&);
Chandler Carruthb699f7b2016-08-17 02:56:20 +000073void initializeAlwaysInlinerLegacyPassPass(PassRegistry&);
Owen Anderson7bf8a4b2010-10-07 04:17:38 +000074void initializeArgPromotionPass(PassRegistry&);
Matthias Braun6012ab12017-03-18 05:05:29 +000075void initializeAssumptionCacheTrackerPass(PassRegistry&);
Robin Morissetcf165c32014-08-21 21:50:01 +000076void initializeAtomicExpandPass(PassRegistry&);
Matthias Braun6012ab12017-03-18 05:05:29 +000077void initializeBDCELegacyPassPass(PassRegistry&);
Chandler Carruth63a1eb62012-10-18 08:05:46 +000078void initializeBarrierNoopPass(PassRegistry&);
Chandler Carruth91468332015-09-09 17:55:00 +000079void initializeBasicAAWrapperPassPass(PassRegistry&);
Volkan Keles22b25642018-01-23 21:51:34 +000080void initializeBlockExtractorPass(PassRegistry &);
Wei Mid5892382015-07-14 23:40:50 +000081void initializeBlockFrequencyInfoWrapperPassPass(PassRegistry&);
Chandler Carruth8dd352a2017-11-14 01:30:04 +000082void initializeBoundsCheckingLegacyPassPass(PassRegistry&);
Andrew Trick61f1e3d2012-02-08 21:22:48 +000083void initializeBranchFolderPassPass(PassRegistry&);
Cong Hou8770f7a2015-07-15 22:48:29 +000084void initializeBranchProbabilityInfoWrapperPassPass(PassRegistry&);
Matt Arsenaultc205b622016-10-06 15:38:53 +000085void initializeBranchRelaxationPass(PassRegistry&);
Owen Anderson7bf8a4b2010-10-07 04:17:38 +000086void initializeBreakCriticalEdgesPass(PassRegistry&);
Marina Yatsinaef279182018-01-22 10:05:23 +000087void initializeBreakFalseDepsPass(PassRegistry&);
Teresa Johnson1f630242019-01-04 19:04:54 +000088void initializeCanonicalizeAliasesLegacyPassPass(PassRegistry &);
Matthias Braun6012ab12017-03-18 05:05:29 +000089void initializeCFGOnlyPrinterLegacyPassPass(PassRegistry&);
Sriraman Tallamf31e6632016-09-15 18:35:27 +000090void initializeCFGOnlyViewerLegacyPassPass(PassRegistry&);
91void initializeCFGPrinterLegacyPassPass(PassRegistry&);
Tom Stellard01d72032013-08-06 02:43:45 +000092void initializeCFGSimplifyPassPass(PassRegistry&);
Sriraman Tallamf31e6632016-09-15 18:35:27 +000093void initializeCFGViewerLegacyPassPass(PassRegistry&);
Petar Jovanovicb6bee652018-04-24 10:32:08 +000094void initializeCFIInstrInserterPass(PassRegistry&);
George Burgess IV3b5b98a2016-07-06 00:26:41 +000095void initializeCFLAndersAAWrapperPassPass(PassRegistry&);
96void initializeCFLSteensAAWrapperPassPass(PassRegistry&);
Sanjoy Das1684d072016-06-09 19:58:30 +000097void initializeCallGraphDOTPrinterPass(PassRegistry&);
98void initializeCallGraphPrinterLegacyPassPass(PassRegistry&);
99void initializeCallGraphViewerPass(PassRegistry&);
Matthias Braun6012ab12017-03-18 05:05:29 +0000100void initializeCallGraphWrapperPassPass(PassRegistry&);
Matthias Braunb94181c2018-07-26 00:27:48 +0000101void initializeCallSiteSplittingLegacyPassPass(PassRegistry&);
102void initializeCalledValuePropagationLegacyPassPass(PassRegistry &);
Owen Anderson7bf8a4b2010-10-07 04:17:38 +0000103void initializeCodeGenPreparePass(PassRegistry&);
Michael Kuperstein3fae04d2016-07-02 00:16:47 +0000104void initializeConstantHoistingLegacyPassPass(PassRegistry&);
Matthias Braun6012ab12017-03-18 05:05:29 +0000105void initializeConstantMergeLegacyPassPass(PassRegistry&);
Owen Anderson7bf8a4b2010-10-07 04:17:38 +0000106void initializeConstantPropagationPass(PassRegistry&);
Hiroshi Yamauchic38c8502018-09-04 17:19:13 +0000107void initializeControlHeightReductionLegacyPassPass(PassRegistry&);
Owen Anderson7bf8a4b2010-10-07 04:17:38 +0000108void initializeCorrelatedValuePropagationPass(PassRegistry&);
Sanjoy Das1684d072016-06-09 19:58:30 +0000109void initializeCostModelAnalysisPass(PassRegistry&);
Evgeniy Stepanov053615b2015-12-15 23:00:08 +0000110void initializeCrossDSOCFIPass(PassRegistry&);
Owen Anderson7bf8a4b2010-10-07 04:17:38 +0000111void initializeDAEPass(PassRegistry&);
112void initializeDAHPass(PassRegistry&);
Justin Bogner04d28142016-04-22 19:40:41 +0000113void initializeDCELegacyPassPass(PassRegistry&);
Justin Bogner9c81a3f2016-05-17 21:38:13 +0000114void initializeDSELegacyPassPass(PassRegistry&);
Sanjoy Das1684d072016-06-09 19:58:30 +0000115void initializeDataFlowSanitizerPass(PassRegistry&);
Owen Anderson7bf8a4b2010-10-07 04:17:38 +0000116void initializeDeadInstEliminationPass(PassRegistry&);
117void initializeDeadMachineInstructionElimPass(PassRegistry&);
Matthias Braun6012ab12017-03-18 05:05:29 +0000118void initializeDelinearizationPass(PassRegistry&);
Sanjoy Das1684d072016-06-09 19:58:30 +0000119void initializeDemandedBitsWrapperPassPass(PassRegistry&);
Sebastian Popad434992012-10-11 07:32:34 +0000120void initializeDependenceAnalysisPass(PassRegistry&);
Chandler Carruthb6b8f762016-05-12 22:19:39 +0000121void initializeDependenceAnalysisWrapperPassPass(PassRegistry&);
Sanjoy Das1684d072016-06-09 19:58:30 +0000122void initializeDetectDeadLanesPass(PassRegistry&);
Sanjay Patel193e8982017-09-09 13:38:18 +0000123void initializeDivRemPairsLegacyPassPass(PassRegistry&);
Owen Anderson7bf8a4b2010-10-07 04:17:38 +0000124void initializeDomOnlyPrinterPass(PassRegistry&);
125void initializeDomOnlyViewerPass(PassRegistry&);
126void initializeDomPrinterPass(PassRegistry&);
127void initializeDomViewerPass(PassRegistry&);
Hongbin Zheng15969222016-02-25 17:54:15 +0000128void initializeDominanceFrontierWrapperPassPass(PassRegistry&);
Chandler Carruth7f2eff72014-01-13 13:07:17 +0000129void initializeDominatorTreeWrapperPassPass(PassRegistry&);
Sanjoy Das1684d072016-06-09 19:58:30 +0000130void initializeDwarfEHPreparePass(PassRegistry&);
Matthias Braun6012ab12017-03-18 05:05:29 +0000131void initializeEarlyCSELegacyPassPass(PassRegistry&);
132void initializeEarlyCSEMemSSALegacyPassPass(PassRegistry&);
Jakob Stoklund Olesen33242fd2012-07-04 00:09:54 +0000133void initializeEarlyIfConverterPass(PassRegistry&);
Matthias Braunb94181c2018-07-26 00:27:48 +0000134void initializeEarlyMachineLICMPass(PassRegistry&);
135void initializeEarlyTailDuplicatePass(PassRegistry&);
Jakob Stoklund Olesen8dd070e2011-01-04 21:10:05 +0000136void initializeEdgeBundlesPass(PassRegistry&);
Derek Bruening34947672016-04-21 21:30:22 +0000137void initializeEfficiencySanitizerPass(PassRegistry&);
Matthias Braun6012ab12017-03-18 05:05:29 +0000138void initializeEliminateAvailableExternallyLegacyPassPass(PassRegistry&);
Matthias Braunb94181c2018-07-26 00:27:48 +0000139void initializeEntryExitInstrumenterPass(PassRegistry&);
Dan Gohman8ec9d622010-11-18 18:45:06 +0000140void initializeExpandISelPseudosPass(PassRegistry&);
Clement Courbet3d456012017-11-03 12:12:27 +0000141void initializeExpandMemCmpPassPass(PassRegistry&);
Sanjoy Das1684d072016-06-09 19:58:30 +0000142void initializeExpandPostRAPass(PassRegistry&);
Amara Emerson0dd30f82017-05-10 09:42:49 +0000143void initializeExpandReductionsPass(PassRegistry&);
Max Kazantsevc05ba542018-12-07 14:39:46 +0000144void initializeMakeGuardsExplicitLegacyPassPass(PassRegistry&);
Sanjoy Das1684d072016-06-09 19:58:30 +0000145void initializeExternalAAWrapperPassPass(PassRegistry&);
Matthias Braun6012ab12017-03-18 05:05:29 +0000146void initializeFEntryInserterPass(PassRegistry&);
Sanjoy Das1684d072016-06-09 19:58:30 +0000147void initializeFinalizeMachineBundlesPass(PassRegistry&);
148void initializeFlattenCFGPassPass(PassRegistry&);
Michael Kuperstein840a0dd2016-06-24 23:32:02 +0000149void initializeFloat2IntLegacyPassPass(PassRegistry&);
Chandler Carruth6a1ce8e2015-12-27 08:13:45 +0000150void initializeForceFunctionAttrsLegacyPassPass(PassRegistry&);
Sanjoy Das1684d072016-06-09 19:58:30 +0000151void initializeForwardControlFlowIntegrityPass(PassRegistry&);
Matthias Braun6012ab12017-03-18 05:05:29 +0000152void initializeFuncletLayoutPass(PassRegistry&);
153void initializeFunctionImportLegacyPassPass(PassRegistry&);
Andrew Trick1dd8c852012-02-08 21:23:13 +0000154void initializeGCMachineCodeAnalysisPass(PassRegistry&);
Owen Anderson7bf8a4b2010-10-07 04:17:38 +0000155void initializeGCModuleInfoPass(PassRegistry&);
Sanjoy Das1684d072016-06-09 19:58:30 +0000156void initializeGCOVProfilerLegacyPassPass(PassRegistry&);
Matthias Braun6012ab12017-03-18 05:05:29 +0000157void initializeGVNHoistLegacyPassPass(PassRegistry&);
Chandler Carruthdd15ed02016-03-11 08:50:55 +0000158void initializeGVNLegacyPassPass(PassRegistry&);
Matthias Braun95f90572017-06-02 23:01:38 +0000159void initializeGVNSinkLegacyPassPass(PassRegistry&);
Davide Italiano82cad6f2016-05-03 19:39:15 +0000160void initializeGlobalDCELegacyPassPass(PassRegistry&);
Sanjoy Das1684d072016-06-09 19:58:30 +0000161void initializeGlobalMergePass(PassRegistry&);
Justin Bogner1a9ed302016-04-26 00:28:01 +0000162void initializeGlobalOptLegacyPassPass(PassRegistry&);
Peter Collingbourne510c1b62016-11-16 23:40:26 +0000163void initializeGlobalSplitPass(PassRegistry&);
Chandler Carruth91468332015-09-09 17:55:00 +0000164void initializeGlobalsAAWrapperPassPass(PassRegistry&);
Sanjoy Das1684d072016-06-09 19:58:30 +0000165void initializeGuardWideningLegacyPassPass(PassRegistry&);
Aditya Kumar55883c92018-09-07 15:03:49 +0000166void initializeHotColdSplittingLegacyPassPass(PassRegistry&);
Matthias Braunb94181c2018-07-26 00:27:48 +0000167void initializeHWAddressSanitizerPass(PassRegistry&);
Owen Anderson7bf8a4b2010-10-07 04:17:38 +0000168void initializeIPCPPass(PassRegistry&);
Matthias Braun6012ab12017-03-18 05:05:29 +0000169void initializeIPSCCPLegacyPassPass(PassRegistry&);
Matthias Braunb94181c2018-07-26 00:27:48 +0000170void initializeIRCELegacyPassPass(PassRegistry&);
Matthias Braun6012ab12017-03-18 05:05:29 +0000171void initializeIRTranslatorPass(PassRegistry&);
Dehao Chen78ee4b62016-07-16 22:51:33 +0000172void initializeIVUsersWrapperPassPass(PassRegistry&);
Owen Anderson7bf8a4b2010-10-07 04:17:38 +0000173void initializeIfConverterPass(PassRegistry&);
Sanjoy Das1684d072016-06-09 19:58:30 +0000174void initializeImplicitNullChecksPass(PassRegistry&);
Sanjoy Das8b95cd32016-05-29 21:42:00 +0000175void initializeIndVarSimplifyLegacyPassPass(PassRegistry&);
Chandler Carruthfd5a8722018-01-22 22:05:25 +0000176void initializeIndirectBrExpandPassPass(PassRegistry&);
Matt Arsenault9be09832017-01-31 01:10:58 +0000177void initializeInferAddressSpacesPass(PassRegistry&);
Chandler Carruthd9796422015-12-27 08:41:34 +0000178void initializeInferFunctionAttrsLegacyPassPass(PassRegistry&);
Chandler Carruth86953b52013-01-21 11:39:18 +0000179void initializeInlineCostAnalysisPass(PassRegistry&);
Owen Anderson7bf8a4b2010-10-07 04:17:38 +0000180void initializeInstCountPass(PassRegistry&);
181void initializeInstNamerPass(PassRegistry&);
Chandler Carruthb2b950d2018-06-29 23:36:03 +0000182void initializeInstSimplifyLegacyPassPass(PassRegistry &);
Matthias Braun6012ab12017-03-18 05:05:29 +0000183void initializeInstrProfilingLegacyPassPass(PassRegistry&);
Sanjoy Das1684d072016-06-09 19:58:30 +0000184void initializeInstructionCombiningPassPass(PassRegistry&);
Matthias Braun6012ab12017-03-18 05:05:29 +0000185void initializeInstructionSelectPass(PassRegistry&);
186void initializeInterleavedAccessPass(PassRegistry&);
Martin Elshuber5e067bb2018-11-19 14:26:10 +0000187void initializeInterleavedLoadCombinePass(PassRegistry &);
Justin Bognerc3ce5d92016-04-26 20:15:52 +0000188void initializeInternalizeLegacyPassPass(PassRegistry&);
Owen Anderson7bf8a4b2010-10-07 04:17:38 +0000189void initializeIntervalPartitionPass(PassRegistry&);
190void initializeJumpThreadingPass(PassRegistry&);
Igor Laevsky22eba5a2016-10-28 12:57:20 +0000191void initializeLCSSAVerificationPassPass(PassRegistry&);
Matthias Braun6012ab12017-03-18 05:05:29 +0000192void initializeLCSSAWrapperPassPass(PassRegistry&);
193void initializeLazyBlockFrequencyInfoPassPass(PassRegistry&);
Adam Nemetb17a45c2016-07-28 23:31:12 +0000194void initializeLazyBranchProbabilityInfoPassPass(PassRegistry&);
Adam Nemet11745832017-02-14 17:21:09 +0000195void initializeLazyMachineBlockFrequencyInfoPassPass(PassRegistry&);
Matthias Braun95f90572017-06-02 23:01:38 +0000196void initializeLazyValueInfoPrinterPass(PassRegistry&);
Sean Silva9ce41c32016-06-13 22:01:25 +0000197void initializeLazyValueInfoWrapperPassPass(PassRegistry&);
Nicolai Haehnleb33a4032018-08-30 14:21:36 +0000198void initializeLegacyDivergenceAnalysisPass(PassRegistry&);
Matthias Braun6012ab12017-03-18 05:05:29 +0000199void initializeLegacyLICMPassPass(PassRegistry&);
200void initializeLegacyLoopSinkPassPass(PassRegistry&);
Tim Northoveree325b92016-10-14 22:18:18 +0000201void initializeLegalizerPass(PassRegistry&);
Aditya Nandakumar66f23702019-01-16 00:40:37 +0000202void initializeGISelCSEAnalysisWrapperPassPass(PassRegistry &);
Rong Xufe89a6b2016-10-18 21:36:27 +0000203void initializeLibCallsShrinkWrapLegacyPassPass(PassRegistry&);
Owen Anderson7bf8a4b2010-10-07 04:17:38 +0000204void initializeLintPass(PassRegistry&);
Sanjoy Das1684d072016-06-09 19:58:30 +0000205void initializeLiveDebugValuesPass(PassRegistry&);
Jakob Stoklund Olesenbb7b23f2010-11-30 02:17:10 +0000206void initializeLiveDebugVariablesPass(PassRegistry&);
Owen Anderson7bf8a4b2010-10-07 04:17:38 +0000207void initializeLiveIntervalsPass(PassRegistry&);
Dehao Chenb9583a32017-05-31 23:25:25 +0000208void initializeLiveRangeShrinkPass(PassRegistry&);
Jakob Stoklund Olesen88794802012-06-09 02:13:10 +0000209void initializeLiveRegMatrixPass(PassRegistry&);
Owen Anderson7bf8a4b2010-10-07 04:17:38 +0000210void initializeLiveStacksPass(PassRegistry&);
Owen Anderson7bf8a4b2010-10-07 04:17:38 +0000211void initializeLiveVariablesPass(PassRegistry&);
Markus Lavinb2bc0c52018-12-07 08:23:37 +0000212void initializeLoadStoreVectorizerLegacyPassPass(PassRegistry&);
Matthias Braun6012ab12017-03-18 05:05:29 +0000213void initializeLoaderPassPass(PassRegistry&);
Andrew Trick1dd8c852012-02-08 21:23:13 +0000214void initializeLocalStackSlotPassPass(PassRegistry&);
Matthias Braun95f90572017-06-02 23:01:38 +0000215void initializeLocalizerPass(PassRegistry&);
Xinliang David Lie042fe52016-07-08 20:55:26 +0000216void initializeLoopAccessLegacyAnalysisPass(PassRegistry&);
Matthias Braun6012ab12017-03-18 05:05:29 +0000217void initializeLoopDataPrefetchLegacyPassPass(PassRegistry&);
Jun Bum Limfa907d32016-07-14 18:28:29 +0000218void initializeLoopDeletionLegacyPassPass(PassRegistry&);
Adam Nemet9b7ecbe2016-07-18 16:29:27 +0000219void initializeLoopDistributeLegacyPass(PassRegistry&);
Owen Anderson7bf8a4b2010-10-07 04:17:38 +0000220void initializeLoopExtractorPass(PassRegistry&);
Matthias Braunb94181c2018-07-26 00:27:48 +0000221void initializeLoopGuardWideningLegacyPassPass(PassRegistry&);
Dehao Chen2ba4d7a2016-07-12 18:45:51 +0000222void initializeLoopIdiomRecognizeLegacyPassPass(PassRegistry&);
Chandler Carruthde5df292015-01-17 14:16:18 +0000223void initializeLoopInfoWrapperPassPass(PassRegistry&);
Chandler Carruth77818502018-05-25 01:32:36 +0000224void initializeLoopInstSimplifyLegacyPassPass(PassRegistry&);
Matthias Braun6012ab12017-03-18 05:05:29 +0000225void initializeLoopInterchangePass(PassRegistry&);
Sanjoy Das1684d072016-06-09 19:58:30 +0000226void initializeLoopLoadEliminationPass(PassRegistry&);
227void initializeLoopPassPass(PassRegistry&);
Artur Pilipenko1dd101b2017-01-25 16:00:44 +0000228void initializeLoopPredicationLegacyPassPass(PassRegistry&);
Hal Finkelbebe48d2013-11-16 23:59:05 +0000229void initializeLoopRerollPass(PassRegistry&);
Sanjoy Das1684d072016-06-09 19:58:30 +0000230void initializeLoopRotateLegacyPassPass(PassRegistry&);
231void initializeLoopSimplifyCFGLegacyPassPass(PassRegistry&);
232void initializeLoopSimplifyPass(PassRegistry&);
233void initializeLoopStrengthReducePass(PassRegistry&);
David Greene1012712018-07-01 12:47:30 +0000234void initializeLoopUnrollAndJamPass(PassRegistry&);
Matthias Braunb94181c2018-07-26 00:27:48 +0000235void initializeLoopUnrollPass(PassRegistry&);
Owen Anderson7bf8a4b2010-10-07 04:17:38 +0000236void initializeLoopUnswitchPass(PassRegistry&);
Sanjoy Das1684d072016-06-09 19:58:30 +0000237void initializeLoopVectorizePass(PassRegistry&);
Ashutosh Nema9feccf42016-02-06 07:47:48 +0000238void initializeLoopVersioningLICMPass(PassRegistry&);
Matthias Braun6012ab12017-03-18 05:05:29 +0000239void initializeLoopVersioningPassPass(PassRegistry&);
240void initializeLowerAtomicLegacyPassPass(PassRegistry&);
Sanjoy Das1684d072016-06-09 19:58:30 +0000241void initializeLowerEmuTLSPass(PassRegistry&);
Jakub Staszak9da99342011-07-06 18:22:43 +0000242void initializeLowerExpectIntrinsicPass(PassRegistry&);
Michael Kuperstein093715a2016-07-28 22:08:41 +0000243void initializeLowerGuardIntrinsicLegacyPassPass(PassRegistry&);
Owen Anderson081c34b2010-10-19 17:21:58 +0000244void initializeLowerIntrinsicsPass(PassRegistry&);
Michael Kuperstein69f04072016-08-12 17:28:27 +0000245void initializeLowerInvokeLegacyPassPass(PassRegistry&);
Owen Anderson7bf8a4b2010-10-07 04:17:38 +0000246void initializeLowerSwitchPass(PassRegistry&);
Peter Collingbournedba91462016-06-24 21:21:32 +0000247void initializeLowerTypeTestsPass(PassRegistry&);
Matthias Braunb94181c2018-07-26 00:27:48 +0000248void initializeMIRCanonicalizerPass(PassRegistry &);
Sanjoy Das1684d072016-06-09 19:58:30 +0000249void initializeMIRPrintingPassPass(PassRegistry&);
Jakub Staszakf55c1c82011-07-25 19:25:40 +0000250void initializeMachineBlockFrequencyInfoPass(PassRegistry&);
Chandler Carruthdb350872011-10-21 06:46:38 +0000251void initializeMachineBlockPlacementPass(PassRegistry&);
Chandler Carruth37efc9f2011-11-02 07:17:12 +0000252void initializeMachineBlockPlacementStatsPass(PassRegistry&);
Jakub Staszak7cc2b072011-06-16 20:22:37 +0000253void initializeMachineBranchProbabilityInfoPass(PassRegistry&);
Owen Anderson7bf8a4b2010-10-07 04:17:38 +0000254void initializeMachineCSEPass(PassRegistry&);
Matthias Braun6012ab12017-03-18 05:05:29 +0000255void initializeMachineCombinerPass(PassRegistry&);
Sanjoy Das1684d072016-06-09 19:58:30 +0000256void initializeMachineCopyPropagationPass(PassRegistry&);
Matt Arsenault661ca492014-07-12 21:59:52 +0000257void initializeMachineDominanceFrontierPass(PassRegistry&);
Sanjoy Das1684d072016-06-09 19:58:30 +0000258void initializeMachineDominatorTreePass(PassRegistry&);
259void initializeMachineFunctionPrinterPassPass(PassRegistry&);
Owen Anderson7bf8a4b2010-10-07 04:17:38 +0000260void initializeMachineLICMPass(PassRegistry&);
261void initializeMachineLoopInfoPass(PassRegistry&);
Owen Anderson7bf8a4b2010-10-07 04:17:38 +0000262void initializeMachineModuleInfoPass(PassRegistry&);
Adam Nemet19925fc2017-01-25 23:20:33 +0000263void initializeMachineOptimizationRemarkEmitterPassPass(PassRegistry&);
Jessica Paquetted43adee2017-03-06 21:31:18 +0000264void initializeMachineOutlinerPass(PassRegistry&);
Brendon Cahoonc1359c92016-07-29 16:44:44 +0000265void initializeMachinePipelinerPass(PassRegistry&);
Sanjoy Das1684d072016-06-09 19:58:30 +0000266void initializeMachinePostDominatorTreePass(PassRegistry&);
Matt Arsenault5e1c96a2014-07-19 18:29:29 +0000267void initializeMachineRegionInfoPassPass(PassRegistry&);
Andrew Trick42b7a712012-01-17 06:55:03 +0000268void initializeMachineSchedulerPass(PassRegistry&);
Owen Anderson7bf8a4b2010-10-07 04:17:38 +0000269void initializeMachineSinkingPass(PassRegistry&);
Jakob Stoklund Olesen9f63e102012-07-26 18:38:11 +0000270void initializeMachineTraceMetricsPass(PassRegistry&);
Owen Anderson7bf8a4b2010-10-07 04:17:38 +0000271void initializeMachineVerifierPassPass(PassRegistry&);
Sean Silvacf989e52016-06-14 02:44:55 +0000272void initializeMemCpyOptLegacyPassPass(PassRegistry&);
Owen Anderson7bf8a4b2010-10-07 04:17:38 +0000273void initializeMemDepPrinterPass(PassRegistry&);
Ramkumar Ramachandraab284392015-02-06 01:46:42 +0000274void initializeMemDerefPrinterPass(PassRegistry&);
Chandler Carruthc5266b52016-03-10 00:55:30 +0000275void initializeMemoryDependenceWrapperPassPass(PassRegistry&);
Matthias Braun6012ab12017-03-18 05:05:29 +0000276void initializeMemorySSAPrinterLegacyPassPass(PassRegistry&);
Geoff Berry783607f2016-06-01 21:30:40 +0000277void initializeMemorySSAWrapperPassPass(PassRegistry&);
Philip Pfaffe4956e302019-01-03 13:42:44 +0000278void initializeMemorySanitizerLegacyPassPass(PassRegistry&);
Sanjoy Das1684d072016-06-09 19:58:30 +0000279void initializeMergeFunctionsPass(PassRegistry&);
Clement Courbet4855d2d2017-09-01 10:56:34 +0000280void initializeMergeICmpsPass(PassRegistry&);
Matthias Braun6012ab12017-03-18 05:05:29 +0000281void initializeMergedLoadStoreMotionLegacyPassPass(PassRegistry&);
Alex Rosenberg95f1ef42012-09-11 02:46:18 +0000282void initializeMetaRenamerPass(PassRegistry&);
Owen Anderson7bf8a4b2010-10-07 04:17:38 +0000283void initializeModuleDebugInfoPrinterPass(PassRegistry&);
Matthias Braun6012ab12017-03-18 05:05:29 +0000284void initializeModuleSummaryIndexWrapperPassPass(PassRegistry&);
Philip Reames4961d4c2018-03-20 17:09:21 +0000285void initializeMustExecutePrinterPass(PassRegistry&);
Matthias Braun6012ab12017-03-18 05:05:29 +0000286void initializeNameAnonGlobalLegacyPassPass(PassRegistry&);
287void initializeNaryReassociateLegacyPassPass(PassRegistry&);
Daniel Berlin6b544012017-03-12 04:46:45 +0000288void initializeNewGVNLegacyPassPass(PassRegistry&);
Chandler Carruth91468332015-09-09 17:55:00 +0000289void initializeObjCARCAAWrapperPassPass(PassRegistry&);
Dan Gohman2f6263c2012-01-17 20:52:24 +0000290void initializeObjCARCAPElimPass(PassRegistry&);
John McCall9fbd3182011-06-15 23:37:01 +0000291void initializeObjCARCContractPass(PassRegistry&);
Sanjoy Das1684d072016-06-09 19:58:30 +0000292void initializeObjCARCExpandPass(PassRegistry&);
John McCall9fbd3182011-06-15 23:37:01 +0000293void initializeObjCARCOptPass(PassRegistry&);
Adam Nemetc7b8b5e2016-07-18 16:29:21 +0000294void initializeOptimizationRemarkEmitterWrapperPassPass(PassRegistry&);
Owen Anderson7bf8a4b2010-10-07 04:17:38 +0000295void initializeOptimizePHIsPass(PassRegistry&);
Matthias Braun6012ab12017-03-18 05:05:29 +0000296void initializePAEvalPass(PassRegistry&);
Owen Anderson7bf8a4b2010-10-07 04:17:38 +0000297void initializePEIPass(PassRegistry&);
Sanjoy Das1684d072016-06-09 19:58:30 +0000298void initializePGOIndirectCallPromotionLegacyPassPass(PassRegistry&);
299void initializePGOInstrumentationGenLegacyPassPass(PassRegistry&);
300void initializePGOInstrumentationUseLegacyPassPass(PassRegistry&);
Rong Xu9e52f8e2017-04-04 16:42:20 +0000301void initializePGOMemOPSizeOptLegacyPassPass(PassRegistry&);
Owen Anderson7bf8a4b2010-10-07 04:17:38 +0000302void initializePHIEliminationPass(PassRegistry&);
Matthias Braun6012ab12017-03-18 05:05:29 +0000303void initializePartialInlinerLegacyPassPass(PassRegistry&);
304void initializePartiallyInlineLibCallsLegacyPassPass(PassRegistry&);
305void initializePatchableFunctionPass(PassRegistry&);
Owen Anderson7bf8a4b2010-10-07 04:17:38 +0000306void initializePeepholeOptimizerPass(PassRegistry&);
John Brawn106ffb92018-06-28 14:13:06 +0000307void initializePhiValuesWrapperPassPass(PassRegistry&);
Matthias Braun6012ab12017-03-18 05:05:29 +0000308void initializePhysicalRegisterUsageInfoPass(PassRegistry&);
Sanjoy Das1684d072016-06-09 19:58:30 +0000309void initializePlaceBackedgeSafepointsImplPass(PassRegistry&);
310void initializePlaceSafepointsPass(PassRegistry&);
Owen Anderson7bf8a4b2010-10-07 04:17:38 +0000311void initializePostDomOnlyPrinterPass(PassRegistry&);
312void initializePostDomOnlyViewerPass(PassRegistry&);
313void initializePostDomPrinterPass(PassRegistry&);
314void initializePostDomViewerPass(PassRegistry&);
Hongbin Zheng5d7472e2016-02-25 17:54:07 +0000315void initializePostDominatorTreeWrapperPassPass(PassRegistry&);
Matthias Braunb94181c2018-07-26 00:27:48 +0000316void initializePostInlineEntryExitInstrumenterPass(PassRegistry&);
Sanjoy Das1684d072016-06-09 19:58:30 +0000317void initializePostMachineSchedulerPass(PassRegistry&);
Chandler Carruthe9afeb02016-02-18 11:03:11 +0000318void initializePostOrderFunctionAttrsLegacyPassPass(PassRegistry&);
Tom Stellardfbbc6212016-04-22 14:43:50 +0000319void initializePostRAHazardRecognizerPass(PassRegistry&);
Jun Bum Limaf566832018-03-22 20:06:47 +0000320void initializePostRAMachineSinkingPass(PassRegistry&);
Andrew Trick1dd8c852012-02-08 21:23:13 +0000321void initializePostRASchedulerPass(PassRegistry&);
Michael Kupersteinf3f8fc62016-06-24 20:13:42 +0000322void initializePreISelIntrinsicLoweringLegacyPassPass(PassRegistry&);
Matthias Braun6012ab12017-03-18 05:05:29 +0000323void initializePredicateInfoPrinterLegacyPassPass(PassRegistry&);
Sanjoy Das1684d072016-06-09 19:58:30 +0000324void initializePrintBasicBlockPassPass(PassRegistry&);
Chandler Carrutha5952572014-01-12 12:15:39 +0000325void initializePrintFunctionPassWrapperPass(PassRegistry&);
326void initializePrintModulePassWrapperPass(PassRegistry&);
Owen Anderson7bf8a4b2010-10-07 04:17:38 +0000327void initializeProcessImplicitDefsPass(PassRegistry&);
Matthias Braun6012ab12017-03-18 05:05:29 +0000328void initializeProfileSummaryInfoWrapperPassPass(PassRegistry&);
329void initializePromoteLegacyPassPass(PassRegistry&);
Owen Anderson7bf8a4b2010-10-07 04:17:38 +0000330void initializePruneEHPass(PassRegistry&);
Quentin Colombetf6a51e42017-06-02 23:07:58 +0000331void initializeRABasicPass(PassRegistry&);
Matthias Braun6012ab12017-03-18 05:05:29 +0000332void initializeRAGreedyPass(PassRegistry&);
Marina Yatsinaef279182018-01-22 10:05:23 +0000333void initializeReachingDefAnalysisPass(PassRegistry&);
Matthias Braunb94181c2018-07-26 00:27:48 +0000334void initializeReassociateLegacyPassPass(PassRegistry&);
335void initializeRegAllocFastPass(PassRegistry&);
336void initializeRegBankSelectPass(PassRegistry&);
Owen Anderson7bf8a4b2010-10-07 04:17:38 +0000337void initializeRegToMemPass(PassRegistry&);
Matthias Braun3a7b5a62018-07-26 00:27:51 +0000338void initializeRegUsageInfoCollectorPass(PassRegistry&);
339void initializeRegUsageInfoPropagationPass(PassRegistry&);
Matt Arsenault5e1c96a2014-07-19 18:29:29 +0000340void initializeRegionInfoPassPass(PassRegistry&);
Owen Anderson7bf8a4b2010-10-07 04:17:38 +0000341void initializeRegionOnlyPrinterPass(PassRegistry&);
342void initializeRegionOnlyViewerPass(PassRegistry&);
343void initializeRegionPrinterPass(PassRegistry&);
344void initializeRegionViewerPass(PassRegistry&);
Sanjoy Das1684d072016-06-09 19:58:30 +0000345void initializeRegisterCoalescerPass(PassRegistry&);
Matthias Braun1cd242f2016-05-31 22:38:06 +0000346void initializeRenameIndependentSubregsPass(PassRegistry&);
Matthias Braun6012ab12017-03-18 05:05:29 +0000347void initializeResetMachineFunctionPass(PassRegistry&);
Sean Silvacc691dd2016-06-12 07:48:51 +0000348void initializeReversePostOrderFunctionAttrsLegacyPassPass(PassRegistry&);
Fedor Sergeevf1b0fdf2017-12-15 09:32:11 +0000349void initializeRewriteStatepointsForGCLegacyPassPass(PassRegistry &);
Michael Kupersteinb3391842016-07-25 20:52:00 +0000350void initializeRewriteSymbolsLegacyPassPass(PassRegistry&);
Matthias Braun6012ab12017-03-18 05:05:29 +0000351void initializeSCCPLegacyPassPass(PassRegistry&);
Sanjoy Das1684d072016-06-09 19:58:30 +0000352void initializeSCEVAAWrapperPassPass(PassRegistry&);
353void initializeSLPVectorizerPass(PassRegistry&);
Chandler Carruthe73e5b42015-09-12 09:09:14 +0000354void initializeSROALegacyPassPass(PassRegistry&);
Ahmed Bougacha756714d2017-05-10 00:39:22 +0000355void initializeSafeStackLegacyPassPass(PassRegistry&);
Matthias Braunb94181c2018-07-26 00:27:48 +0000356void initializeSafepointIRVerifierPass(PassRegistry&);
Sanjoy Das1684d072016-06-09 19:58:30 +0000357void initializeSampleProfileLoaderLegacyPassPass(PassRegistry&);
358void initializeSanitizerCoverageModulePass(PassRegistry&);
Chandler Carruthbfe1f1c2015-08-17 02:08:17 +0000359void initializeScalarEvolutionWrapperPassPass(PassRegistry&);
Ayman Musaeadb58f2017-05-15 11:30:54 +0000360void initializeScalarizeMaskedMemIntrinPass(PassRegistry&);
Mikael Holmencdf701a2018-11-21 14:00:17 +0000361void initializeScalarizerLegacyPassPass(PassRegistry&);
Matthias Braun3310b592017-06-02 23:01:42 +0000362void initializeScavengerTestPass(PassRegistry&);
Sanjoy Das1684d072016-06-09 19:58:30 +0000363void initializeScopedNoAliasAAWrapperPassPass(PassRegistry&);
Matthias Braun6012ab12017-03-18 05:05:29 +0000364void initializeSeparateConstOffsetFromGEPPass(PassRegistry&);
Sanjoy Das1684d072016-06-09 19:58:30 +0000365void initializeShadowStackGCLoweringPass(PassRegistry&);
Matthias Braun6012ab12017-03-18 05:05:29 +0000366void initializeShrinkWrapPass(PassRegistry&);
Owen Anderson7bf8a4b2010-10-07 04:17:38 +0000367void initializeSimpleInlinerPass(PassRegistry&);
Chandler Carruth1d4cf6e2017-04-27 18:45:20 +0000368void initializeSimpleLoopUnswitchLegacyPassPass(PassRegistry&);
Owen Anderson7bf8a4b2010-10-07 04:17:38 +0000369void initializeSingleLoopExtractorPass(PassRegistry&);
Justin Bogner9d0b7e92016-04-22 19:54:10 +0000370void initializeSinkingLegacyPassPass(PassRegistry&);
Sanjoy Das1684d072016-06-09 19:58:30 +0000371void initializeSjLjEHPreparePass(PassRegistry&);
Owen Anderson7bf8a4b2010-10-07 04:17:38 +0000372void initializeSlotIndexesPass(PassRegistry&);
Michael Kuperstein3a6d4372016-08-01 21:48:33 +0000373void initializeSpeculativeExecutionLegacyPassPass(PassRegistry&);
Sanjoy Das1684d072016-06-09 19:58:30 +0000374void initializeSpillPlacementPass(PassRegistry&);
Nadav Rotemc05d3062012-09-06 09:17:37 +0000375void initializeStackColoringPass(PassRegistry&);
Sanjoy Das1684d072016-06-09 19:58:30 +0000376void initializeStackMapLivenessPass(PassRegistry&);
377void initializeStackProtectorPass(PassRegistry&);
Vitaly Buka54b4ae72018-11-26 23:05:48 +0000378void initializeStackSafetyGlobalInfoWrapperPassPass(PassRegistry &);
Vitaly Bukac29e36f2018-11-26 21:57:47 +0000379void initializeStackSafetyInfoWrapperPassPass(PassRegistry &);
Owen Anderson7bf8a4b2010-10-07 04:17:38 +0000380void initializeStackSlotColoringPass(PassRegistry&);
Matthias Braun6012ab12017-03-18 05:05:29 +0000381void initializeStraightLineStrengthReducePass(PassRegistry&);
Owen Anderson7bf8a4b2010-10-07 04:17:38 +0000382void initializeStripDeadDebugInfoPass(PassRegistry&);
Justin Bognere39e3a42015-10-30 23:28:12 +0000383void initializeStripDeadPrototypesLegacyPassPass(PassRegistry&);
Owen Anderson7bf8a4b2010-10-07 04:17:38 +0000384void initializeStripDebugDeclarePass(PassRegistry&);
Matthias Braun6012ab12017-03-18 05:05:29 +0000385void initializeStripGCRelocatesPass(PassRegistry&);
Owen Anderson7bf8a4b2010-10-07 04:17:38 +0000386void initializeStripNonDebugSymbolsPass(PassRegistry&);
Michael Ilseman5bd98bf2016-10-25 18:44:13 +0000387void initializeStripNonLineTableDebugInfoPass(PassRegistry&);
Owen Anderson7bf8a4b2010-10-07 04:17:38 +0000388void initializeStripSymbolsPass(PassRegistry&);
Sanjoy Das1684d072016-06-09 19:58:30 +0000389void initializeStructurizeCFGPass(PassRegistry&);
Owen Anderson7bf8a4b2010-10-07 04:17:38 +0000390void initializeTailCallElimPass(PassRegistry&);
Matthias Braun9334f5c2018-01-19 06:08:17 +0000391void initializeTailDuplicatePass(PassRegistry&);
Matthias Braun6012ab12017-03-18 05:05:29 +0000392void initializeTargetLibraryInfoWrapperPassPass(PassRegistry&);
Andrew Trick74613342012-02-04 02:56:45 +0000393void initializeTargetPassConfigPass(PassRegistry&);
Matthias Braun6012ab12017-03-18 05:05:29 +0000394void initializeTargetTransformInfoWrapperPassPass(PassRegistry&);
Philip Pfaffe6dbe2252019-01-16 09:28:01 +0000395void initializeThreadSanitizerLegacyPassPass(PassRegistry&);
Adam Nemetc76d1872015-02-19 19:14:34 +0000396void initializeTwoAddressInstructionPassPass(PassRegistry&);
Chandler Carruth91468332015-09-09 17:55:00 +0000397void initializeTypeBasedAAWrapperPassPass(PassRegistry&);
Adam Nemetc76d1872015-02-19 19:14:34 +0000398void initializeUnifyFunctionExitNodesPass(PassRegistry&);
Sanjoy Das1684d072016-06-09 19:58:30 +0000399void initializeUnpackMachineBundlesPass(PassRegistry&);
Wei Mi302c35d2016-07-08 03:32:49 +0000400void initializeUnreachableBlockElimLegacyPassPass(PassRegistry&);
Adam Nemetc76d1872015-02-19 19:14:34 +0000401void initializeUnreachableMachineBlockElimPass(PassRegistry&);
402void initializeVerifierLegacyPassPass(PassRegistry&);
403void initializeVirtRegMapPass(PassRegistry&);
404void initializeVirtRegRewriterPass(PassRegistry&);
Michael Kruse9a395de2018-12-12 17:32:52 +0000405void initializeWarnMissedTransformationsLegacyPass(PassRegistry &);
Heejin Ahna6e37da2018-05-31 22:02:34 +0000406void initializeWasmEHPreparePass(PassRegistry&);
Matthias Braun6012ab12017-03-18 05:05:29 +0000407void initializeWholeProgramDevirtPass(PassRegistry&);
Reid Klecknerf77571a2015-01-29 00:41:44 +0000408void initializeWinEHPreparePass(PassRegistry&);
Matthias Braun6012ab12017-03-18 05:05:29 +0000409void initializeWriteBitcodePassPass(PassRegistry&);
410void initializeWriteThinLTOBitcodePass(PassRegistry&);
411void initializeXRayInstrumentationPass(PassRegistry&);
Owen Anderson7bf8a4b2010-10-07 04:17:38 +0000412
Eugene Zelenko9797e4a2017-09-06 23:05:38 +0000413} // end namespace llvm
414
415#endif // LLVM_INITIALIZEPASSES_H