LLVM API Documentation

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Public Member Functions | Public Attributes | List of all members
llvm::VectorizeConfig Struct Reference

Vectorize configuration. More...

#include <Vectorize.h>

Collaboration diagram for llvm::VectorizeConfig:
Collaboration graph
[legend]

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...
 

Detailed Description

Vectorize configuration.

Definition at line 25 of file Transforms/Vectorize.h.

Constructor & Destructor Documentation

VectorizeConfig::VectorizeConfig ( )

Member Data Documentation

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().


The documentation for this struct was generated from the following files: