|
LLVM 22.0.0git
|
This file defines the SparseMultiSet class, which adds multiset behavior to the SparseSet. More...
#include "llvm/ADT/STLForwardCompat.h"#include "llvm/ADT/SmallVector.h"#include "llvm/ADT/SparseSet.h"#include <cassert>#include <cstdint>#include <cstdlib>#include <iterator>#include <limits>#include <utility>Go to the source code of this file.
Classes | |
| class | llvm::SparseMultiSet< ValueT, KeyT, KeyFunctorT, SparseT > |
| Fast multiset implementation for objects that can be identified by small unsigned keys. More... | |
| class | llvm::SparseMultiSet< ValueT, KeyT, KeyFunctorT, SparseT >::iterator_base< SMSPtrTy > |
| Our iterators are iterators over the collection of objects that share a key. More... | |
Namespaces | |
| namespace | llvm |
| This is an optimization pass for GlobalISel generic memory operations. | |
This file defines the SparseMultiSet class, which adds multiset behavior to the SparseSet.
A sparse multiset holds a small number of objects identified by integer keys from a moderately sized universe. The sparse multiset uses more memory than other containers in order to provide faster operations. Any key can map to multiple values. A SparseMultiSetNode class is provided, which serves as a convenient base class for the contents of a SparseMultiSet.
Definition in file SparseMultiSet.h.