|
LLVM 24.0.0git
|
#include "llvm/Transforms/Vectorize/SandboxVectorizer/SeedCollector.h"
Public Types | |
| using | difference_type = std::ptrdiff_t |
| using | value_type = SeedBundle |
| using | pointer = value_type * |
| using | reference = value_type & |
| using | iterator_category = std::input_iterator_tag |
Public Member Functions | |
| iterator (BundleMapT &Map, BundleMapT::iterator MapIt, ValT *Vec, int VecIdx) | |
Iterates over the Map of SeedBundle Vectors, starting at MapIt, and Vec at VecIdx, skipping vectors that are completely used. | |
| value_type & | operator* () |
| void | skipUsed () |
| iterator & | operator++ () |
| iterator | operator++ (int) |
| bool | operator== (const iterator &Other) const |
| bool | operator!= (const iterator &Other) const |
Definition at line 207 of file SeedCollector.h.
| using llvm::sandboxir::SeedContainer::iterator::difference_type = std::ptrdiff_t |
Definition at line 214 of file SeedCollector.h.
| using llvm::sandboxir::SeedContainer::iterator::iterator_category = std::input_iterator_tag |
Definition at line 218 of file SeedCollector.h.
| using llvm::sandboxir::SeedContainer::iterator::pointer = value_type * |
Definition at line 216 of file SeedCollector.h.
| using llvm::sandboxir::SeedContainer::iterator::reference = value_type & |
Definition at line 217 of file SeedCollector.h.
| using llvm::sandboxir::SeedContainer::iterator::value_type = SeedBundle |
Definition at line 215 of file SeedCollector.h.
|
inline |
Iterates over the Map of SeedBundle Vectors, starting at MapIt, and Vec at VecIdx, skipping vectors that are completely used.
Iteration order over the keys {Pointer, Type, Opcode} follows DenseMap iteration order. For a given key, the vectors of SeedBundles will be returned in insertion order. As in the pseudo code below:
for Key,Value in Bundles for SeedBundleVector in Value for SeedBundle in SeedBundleVector if !SeedBundle.allUsed() ...
Note that the bundles themselves may have additional ordering, created by the subclasses by insertAt. The bundles themselves may also have used instructions.
Definition at line 239 of file SeedCollector.h.
Referenced by operator!=(), operator++(), operator++(), and operator==().
Definition at line 275 of file SeedCollector.h.
References iterator(), and llvm::Other.
|
inline |
Definition at line 241 of file SeedCollector.h.
References assert().
|
inline |
Definition at line 251 of file SeedCollector.h.
References assert(), iterator(), and skipUsed().
|
inline |
Definition at line 266 of file SeedCollector.h.
References iterator().
Definition at line 271 of file SeedCollector.h.
References assert(), iterator(), and llvm::Other.
|
inline |
Definition at line 246 of file SeedCollector.h.
References llvm::sandboxir::SeedContainer::size().
Referenced by operator++().