LLVM 22.0.0git
|
Description: ImmutableGraph is a fast DAG implementation that cannot be modified, except by creating a new ImmutableGraph. More...
#include "llvm/ADT/BitVector.h"
#include "llvm/ADT/GraphTraits.h"
#include "llvm/ADT/STLExtras.h"
#include <algorithm>
#include <iterator>
#include <utility>
#include <vector>
Go to the source code of this file.
Classes | |
class | llvm::ImmutableGraph< NodeValueT, EdgeValueT > |
class | llvm::ImmutableGraph< NodeValueT, EdgeValueT >::Edge |
class | llvm::ImmutableGraph< NodeValueT, EdgeValueT >::Node |
class | llvm::ImmutableGraph< NodeValueT, EdgeValueT >::NodeSet |
class | llvm::ImmutableGraph< NodeValueT, EdgeValueT >::NodeSet::iterator |
class | llvm::ImmutableGraph< NodeValueT, EdgeValueT >::EdgeSet |
class | llvm::ImmutableGraph< NodeValueT, EdgeValueT >::EdgeSet::iterator |
class | llvm::ImmutableGraphBuilder< GraphT > |
struct | llvm::GraphTraits< ImmutableGraph< NodeValueT, EdgeValueT > * > |
Namespaces | |
namespace | llvm |
This is an optimization pass for GlobalISel generic memory operations. |
Description: ImmutableGraph is a fast DAG implementation that cannot be modified, except by creating a new ImmutableGraph.
ImmutableGraph is implemented as two arrays: one containing nodes, and one containing edges. The advantages to this implementation are two-fold:
Definition in file ImmutableGraph.h.