LLVM API Documentation

Namespaces | Defines | Functions | Variables
SLPVectorizer.cpp File Reference
#include "llvm/Transforms/Vectorize.h"
#include "llvm/ADT/MapVector.h"
#include "llvm/ADT/PostOrderIterator.h"
#include "llvm/ADT/SetVector.h"
#include "llvm/ADT/Statistic.h"
#include "llvm/Analysis/AliasAnalysis.h"
#include "llvm/Analysis/LoopInfo.h"
#include "llvm/Analysis/ScalarEvolution.h"
#include "llvm/Analysis/ScalarEvolutionExpressions.h"
#include "llvm/Analysis/TargetTransformInfo.h"
#include "llvm/Analysis/ValueTracking.h"
#include "llvm/IR/DataLayout.h"
#include "llvm/IR/Dominators.h"
#include "llvm/IR/IRBuilder.h"
#include "llvm/IR/Instructions.h"
#include "llvm/IR/IntrinsicInst.h"
#include "llvm/IR/Module.h"
#include "llvm/IR/NoFolder.h"
#include "llvm/IR/Type.h"
#include "llvm/IR/Value.h"
#include "llvm/IR/Verifier.h"
#include "llvm/Pass.h"
#include "llvm/Support/CommandLine.h"
#include "llvm/Support/Debug.h"
#include "llvm/Support/raw_ostream.h"
#include "llvm/Transforms/Utils/VectorUtils.h"
#include <algorithm>
#include <map>
#include <memory>
Include dependency graph for SLPVectorizer.cpp:

Go to the source code of this file.

Namespaces

namespace  llvm
 

List of target independent CodeGen pass IDs.


Defines

#define SV_NAME   "slp-vectorizer"
#define DEBUG_TYPE   "SLP"

Functions

 STATISTIC (NumVectorInstructions,"Number of vector instructions generated")
Passllvm::createSLPVectorizerPass ()

Variables

static cl::opt< intSLPCostThreshold ("slp-threshold", cl::init(0), cl::Hidden, cl::desc("Only vectorize if you gain more than this ""number "))
static cl::opt< boolShouldVectorizeHor ("slp-vectorize-hor", cl::init(false), cl::Hidden, cl::desc("Attempt to vectorize horizontal reductions"))
static cl::opt< boolShouldStartVectorizeHorAtStore ("slp-vectorize-hor-store", cl::init(false), cl::Hidden, cl::desc("Attempt to vectorize horizontal reductions feeding into a store"))
static const char lv_name [] = "SLP Vectorizer"

Define Documentation

#define DEBUG_TYPE   "SLP"

Definition at line 51 of file SLPVectorizer.cpp.

#define SV_NAME   "slp-vectorizer"

Definition at line 50 of file SLPVectorizer.cpp.


Function Documentation

STATISTIC ( NumVectorInstructions  ,
"Number of vector instructions generated  
)

Variable Documentation

const char lv_name[] = "SLP Vectorizer" [static]

Definition at line 3745 of file SLPVectorizer.cpp.

cl::opt<bool> ShouldStartVectorizeHorAtStore("slp-vectorize-hor-store", cl::init(false), cl::Hidden, cl::desc("Attempt to vectorize horizontal reductions feeding into a store")) [static]
cl::opt<bool> ShouldVectorizeHor("slp-vectorize-hor", cl::init(false), cl::Hidden, cl::desc("Attempt to vectorize horizontal reductions")) [static]
cl::opt<int> SLPCostThreshold("slp-threshold", cl::init(0), cl::Hidden, cl::desc("Only vectorize if you gain more than this ""number ")) [static]