LLVM API Documentation
Vectorize configuration. More...
#include <Vectorize.h>
Public Member Functions | |
VectorizeConfig () | |
Initialize the VectorizeConfig from command line options. More... | |
Public Attributes | |
unsigned | VectorBits |
The size of the native vector registers. More... | |
bool | VectorizeBools |
Vectorize boolean values. More... | |
bool | VectorizeInts |
Vectorize integer values. More... | |
bool | VectorizeFloats |
Vectorize floating-point values. More... | |
bool | VectorizePointers |
Vectorize pointer values. More... | |
bool | VectorizeCasts |
Vectorize casting (conversion) operations. More... | |
bool | VectorizeMath |
Vectorize floating-point math intrinsics. More... | |
bool | VectorizeFMA |
Vectorize the fused-multiply-add intrinsic. More... | |
bool | VectorizeSelect |
Vectorize select instructions. More... | |
bool | VectorizeCmp |
Vectorize comparison instructions. More... | |
bool | VectorizeGEP |
Vectorize getelementptr instructions. More... | |
bool | VectorizeMemOps |
Vectorize loads and stores. More... | |
bool | AlignedOnly |
Only generate aligned loads and stores. More... | |
unsigned | ReqChainDepth |
The required chain depth for vectorization. More... | |
unsigned | SearchLimit |
The maximum search distance for instruction pairs. More... | |
unsigned | MaxCandPairsForCycleCheck |
The maximum number of candidate pairs with which to use a full cycle check. More... | |
bool | SplatBreaksChain |
Replicating one element to a pair breaks the chain. More... | |
unsigned | MaxInsts |
The maximum number of pairable instructions per group. More... | |
unsigned | MaxPairs |
The maximum number of candidate instruction pairs per group. More... | |
unsigned | MaxIter |
The maximum number of pairing iterations. More... | |
bool | Pow2LenOnly |
Don't try to form odd-length vectors. More... | |
bool | NoMemOpBoost |
Don't boost the chain-depth contribution of loads and stores. More... | |
bool | FastDep |
Use a fast instruction dependency analysis. More... | |
Vectorize configuration.
Definition at line 25 of file Transforms/Vectorize.h.
VectorizeConfig::VectorizeConfig | ( | ) |
Initialize the VectorizeConfig from command line options.
Definition at line 3159 of file BBVectorize.cpp.
References AlignedOnly, FastDep, MaxCandPairsForCycleCheck, MaxInsts, MaxIter, MaxPairs, NoBools, NoCasts, NoCmp, NoFloats, NoFMA, NoGEP, NoInts, NoMath, NoMemOpBoost, NoMemOps, NoPointers, NoSelect, Pow2LenOnly, ReqChainDepth, SearchLimit, SplatBreaksChain, VectorBits, VectorizeBools, VectorizeCasts, VectorizeCmp, VectorizeFloats, VectorizeFMA, VectorizeGEP, VectorizeInts, VectorizeMath, VectorizeMemOps, VectorizePointers, and VectorizeSelect.
bool llvm::VectorizeConfig::AlignedOnly |
Only generate aligned loads and stores.
Definition at line 66 of file Transforms/Vectorize.h.
Referenced by VectorizeConfig().
bool llvm::VectorizeConfig::FastDep |
Use a fast instruction dependency analysis.
Definition at line 100 of file Transforms/Vectorize.h.
Referenced by VectorizeConfig().
unsigned llvm::VectorizeConfig::MaxCandPairsForCycleCheck |
The maximum number of candidate pairs with which to use a full cycle check.
Definition at line 79 of file Transforms/Vectorize.h.
Referenced by VectorizeConfig().
unsigned llvm::VectorizeConfig::MaxInsts |
The maximum number of pairable instructions per group.
Definition at line 85 of file Transforms/Vectorize.h.
Referenced by VectorizeConfig().
unsigned llvm::VectorizeConfig::MaxIter |
The maximum number of pairing iterations.
Definition at line 91 of file Transforms/Vectorize.h.
Referenced by VectorizeConfig().
unsigned llvm::VectorizeConfig::MaxPairs |
The maximum number of candidate instruction pairs per group.
Definition at line 88 of file Transforms/Vectorize.h.
Referenced by VectorizeConfig().
bool llvm::VectorizeConfig::NoMemOpBoost |
Don't boost the chain-depth contribution of loads and stores.
Definition at line 97 of file Transforms/Vectorize.h.
Referenced by VectorizeConfig().
bool llvm::VectorizeConfig::Pow2LenOnly |
Don't try to form odd-length vectors.
Definition at line 94 of file Transforms/Vectorize.h.
Referenced by VectorizeConfig().
unsigned llvm::VectorizeConfig::ReqChainDepth |
The required chain depth for vectorization.
Definition at line 72 of file Transforms/Vectorize.h.
Referenced by VectorizeConfig().
unsigned llvm::VectorizeConfig::SearchLimit |
The maximum search distance for instruction pairs.
Definition at line 75 of file Transforms/Vectorize.h.
Referenced by VectorizeConfig().
bool llvm::VectorizeConfig::SplatBreaksChain |
Replicating one element to a pair breaks the chain.
Definition at line 82 of file Transforms/Vectorize.h.
Referenced by VectorizeConfig().
unsigned llvm::VectorizeConfig::VectorBits |
The size of the native vector registers.
Definition at line 30 of file Transforms/Vectorize.h.
Referenced by VectorizeConfig().
bool llvm::VectorizeConfig::VectorizeBools |
Vectorize boolean values.
Definition at line 33 of file Transforms/Vectorize.h.
Referenced by VectorizeConfig().
bool llvm::VectorizeConfig::VectorizeCasts |
Vectorize casting (conversion) operations.
Definition at line 45 of file Transforms/Vectorize.h.
Referenced by VectorizeConfig().
bool llvm::VectorizeConfig::VectorizeCmp |
Vectorize comparison instructions.
Definition at line 57 of file Transforms/Vectorize.h.
Referenced by VectorizeConfig().
bool llvm::VectorizeConfig::VectorizeFloats |
Vectorize floating-point values.
Definition at line 39 of file Transforms/Vectorize.h.
Referenced by VectorizeConfig().
bool llvm::VectorizeConfig::VectorizeFMA |
Vectorize the fused-multiply-add intrinsic.
Definition at line 51 of file Transforms/Vectorize.h.
Referenced by VectorizeConfig().
bool llvm::VectorizeConfig::VectorizeGEP |
Vectorize getelementptr instructions.
Definition at line 60 of file Transforms/Vectorize.h.
Referenced by VectorizeConfig().
bool llvm::VectorizeConfig::VectorizeInts |
Vectorize integer values.
Definition at line 36 of file Transforms/Vectorize.h.
Referenced by VectorizeConfig().
bool llvm::VectorizeConfig::VectorizeMath |
Vectorize floating-point math intrinsics.
Definition at line 48 of file Transforms/Vectorize.h.
Referenced by VectorizeConfig().
bool llvm::VectorizeConfig::VectorizeMemOps |
Vectorize loads and stores.
Definition at line 63 of file Transforms/Vectorize.h.
Referenced by VectorizeConfig().
bool llvm::VectorizeConfig::VectorizePointers |
Vectorize pointer values.
Definition at line 42 of file Transforms/Vectorize.h.
Referenced by VectorizeConfig().
bool llvm::VectorizeConfig::VectorizeSelect |
Vectorize select instructions.
Definition at line 54 of file Transforms/Vectorize.h.
Referenced by VectorizeConfig().