LLVM 22.0.0git
|
A helper data structure to hold the operands of a vector of instructions. More...
Public Member Functions | |
VLOperands (ArrayRef< Value * > RootVL, ArrayRef< ValueList > Operands, const InstructionsState &S, const BoUpSLP &R) | |
Initialize with all the operands of the instruction vector RootVL . | |
ValueList | getVL (unsigned OpIdx) const |
\Returns a value vector with the operands across all lanes for the opearnd at OpIdx . | |
void | reorder () |
LLVM_DUMP_METHOD raw_ostream & | print (raw_ostream &OS) const |
LLVM_DUMP_METHOD void | dump () const |
Debug print. |
Static Public Member Functions | |
static LLVM_DUMP_METHOD StringRef | getModeStr (ReorderingMode RMode) |
static LLVM_DUMP_METHOD raw_ostream & | printMode (ReorderingMode RMode, raw_ostream &OS) |
static LLVM_DUMP_METHOD void | dumpMode (ReorderingMode RMode) |
Debug print. |
Friends | |
raw_ostream & | operator<< (raw_ostream &OS, ReorderingMode RMode) |
A helper data structure to hold the operands of a vector of instructions.
This supports a fixed vector length for all operand vectors.
Definition at line 2623 of file SLPVectorizer.cpp.
|
inline |
Initialize with all the operands of the instruction vector RootVL
.
Definition at line 3224 of file SLPVectorizer.cpp.
References llvm::slpvectorizer::BoUpSLP::BoUpSLP(), getParent(), and Operands.
|
inline |
Debug print.
Definition at line 3436 of file SLPVectorizer.cpp.
References llvm::dbgs(), LLVM_DUMP_METHOD, and print().
|
inlinestatic |
Debug print.
Definition at line 3409 of file SLPVectorizer.cpp.
References llvm::dbgs(), LLVM_DUMP_METHOD, and printMode().
|
inlinestatic |
Definition at line 3387 of file SLPVectorizer.cpp.
References LLVM_DUMP_METHOD, and llvm_unreachable.
Referenced by printMode().
\Returns a value vector with the operands across all lanes for the opearnd at OpIdx
.
Definition at line 3234 of file SLPVectorizer.cpp.
References assert(), OpIdx, and llvm::size().
|
inline |
Definition at line 3417 of file SLPVectorizer.cpp.
References llvm::raw_ostream::indent(), and LLVM_DUMP_METHOD.
Referenced by dump().
|
inlinestatic |
Definition at line 3403 of file SLPVectorizer.cpp.
References getModeStr(), and LLVM_DUMP_METHOD.
Referenced by dumpMode(), and operator<<.
|
inline |
Definition at line 3246 of file SLPVectorizer.cpp.
References llvm::any_of(), llvm::ArrayRef(), assert(), llvm::SmallPtrSetImpl< PtrType >::contains(), llvm::Data, llvm::dyn_cast(), llvm::ArrayRef< T >::front(), llvm::SmallVectorTemplateCommon< T, typename >::front(), getSameOpcode(), llvm::hasFullVectorsOrPowerOf2(), I, llvm::SmallPtrSetImpl< PtrType >::insert(), llvm::isa(), llvm_unreachable, OpIdx, llvm::SmallVectorTemplateBase< T, bool >::push_back(), llvm::SmallBitVector::set(), llvm::size(), and llvm::SmallPtrSetImplBase::size().
|
friend |
Definition at line 3413 of file SLPVectorizer.cpp.
References printMode().