LLVM 20.0.0git
|
A helper data structure to hold the operands of a vector of instructions. More...
Public Member Functions | |
VLOperands (ArrayRef< Value * > RootVL, Instruction *VL0, 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 1965 of file SLPVectorizer.cpp.
|
inline |
Initialize with all the operands of the instruction vector RootVL
.
Definition at line 2553 of file SLPVectorizer.cpp.
References DL.
|
inline |
Debug print.
Definition at line 2762 of file SLPVectorizer.cpp.
References llvm::dbgs(), and print().
|
inlinestatic |
Debug print.
Definition at line 2735 of file SLPVectorizer.cpp.
References llvm::dbgs(), and printMode().
|
inlinestatic |
Definition at line 2713 of file SLPVectorizer.cpp.
References llvm_unreachable.
Referenced by printMode().
\Returns a value vector with the operands across all lanes for the opearnd at OpIdx
.
Definition at line 2562 of file SLPVectorizer.cpp.
References assert(), and llvm::size().
|
inline |
Definition at line 2743 of file SLPVectorizer.cpp.
References llvm::raw_ostream::indent(), and OS.
Referenced by dump().
|
inlinestatic |
Definition at line 2729 of file SLPVectorizer.cpp.
References getModeStr(), and OS.
Referenced by dumpMode().
|
inline |
Definition at line 2574 of file SLPVectorizer.cpp.
References llvm::any_of(), assert(), llvm::SmallPtrSetImpl< PtrType >::contains(), llvm::Data, llvm::SmallVectorTemplateCommon< T, typename >::front(), getSameOpcode(), llvm::has_single_bit(), I, llvm::SmallPtrSetImpl< PtrType >::insert(), llvm_unreachable, llvm::SmallVectorTemplateBase< T, bool >::push_back(), llvm::SmallBitVector::set(), llvm::SmallPtrSetImplBase::size(), llvm::size(), and llvm::ArrayRef< T >::slice().
|
friend |
Definition at line 2739 of file SLPVectorizer.cpp.