14#ifndef LLVM_TRANSFORMS_SCALAR_H
15#define LLVM_TRANSFORMS_SCALAR_H
75 bool OnlyWhenForced =
false,
76 bool ForgetAllSCEV =
false,
77 int Threshold = -1,
int Count = -1,
78 int AllowPartial = -1,
int Runtime = -1,
79 int UpperBound = -1,
int AllowPeeling = -1);
97 std::function<
bool(
const Function &)> Ftor =
nullptr);
FunctionPass class - This class is used to implement most global optimizations.
Pass interface - Implemented by all 'passes'.
This is an optimization pass for GlobalISel generic memory operations.
LLVM_ABI FunctionPass * createDeadStoreEliminationPass()
LLVM_ABI FunctionPass * createFlattenCFGPass()
LLVM_ABI FunctionPass * createCFGSimplificationPass(SimplifyCFGOptions Options=SimplifyCFGOptions(), std::function< bool(const Function &)> Ftor=nullptr)
LLVM_ABI FunctionPass * createTailCallEliminationPass()
LLVM_ABI FunctionPass * createConstantHoistingPass()
@ Runtime
Detect stack use after return if not disabled runtime with (ASAN_OPTIONS=detect_stack_use_after_retur...
LLVM_ABI FunctionPass * createDeadCodeEliminationPass()
LLVM_ABI FunctionPass * createSpeculativeExecutionIfHasBranchDivergencePass()
LLVM_ABI FunctionPass * createNaryReassociatePass()
LLVM_ABI FunctionPass * createScalarizeMaskedMemIntrinLegacyPass()
LLVM_ABI Pass * createLowerAtomicPass()
LLVM_ABI Pass * createLoopTermFoldPass()
LLVM_ABI Pass * createStructurizeCFGPass(bool SkipUniformRegions=false)
When SkipUniformRegions is true the structizer will not structurize regions that only contain uniform...
LLVM_ABI Pass * createLICMPass()
LLVM_ABI 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)
LLVM_ABI char & InferAddressSpacesID
LLVM_ABI FunctionPass * createSinkingPass()
LLVM_ABI FunctionPass * createLoopDataPrefetchPass()
LLVM_ABI FunctionPass * createSpeculativeExecutionPass()
FunctionAddr VTableAddr Count
LLVM_ABI FunctionPass * createSeparateConstOffsetFromGEPPass(bool LowerGEP=false)
LLVM_ABI Pass * createMergeICmpsLegacyPass()
LLVM_ABI FunctionPass * createReassociatePass()
LLVM_ABI Pass * createLoopStrengthReducePass()
LLVM_ABI FunctionPass * createInferAddressSpacesPass(unsigned AddressSpace=~0u)
LLVM_ABI FunctionPass * createPartiallyInlineLibCallsPass()
LLVM_ABI FunctionPass * createStraightLineStrengthReducePass()
LLVM_ABI FunctionPass * createEarlyCSEPass(bool UseMemorySSA=false)
LLVM_ABI FunctionPass * createSROAPass(bool PreserveCFG=true)
LLVM_ABI FunctionPass * createInstSimplifyLegacyPass()