LLVM: llvm::sandboxir::SeedContainer::iterator Class Reference (original) (raw)
#include "[llvm/Transforms/Vectorize/SandboxVectorizer/SeedCollector.h](SeedCollector%5F8h%5Fsource.html)"
| 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 200 of file SeedCollector.h.
◆ difference_type
using llvm::sandboxir::SeedContainer::iterator::difference_type = std::ptrdiff_t
◆ iterator_category
using llvm::sandboxir::SeedContainer::iterator::iterator_category = std::input_iterator_tag
◆ pointer
using llvm::sandboxir::SeedContainer::iterator::pointer = value_type *
using llvm::sandboxir::SeedContainer::iterator::reference = value_type &
◆ value_type
using llvm::sandboxir::SeedContainer::iterator::value_type = SeedBundle
◆ iterator()
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 232 of file SeedCollector.h.
Referenced by operator!=(), operator++(), operator++(), and operator==().
◆ operator!=()
| bool llvm::sandboxir::SeedContainer::iterator::operator!= ( const iterator & Other) const | inline |
|---|
◆ operator*()
| value_type & llvm::sandboxir::SeedContainer::iterator::operator* ( ) | inline |
|---|
◆ operator++() [1/2]
| iterator & llvm::sandboxir::SeedContainer::iterator::operator++ ( ) | inline |
|---|
◆ operator++() [2/2]
| iterator llvm::sandboxir::SeedContainer::iterator::operator++ ( int ) | inline |
|---|
◆ operator==()
| bool llvm::sandboxir::SeedContainer::iterator::operator== ( const iterator & Other) const | inline |
|---|
◆ skipUsed()
| void llvm::sandboxir::SeedContainer::iterator::skipUsed ( ) | inline |
|---|
The documentation for this class was generated from the following file:
- include/llvm/Transforms/Vectorize/SandboxVectorizer/SeedCollector.h