LLVM 20.0.0git
|
#include "llvm/CodeGen/RegAllocPBQP.h"
Classes | |
struct | EdgeMetadata |
Public Types | |
using | RawVector = PBQP::Vector |
using | RawMatrix = PBQP::Matrix |
using | Vector = PBQP::Vector |
using | Matrix = RAMatrix |
using | CostAllocator = PBQP::PoolCostAllocator< Vector, Matrix > |
using | NodeId = GraphBase::NodeId |
using | EdgeId = GraphBase::EdgeId |
using | NodeMetadata = RegAlloc::NodeMetadata |
using | GraphMetadata = RegAlloc::GraphMetadata |
using | Graph = PBQP::Graph< RegAllocSolverImpl > |
Public Member Functions | |
RegAllocSolverImpl (Graph &G) | |
Solution | solve () |
void | handleAddNode (NodeId NId) |
void | handleRemoveNode (NodeId NId) |
void | handleSetNodeCosts (NodeId NId, const Vector &newCosts) |
void | handleAddEdge (EdgeId EId) |
void | handleDisconnectEdge (EdgeId EId, NodeId NId) |
void | handleReconnectEdge (EdgeId EId, NodeId NId) |
void | handleUpdateCosts (EdgeId EId, const Matrix &NewCosts) |
Definition at line 270 of file RegAllocPBQP.h.
using llvm::PBQP::RegAlloc::RegAllocSolverImpl::CostAllocator = PBQP::PoolCostAllocator<Vector, Matrix> |
Definition at line 279 of file RegAllocPBQP.h.
Definition at line 282 of file RegAllocPBQP.h.
Definition at line 288 of file RegAllocPBQP.h.
Definition at line 286 of file RegAllocPBQP.h.
Definition at line 278 of file RegAllocPBQP.h.
Definition at line 281 of file RegAllocPBQP.h.
Definition at line 284 of file RegAllocPBQP.h.
Definition at line 276 of file RegAllocPBQP.h.
Definition at line 275 of file RegAllocPBQP.h.
Definition at line 277 of file RegAllocPBQP.h.
|
inline |
Definition at line 290 of file RegAllocPBQP.h.
References G.
|
inline |
Definition at line 310 of file RegAllocPBQP.h.
References llvm::PBQP::Graph< SolverT >::getEdgeNode1Id(), llvm::PBQP::Graph< SolverT >::getEdgeNode2Id(), and handleReconnectEdge().
|
inline |
Definition at line 301 of file RegAllocPBQP.h.
References assert(), llvm::PBQP::Vector::getLength(), llvm::PBQP::Graph< SolverT >::getNodeCosts(), llvm::PBQP::Graph< SolverT >::getNodeMetadata(), and llvm::PBQP::RegAlloc::NodeMetadata::setup().
|
inline |
Definition at line 315 of file RegAllocPBQP.h.
References llvm::PBQP::Graph< SolverT >::getEdgeCosts(), llvm::PBQP::Graph< SolverT >::getEdgeNode2Id(), llvm::PBQP::MDMatrix< Metadata >::getMetadata(), llvm::PBQP::Graph< SolverT >::getNodeMetadata(), and llvm::PBQP::RegAlloc::NodeMetadata::handleRemoveEdge().
|
inline |
Definition at line 322 of file RegAllocPBQP.h.
References llvm::PBQP::Graph< SolverT >::getEdgeCosts(), llvm::PBQP::Graph< SolverT >::getEdgeNode2Id(), llvm::PBQP::MDMatrix< Metadata >::getMetadata(), llvm::PBQP::Graph< SolverT >::getNodeMetadata(), and llvm::PBQP::RegAlloc::NodeMetadata::handleAddEdge().
Referenced by handleAddEdge().
|
inline |
Definition at line 307 of file RegAllocPBQP.h.
|
inline |
Definition at line 308 of file RegAllocPBQP.h.
|
inline |
Definition at line 328 of file RegAllocPBQP.h.
References llvm::PBQP::Graph< SolverT >::getEdgeCosts(), llvm::PBQP::Graph< SolverT >::getEdgeNode1Id(), llvm::PBQP::Graph< SolverT >::getEdgeNode2Id(), llvm::PBQP::MDMatrix< Metadata >::getMetadata(), llvm::PBQP::Graph< SolverT >::getNodeMetadata(), llvm::PBQP::RegAlloc::NodeMetadata::handleAddEdge(), and llvm::PBQP::RegAlloc::NodeMetadata::handleRemoveEdge().
|
inline |
Definition at line 292 of file RegAllocPBQP.h.
References llvm::PBQP::backpropagate(), llvm::PBQP::Graph< SolverT >::setSolver(), and llvm::PBQP::Graph< SolverT >::unsetSolver().
Referenced by llvm::PBQP::RegAlloc::solve().