LLVM 19.0.0git
Classes | Public Types | Public Member Functions | List of all members
llvm::PBQP::RegAlloc::RegAllocSolverImpl Class Reference

#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)
 

Detailed Description

Definition at line 270 of file RegAllocPBQP.h.

Member Typedef Documentation

◆ CostAllocator

Definition at line 279 of file RegAllocPBQP.h.

◆ EdgeId

Definition at line 282 of file RegAllocPBQP.h.

◆ Graph

Definition at line 288 of file RegAllocPBQP.h.

◆ GraphMetadata

Definition at line 286 of file RegAllocPBQP.h.

◆ Matrix

Definition at line 278 of file RegAllocPBQP.h.

◆ NodeId

Definition at line 281 of file RegAllocPBQP.h.

◆ NodeMetadata

Definition at line 284 of file RegAllocPBQP.h.

◆ RawMatrix

Definition at line 276 of file RegAllocPBQP.h.

◆ RawVector

Definition at line 275 of file RegAllocPBQP.h.

◆ Vector

Definition at line 277 of file RegAllocPBQP.h.

Constructor & Destructor Documentation

◆ RegAllocSolverImpl()

llvm::PBQP::RegAlloc::RegAllocSolverImpl::RegAllocSolverImpl ( Graph G)
inline

Definition at line 290 of file RegAllocPBQP.h.

References G.

Member Function Documentation

◆ handleAddEdge()

void llvm::PBQP::RegAlloc::RegAllocSolverImpl::handleAddEdge ( EdgeId  EId)
inline

◆ handleAddNode()

void llvm::PBQP::RegAlloc::RegAllocSolverImpl::handleAddNode ( NodeId  NId)
inline

◆ handleDisconnectEdge()

void llvm::PBQP::RegAlloc::RegAllocSolverImpl::handleDisconnectEdge ( EdgeId  EId,
NodeId  NId 
)
inline

◆ handleReconnectEdge()

void llvm::PBQP::RegAlloc::RegAllocSolverImpl::handleReconnectEdge ( EdgeId  EId,
NodeId  NId 
)
inline

◆ handleRemoveNode()

void llvm::PBQP::RegAlloc::RegAllocSolverImpl::handleRemoveNode ( NodeId  NId)
inline

Definition at line 307 of file RegAllocPBQP.h.

◆ handleSetNodeCosts()

void llvm::PBQP::RegAlloc::RegAllocSolverImpl::handleSetNodeCosts ( NodeId  NId,
const Vector newCosts 
)
inline

Definition at line 308 of file RegAllocPBQP.h.

◆ handleUpdateCosts()

void llvm::PBQP::RegAlloc::RegAllocSolverImpl::handleUpdateCosts ( EdgeId  EId,
const Matrix NewCosts 
)
inline

◆ solve()

Solution llvm::PBQP::RegAlloc::RegAllocSolverImpl::solve ( )
inline

The documentation for this class was generated from the following file: