LLVM API Documentation

Functions | Variables
PassManagerBuilder.cpp File Reference
#include "llvm/Transforms/IPO/PassManagerBuilder.h"
#include "llvm-c/Transforms/PassManagerBuilder.h"
#include "llvm/ADT/SmallVector.h"
#include "llvm/Analysis/Passes.h"
#include "llvm/IR/DataLayout.h"
#include "llvm/IR/Verifier.h"
#include "llvm/PassManager.h"
#include "llvm/Support/CommandLine.h"
#include "llvm/Support/ManagedStatic.h"
#include "llvm/Target/TargetLibraryInfo.h"
#include "llvm/Target/TargetMachine.h"
#include "llvm/Target/TargetSubtargetInfo.h"
#include "llvm/Transforms/IPO.h"
#include "llvm/Transforms/Scalar.h"
#include "llvm/Transforms/Vectorize.h"
Include dependency graph for PassManagerBuilder.cpp:

Go to the source code of this file.

Functions

PassManagerBuilderunwrap (LLVMPassManagerBuilderRef P)
LLVMPassManagerBuilderRef wrap (PassManagerBuilder *P)
LLVMPassManagerBuilderRef LLVMPassManagerBuilderCreate ()
void LLVMPassManagerBuilderDispose (LLVMPassManagerBuilderRef PMB)
void LLVMPassManagerBuilderSetOptLevel (LLVMPassManagerBuilderRef PMB, unsigned OptLevel)
void LLVMPassManagerBuilderSetSizeLevel (LLVMPassManagerBuilderRef PMB, unsigned SizeLevel)
void LLVMPassManagerBuilderSetDisableUnitAtATime (LLVMPassManagerBuilderRef PMB, LLVMBool Value)
void LLVMPassManagerBuilderSetDisableUnrollLoops (LLVMPassManagerBuilderRef PMB, LLVMBool Value)
void LLVMPassManagerBuilderSetDisableSimplifyLibCalls (LLVMPassManagerBuilderRef PMB, LLVMBool Value)
void LLVMPassManagerBuilderUseInlinerWithThreshold (LLVMPassManagerBuilderRef PMB, unsigned Threshold)
void LLVMPassManagerBuilderPopulateFunctionPassManager (LLVMPassManagerBuilderRef PMB, LLVMPassManagerRef PM)
void LLVMPassManagerBuilderPopulateModulePassManager (LLVMPassManagerBuilderRef PMB, LLVMPassManagerRef PM)
void LLVMPassManagerBuilderPopulateLTOPassManager (LLVMPassManagerBuilderRef PMB, LLVMPassManagerRef PM, LLVMBool Internalize, LLVMBool RunInliner)

Variables

static cl::opt< boolRunLoopVectorization ("vectorize-loops", cl::Hidden, cl::desc("Run the Loop vectorization passes"))
static cl::opt< boolRunSLPVectorization ("vectorize-slp", cl::Hidden, cl::desc("Run the SLP vectorization passes"))
static cl::opt< boolRunBBVectorization ("vectorize-slp-aggressive", cl::Hidden, cl::desc("Run the BB vectorization passes"))
static cl::opt< boolUseGVNAfterVectorization ("use-gvn-after-vectorization", cl::init(false), cl::Hidden, cl::desc("Run GVN instead of Early CSE after vectorization passes"))
static cl::opt< boolUseNewSROA ("use-new-sroa", cl::init(true), cl::Hidden, cl::desc("Enable the new, experimental SROA pass"))
static cl::opt< boolRunLoopRerolling ("reroll-loops", cl::Hidden, cl::desc("Run the loop rerolling pass"))
static cl::opt< boolRunLoadCombine ("combine-loads", cl::init(false), cl::Hidden, cl::desc("Run the load combining pass"))
static cl::opt< boolRunSLPAfterLoopVectorization ("run-slp-after-loop-vectorization", cl::init(true), cl::Hidden, cl::desc("Run the SLP vectorizer (and BB vectorizer) after the Loop ""vectorizer instead of before"))
static cl::opt< boolUseCFLAA ("use-cfl-aa", cl::init(false), cl::Hidden, cl::desc("Enable the new, experimental CFL alias analysis"))
static cl::opt< boolEnableMLSM ("mlsm", cl::init(true), cl::Hidden, cl::desc("Enable motion of merged load and store"))
static ManagedStatic
< SmallVector< std::pair
< PassManagerBuilder::ExtensionPointTy,
PassManagerBuilder::ExtensionFn >, 8 > > 
GlobalExtensions
 Set of global extensions, automatically added as part of the standard set.

Function Documentation

Definition at line 470 of file PassManagerBuilder.cpp.

Definition at line 474 of file PassManagerBuilder.cpp.


Variable Documentation

cl::opt<bool> EnableMLSM("mlsm", cl::init(true), cl::Hidden, cl::desc("Enable motion of merged load and store")) [static]
ManagedStatic<SmallVector<std::pair<PassManagerBuilder::ExtensionPointTy, PassManagerBuilder::ExtensionFn>, 8> > GlobalExtensions [static]

Set of global extensions, automatically added as part of the standard set.

Definition at line 104 of file PassManagerBuilder.cpp.

Referenced by llvm::PassManagerBuilder::addGlobalExtension(), and llvm::PassManagerBuilder::populateModulePassManager().

cl::opt<bool> RunBBVectorization("vectorize-slp-aggressive", cl::Hidden, cl::desc("Run the BB vectorization passes")) [static]
cl::opt<bool> RunLoadCombine("combine-loads", cl::init(false), cl::Hidden, cl::desc("Run the load combining pass")) [static]
cl::opt<bool> RunLoopRerolling("reroll-loops", cl::Hidden, cl::desc("Run the loop rerolling pass")) [static]
cl::opt<bool> RunLoopVectorization("vectorize-loops", cl::Hidden, cl::desc("Run the Loop vectorization passes")) [static]
cl::opt<bool> RunSLPAfterLoopVectorization("run-slp-after-loop-vectorization", cl::init(true), cl::Hidden, cl::desc("Run the SLP vectorizer (and BB vectorizer) after the Loop ""vectorizer instead of before")) [static]
cl::opt<bool> RunSLPVectorization("vectorize-slp", cl::Hidden, cl::desc("Run the SLP vectorization passes")) [static]
cl::opt<bool> UseCFLAA("use-cfl-aa", cl::init(false), cl::Hidden, cl::desc("Enable the new, experimental CFL alias analysis")) [static]
cl::opt<bool> UseGVNAfterVectorization("use-gvn-after-vectorization", cl::init(false), cl::Hidden, cl::desc("Run GVN instead of Early CSE after vectorization passes")) [static]
cl::opt<bool> UseNewSROA("use-new-sroa", cl::init(true), cl::Hidden, cl::desc("Enable the new, experimental SROA pass")) [static]