LLVM 20.0.0git
|
This file defines the SparseSet class derived from the version described in Briggs, Torczon, "An efficient representation for sparse sets", ACM Letters on Programming Languages and Systems, Volume 2 Issue 1-4, March-Dec. More...
#include "llvm/ADT/identity.h"
#include "llvm/ADT/SmallVector.h"
#include "llvm/Support/AllocatorBase.h"
#include <cassert>
#include <cstdint>
#include <cstdlib>
#include <limits>
#include <utility>
Go to the source code of this file.
Classes | |
struct | llvm::SparseSetValTraits< ValueT > |
SparseSetValTraits - Objects in a SparseSet are identified by keys that can be uniquely converted to a small integer less than the set's universe. More... | |
struct | llvm::SparseSetValFunctor< KeyT, ValueT, KeyFunctorT > |
SparseSetValFunctor - Helper class for selecting SparseSetValTraits. More... | |
struct | llvm::SparseSetValFunctor< KeyT, KeyT, KeyFunctorT > |
SparseSetValFunctor<KeyT, KeyT> - Helper class for the common case of identity key/value sets. More... | |
class | llvm::SparseSet< ValueT, KeyFunctorT, SparseT > |
SparseSet - Fast set implementation for objects that can be identified by small unsigned keys. More... | |
Namespaces | |
namespace | llvm |
This is an optimization pass for GlobalISel generic memory operations. | |
This file defines the SparseSet class derived from the version described in Briggs, Torczon, "An efficient representation for sparse sets", ACM Letters on Programming Languages and Systems, Volume 2 Issue 1-4, March-Dec.
1993.
A sparse set holds a small number of objects identified by integer keys from a moderately sized universe. The sparse set uses more memory than other containers in order to provide faster operations.
Definition in file SparseSet.h.