|
LLVM
3.7.0
|
#include <RegAllocPBQP.h>
Public Member Functions | |
| PBQPRAGraph (GraphMetadata Metadata) | |
| void | dump () const |
| Dump this graph to dbgs(). More... | |
| void | dump (raw_ostream &OS) const |
| Dump this graph to an output stream. More... | |
| void | printDot (raw_ostream &OS) const |
| Print a representation of this graph in DOT format. More... | |
Public Member Functions inherited from llvm::PBQP::Graph< RegAllocSolverImpl > | |
| Graph () | |
| Construct an empty PBQP graph. More... | |
| Graph (GraphMetadata Metadata) | |
| Construct an empty PBQP graph with the given graph metadata. More... | |
| GraphMetadata & | getMetadata () |
| Get a reference to the graph metadata. More... | |
| const GraphMetadata & | getMetadata () const |
| Get a const-reference to the graph metadata. More... | |
| void | setSolver (RegAllocSolverImpl &S) |
| Lock this graph to the given solver instance in preparation for running the solver. More... | |
| void | unsetSolver () |
| Release from solver instance. More... | |
| NodeId | addNode (OtherVectorT Costs) |
| Add a node with the given costs. More... | |
| NodeId | addNodeBypassingCostAllocator (OtherVectorPtrT Costs) |
| Add a node bypassing the cost allocator. More... | |
| EdgeId | addEdge (NodeId N1Id, NodeId N2Id, OtherVectorT Costs) |
| Add an edge between the given nodes with the given costs. More... | |
| NodeId | addEdgeBypassingCostAllocator (NodeId N1Id, NodeId N2Id, OtherMatrixPtrT Costs) |
| Add an edge bypassing the cost allocator. More... | |
| bool | empty () const |
| Returns true if the graph is empty. More... | |
| NodeIdSet | nodeIds () const |
| EdgeIdSet | edgeIds () const |
| AdjEdgeIdSet | adjEdgeIds (NodeId NId) |
| unsigned | getNumNodes () const |
| Get the number of nodes in the graph. More... | |
| unsigned | getNumEdges () const |
| Get the number of edges in the graph. More... | |
| void | setNodeCosts (NodeId NId, OtherVectorT Costs) |
| Set a node's cost vector. More... | |
| const VectorPtr & | getNodeCostsPtr (NodeId NId) const |
| Get a VectorPtr to a node's cost vector. More... | |
| const Vector & | getNodeCosts (NodeId NId) const |
| Get a node's cost vector. More... | |
| NodeMetadata & | getNodeMetadata (NodeId NId) |
| const NodeMetadata & | getNodeMetadata (NodeId NId) const |
| NodeEntry::AdjEdgeList::size_type | getNodeDegree (NodeId NId) const |
| void | updateEdgeCosts (EdgeId EId, OtherMatrixT Costs) |
| Update an edge's cost matrix. More... | |
| const MatrixPtr & | getEdgeCostsPtr (EdgeId EId) const |
| Get a MatrixPtr to a node's cost matrix. More... | |
| const Matrix & | getEdgeCosts (EdgeId EId) const |
| Get an edge's cost matrix. More... | |
| EdgeMetadata & | getEdgeMetadata (EdgeId EId) |
| const EdgeMetadata & | getEdgeMetadata (EdgeId EId) const |
| NodeId | getEdgeNode1Id (EdgeId EId) const |
| Get the first node connected to this edge. More... | |
| NodeId | getEdgeNode2Id (EdgeId EId) const |
| Get the second node connected to this edge. More... | |
| NodeId | getEdgeOtherNodeId (EdgeId EId, NodeId NId) |
| Get the "other" node connected to this edge. More... | |
| EdgeId | findEdge (NodeId N1Id, NodeId N2Id) |
| Get the edge connecting two nodes. More... | |
| void | removeNode (NodeId NId) |
| Remove a node from the graph. More... | |
| void | disconnectEdge (EdgeId EId, NodeId NId) |
| Disconnect an edge from the given node. More... | |
| void | disconnectAllNeighborsFromNode (NodeId NId) |
| Convenience method to disconnect all neighbours from the given node. More... | |
| void | reconnectEdge (EdgeId EId, NodeId NId) |
| Re-attach an edge to its nodes. More... | |
| void | removeEdge (EdgeId EId) |
| Remove an edge from the graph. More... | |
| void | clear () |
| Remove all nodes and edges from the graph. More... | |
Additional Inherited Members | |
Public Types inherited from llvm::PBQP::Graph< RegAllocSolverImpl > | |
| typedef RegAllocSolverImpl::RawVector | RawVector |
| typedef RegAllocSolverImpl::RawMatrix | RawMatrix |
| typedef RegAllocSolverImpl::Vector | Vector |
| typedef RegAllocSolverImpl::Matrix | Matrix |
| typedef CostAllocator::VectorPtr | VectorPtr |
| typedef CostAllocator::MatrixPtr | MatrixPtr |
| typedef RegAllocSolverImpl::NodeMetadata | NodeMetadata |
| typedef RegAllocSolverImpl::EdgeMetadata | EdgeMetadata |
| typedef RegAllocSolverImpl::GraphMetadata | GraphMetadata |
| typedef NodeEntry::AdjEdgeItr | AdjEdgeItr |
Public Types inherited from llvm::PBQP::GraphBase | |
| typedef unsigned | NodeId |
| typedef unsigned | EdgeId |
Static Public Member Functions inherited from llvm::PBQP::GraphBase | |
| static NodeId | invalidNodeId () |
| Returns a value representing an invalid (non-existent) node. More... | |
| static EdgeId | invalidEdgeId () |
| Returns a value representing an invalid (non-existent) edge. More... | |
Definition at line 564 of file RegAllocPBQP.h.
|
inline |
Definition at line 568 of file RegAllocPBQP.h.
| void PBQP::RegAlloc::PBQPRAGraph::dump | ( | ) | const |
Dump this graph to dbgs().
Definition at line 857 of file RegAllocPBQP.cpp.
References llvm::dbgs(), and llvm::dump().
| void PBQP::RegAlloc::PBQPRAGraph::dump | ( | raw_ostream & | OS | ) | const |
Dump this graph to an output stream.
| OS | Output stream to print on. |
Definition at line 836 of file RegAllocPBQP.cpp.
References llvm::PBQP::Graph< RegAllocSolverImpl >::edgeIds(), llvm::PBQP::Graph< RegAllocSolverImpl >::getEdgeCosts(), llvm::PBQP::Graph< RegAllocSolverImpl >::getEdgeNode1Id(), llvm::PBQP::Graph< RegAllocSolverImpl >::getEdgeNode2Id(), llvm::PBQP::Graph< RegAllocSolverImpl >::getNodeCosts(), and llvm::PBQP::Graph< RegAllocSolverImpl >::nodeIds().
| void PBQP::RegAlloc::PBQPRAGraph::printDot | ( | raw_ostream & | OS | ) | const |
Print a representation of this graph in DOT format.
| OS | Output stream to print on. |
Definition at line 859 of file RegAllocPBQP.cpp.
1.8.6