14#ifndef LLVM_LINKALLPASSES_H
15#define LLVM_LINKALLPASSES_H
51struct ForcePassLinking {
60 if (std::getenv(
"bar") != (
char *)-1)
This file implements a simple N^2 alias analysis accuracy evaluator.
Provides passes to inlining "always_inline" functions.
This is the interface for LLVM's primary stateless and local alias analysis.
static GCMetadataPrinterRegistry::Add< ErlangGCPrinter > X("erlang", "erlang-compatible garbage collector")
This file provides the interface for LLVM's Global Value Numbering pass which eliminates fully redund...
This is the interface for a simple mod/ref and alias analysis over globals.
This file contains an interface for creating legacy passes to print out IR in various granularities.
This file provides the primary interface to the instcombine pass.
This is the interface for a SCEV-based alias analysis.
This pass converts vector operations into scalar operations (or, optionally, operations on smaller ve...
This is the interface for a metadata-based scoped no-alias analysis.
This file defines the 'Statistic' class, which is designed to be an easy way to expose various metric...
This is the interface for a metadata-based TBAA.
This class is a wrapper over an AAResults, and it is intended to be used only when there are no IR ch...
static Function * Create(FunctionType *Ty, LinkageTypes Linkage, unsigned AddrSpace, const Twine &N="", Module *M=nullptr)
void viewCFGOnly() const
viewCFGOnly - This function is meant for use from the debugger.
@ ExternalLinkage
Externally visible function.
Representation for a specific memory location.
The pass manager to schedule RegionPasses.
Implementation of the target library information.
Provides information about what library functions are available for the current target.
A raw_ostream that writes to an std::string.
FunctionPass * createDomOnlyPrinterWrapperPassPass()
ModulePass * createCallGraphDOTPrinterPass()
FunctionPass * createPostDomOnlyViewerWrapperPassPass()
FunctionPass * createCFGSimplificationPass(SimplifyCFGOptions Options=SimplifyCFGOptions(), std::function< bool(const Function &)> Ftor=nullptr)
FunctionPass * createRegionOnlyViewerPass()
FunctionPass * createTailCallEliminationPass()
FunctionPass * createTLSVariableHoistPass()
Pass * createLoadStoreVectorizerPass()
Create a legacy pass manager instance of the LoadStoreVectorizer pass.
FunctionPass * createPromoteMemoryToRegisterPass()
FunctionPass * createInstructionCombiningPass()
ModulePass * createDeadArgEliminationPass()
createDeadArgEliminationPass - This pass removes arguments from functions which are not used by the b...
FunctionPass * createConstantHoistingPass()
FunctionPass * createSafeStackPass()
This pass splits the stack into a safe stack and an unsafe stack to protect against stack-based overf...
FunctionPass * createDeadCodeEliminationPass()
FunctionPass * createSelectOptimizePass()
This pass converts conditional moves to conditional jumps when profitable.
FunctionPass * createRegionPrinterPass()
FunctionPass * createSpeculativeExecutionIfHasBranchDivergencePass()
FunctionPass * createPostInlineEntryExitInstrumenterPass()
FunctionPass * createPostDomViewerWrapperPassPass()
FunctionPass * createSCEVAAWrapperPass()
Creates an instance of SCEVAAWrapperPass.
FunctionPass * createNaryReassociatePass()
FunctionPass * createScalarizeMaskedMemIntrinLegacyPass()
FunctionPass * createPostDomOnlyPrinterWrapperPassPass()
Pass * createLoopTermFoldPass()
Pass * createStructurizeCFGPass(bool SkipUniformRegions=false)
When SkipUniformRegions is true the structizer will not structurize regions that only contain uniform...
Pass * createLoopUnrollPass(int OptLevel=2, bool OnlyWhenForced=false, bool ForgetAllSCEV=false, int Threshold=-1, int Count=-1, int AllowPartial=-1, int Runtime=-1, int UpperBound=-1, int AllowPeeling=-1)
FunctionPass * createReassociatePass()
FunctionPass * createLazyValueInfoPass()
createLazyValueInfoPass - This creates an instance of the LazyValueInfo pass.
ModulePass * createJMCInstrumenterPass()
JMC instrument pass.
ModulePass * createGlobalsAAWrapperPass()
ModulePass * createCallGraphViewerPass()
ImmutablePass * createScopedNoAliasAAWrapperPass()
FunctionPass * createSinkingPass()
FunctionPass * createExpandMemCmpLegacyPass()
FunctionPass * createPostDomTree()
ModulePass * createLowerGlobalDtorsLegacyPass()
FunctionPass * createLowerInvokePass()
FunctionPass * createKCFIPass()
Lowers KCFI operand bundles for indirect calls.
FunctionPass * createRegionOnlyPrinterPass()
FunctionPass * createSpeculativeExecutionPass()
Pass * createLoopExtractorPass()
createLoopExtractorPass - This pass extracts all natural loops from the program into a function if it...
Pass * createSingleLoopExtractorPass()
createSingleLoopExtractorPass - This pass extracts one natural loop from the program into a function ...
FunctionPass * createUnifyLoopExitsPass()
bool AreStatisticsEnabled()
Check if statistics are enabled.
FunctionPass * createFixIrreduciblePass()
FunctionPass * createCodeGenPrepareLegacyPass()
createCodeGenPrepareLegacyPass - Transform the code to expose more pattern matching during instructio...
Pass * createLowerAtomicPass()
FunctionPass * createBasicAAWrapperPass()
Pass * createAlwaysInlinerLegacyPass(bool InsertLifetime=true)
Create a legacy pass manager instance of a pass to inline and remove functions marked as "always_inli...
FunctionPass * createSeparateConstOffsetFromGEPPass(bool LowerGEP=false)
FunctionPass * createExpandLargeDivRemPass()
Pass * createMergeICmpsLegacyPass()
ImmutablePass * createTypeBasedAAWrapperPass()
ModulePass * createDXILResourceWrapperPassPass()
FunctionPass * createDomOnlyViewerWrapperPassPass()
Pass * createLoopStrengthReducePass()
FunctionPass * createGVNPass(bool NoMemDepAnalysis=false)
Create a legacy GVN pass.
FunctionPass * createLowerSwitchPass()
ModulePass * createPrintModulePass(raw_ostream &OS, const std::string &Banner="", bool ShouldPreserveUseListOrder=false)
Create and return a pass that writes the module to the specified raw_ostream.
FunctionPass * createRegionViewerPass()
FunctionPass * createPartiallyInlineLibCallsPass()
FunctionPass * createAtomicExpandLegacyPass()
AtomicExpandPass - At IR level this pass replace atomic instructions with __atomic_* library calls,...
FunctionPass * createBreakCriticalEdgesPass()
FunctionPass * createStraightLineStrengthReducePass()
FunctionPass * createPostDomPrinterWrapperPassPass()
FunctionPass * createEarlyCSEPass(bool UseMemorySSA=false)
FunctionPass * createRegionInfoPass()
Pass * createObjCARCContractPass()
FunctionPass * createDomPrinterWrapperPassPass()
FunctionPass * createSROAPass(bool PreserveCFG=true)
FunctionPass * createPrintFunctionPass(raw_ostream &OS, const std::string &Banner="")
Create and return a pass that prints functions to the specified raw_ostream as they are processed.
FunctionPass * createDomViewerWrapperPassPass()
Pass * createLoopSimplifyPass()
FunctionPass * createDependenceAnalysisWrapperPass()
createDependenceAnalysisPass - This creates an instance of the DependenceAnalysis wrapper pass.
FunctionPass * createHardwareLoopsLegacyPass()
Create Hardware Loop pass.
FunctionPass * createInstSimplifyLegacyPass()