LLVM 17.0.0git
|
Vectorize configuration. More...
#include "llvm/Transforms/Vectorize.h"
Public Member Functions | |
VectorizeConfig () | |
Initialize the VectorizeConfig from command line options. | |
Public Attributes | |
unsigned | VectorBits |
The size of the native vector registers. | |
bool | VectorizeBools |
Vectorize boolean values. | |
bool | VectorizeInts |
Vectorize integer values. | |
bool | VectorizeFloats |
Vectorize floating-point values. | |
bool | VectorizePointers |
Vectorize pointer values. | |
bool | VectorizeCasts |
Vectorize casting (conversion) operations. | |
bool | VectorizeMath |
Vectorize floating-point math intrinsics. | |
bool | VectorizeBitManipulations |
Vectorize bit intrinsics. | |
bool | VectorizeFMA |
Vectorize the fused-multiply-add intrinsic. | |
bool | VectorizeSelect |
Vectorize select instructions. | |
bool | VectorizeCmp |
Vectorize comparison instructions. | |
bool | VectorizeGEP |
Vectorize getelementptr instructions. | |
bool | VectorizeMemOps |
Vectorize loads and stores. | |
bool | AlignedOnly |
Only generate aligned loads and stores. | |
unsigned | ReqChainDepth |
The required chain depth for vectorization. | |
unsigned | SearchLimit |
The maximum search distance for instruction pairs. | |
unsigned | MaxCandPairsForCycleCheck |
The maximum number of candidate pairs with which to use a full cycle check. | |
bool | SplatBreaksChain |
Replicating one element to a pair breaks the chain. | |
unsigned | MaxInsts |
The maximum number of pairable instructions per group. | |
unsigned | MaxPairs |
The maximum number of candidate instruction pairs per group. | |
unsigned | MaxIter |
The maximum number of pairing iterations. | |
bool | Pow2LenOnly |
Don't try to form odd-length vectors. | |
bool | NoMemOpBoost |
Don't boost the chain-depth contribution of loads and stores. | |
bool | FastDep |
Use a fast instruction dependency analysis. | |
Vectorize configuration.
Definition at line 23 of file Vectorize.h.
llvm::VectorizeConfig::VectorizeConfig | ( | ) |
Initialize the VectorizeConfig from command line options.
bool llvm::VectorizeConfig::AlignedOnly |
Only generate aligned loads and stores.
Definition at line 67 of file Vectorize.h.
bool llvm::VectorizeConfig::FastDep |
Use a fast instruction dependency analysis.
Definition at line 101 of file Vectorize.h.
unsigned llvm::VectorizeConfig::MaxCandPairsForCycleCheck |
The maximum number of candidate pairs with which to use a full cycle check.
Definition at line 80 of file Vectorize.h.
unsigned llvm::VectorizeConfig::MaxInsts |
The maximum number of pairable instructions per group.
Definition at line 86 of file Vectorize.h.
unsigned llvm::VectorizeConfig::MaxIter |
The maximum number of pairing iterations.
Definition at line 92 of file Vectorize.h.
unsigned llvm::VectorizeConfig::MaxPairs |
The maximum number of candidate instruction pairs per group.
Definition at line 89 of file Vectorize.h.
bool llvm::VectorizeConfig::NoMemOpBoost |
Don't boost the chain-depth contribution of loads and stores.
Definition at line 98 of file Vectorize.h.
bool llvm::VectorizeConfig::Pow2LenOnly |
Don't try to form odd-length vectors.
Definition at line 95 of file Vectorize.h.
unsigned llvm::VectorizeConfig::ReqChainDepth |
The required chain depth for vectorization.
Definition at line 73 of file Vectorize.h.
unsigned llvm::VectorizeConfig::SearchLimit |
The maximum search distance for instruction pairs.
Definition at line 76 of file Vectorize.h.
bool llvm::VectorizeConfig::SplatBreaksChain |
Replicating one element to a pair breaks the chain.
Definition at line 83 of file Vectorize.h.
unsigned llvm::VectorizeConfig::VectorBits |
The size of the native vector registers.
Definition at line 28 of file Vectorize.h.
bool llvm::VectorizeConfig::VectorizeBitManipulations |
Vectorize bit intrinsics.
Definition at line 49 of file Vectorize.h.
bool llvm::VectorizeConfig::VectorizeBools |
Vectorize boolean values.
Definition at line 31 of file Vectorize.h.
bool llvm::VectorizeConfig::VectorizeCasts |
Vectorize casting (conversion) operations.
Definition at line 43 of file Vectorize.h.
bool llvm::VectorizeConfig::VectorizeCmp |
Vectorize comparison instructions.
Definition at line 58 of file Vectorize.h.
bool llvm::VectorizeConfig::VectorizeFloats |
Vectorize floating-point values.
Definition at line 37 of file Vectorize.h.
bool llvm::VectorizeConfig::VectorizeFMA |
Vectorize the fused-multiply-add intrinsic.
Definition at line 52 of file Vectorize.h.
bool llvm::VectorizeConfig::VectorizeGEP |
Vectorize getelementptr instructions.
Definition at line 61 of file Vectorize.h.
bool llvm::VectorizeConfig::VectorizeInts |
Vectorize integer values.
Definition at line 34 of file Vectorize.h.
bool llvm::VectorizeConfig::VectorizeMath |
Vectorize floating-point math intrinsics.
Definition at line 46 of file Vectorize.h.
bool llvm::VectorizeConfig::VectorizeMemOps |
Vectorize loads and stores.
Definition at line 64 of file Vectorize.h.
bool llvm::VectorizeConfig::VectorizePointers |
Vectorize pointer values.
Definition at line 40 of file Vectorize.h.
bool llvm::VectorizeConfig::VectorizeSelect |
Vectorize select instructions.
Definition at line 55 of file Vectorize.h.