|
LLVM
8.0.1
|
Class that maps (parts of) an existing VPlan to trees of combined VPInstructions. More...
#include "Transforms/Vectorize/VPlan.h"
Public Member Functions | |
| VPlanSlp (VPInterleavedAccessInfo &IAI, VPBasicBlock &BB) | |
| ~VPlanSlp () | |
| VPInstruction * | buildGraph (ArrayRef< VPValue *> Operands) |
Tries to build an SLP tree rooted at Operands and returns a VPInstruction combining Operands, if they can be combined. More... | |
| unsigned | getWidestBundleBits () const |
| Return the width of the widest combined bundle in bits. More... | |
| bool | isCompletelySLP () const |
| Return true if all visited instruction can be combined. More... | |
Class that maps (parts of) an existing VPlan to trees of combined VPInstructions.
|
inline |
| VPInstruction * VPlanSlp::buildGraph | ( | ArrayRef< VPValue *> | Operands | ) |
Tries to build an SLP tree rooted at Operands and returns a VPInstruction combining Operands, if they can be combined.
Definition at line 358 of file VPlanSLP.cpp.
References areCommutative(), assert(), llvm::SmallVectorImpl< T >::clear(), llvm::dbgs(), llvm::SmallVectorImpl< T >::emplace_back(), llvm::ArrayRef< T >::empty(), getOpcode(), getOperands(), llvm::Optional< T >::getValue(), I, LLVM_DEBUG, llvm::SPII::Load, print(), llvm::SmallVectorTemplateBase< T >::push_back(), llvm::SmallVectorBase::size(), llvm::VPInstruction::SLPLoad, llvm::VPInstruction::SLPStore, and llvm::SPII::Store.
|
inline |
|
inline |
1.8.13