LLVM
8.0.1
|
This file provides a LoopVectorizationPlanner class. More...
#include "VPlan.h"
#include "llvm/Analysis/LoopInfo.h"
#include "llvm/Analysis/TargetLibraryInfo.h"
#include "llvm/Analysis/TargetTransformInfo.h"
Go to the source code of this file.
Classes | |
class | llvm::VPBuilder |
VPlan-based builder utility analogous to IRBuilder. More... | |
class | llvm::VPBuilder::VPInsertPoint |
InsertPoint - A saved insertion point. More... | |
class | llvm::VPBuilder::InsertPointGuard |
RAII object that stores the current insertion point and restores it when the object is destroyed. More... | |
struct | llvm::VectorizationFactor |
TODO: The following VectorizationFactor was pulled out of LoopVectorizationCostModel class. More... | |
class | llvm::LoopVectorizationPlanner |
Planner drives the vectorization process after having passed Legality checks. More... | |
Namespaces | |
llvm | |
This class represents lattice values for constants. | |
This file provides a LoopVectorizationPlanner class.
InnerLoopVectorizer vectorizes loops which contain only one basic LoopVectorizationPlanner - drives the vectorization process after having passed Legality checks. The planner builds and optimizes the Vectorization Plans which record the decisions how to vectorize the given loop. In particular, represent the control-flow of the vectorized version, the replication of instructions that are to be scalarized, and interleave access groups.
Also provides a VPlan-based builder utility analogous to IRBuilder. It provides an instruction-level API for generating VPInstructions while abstracting away the Recipe manipulation details.
Definition in file LoopVectorizationPlanner.h.