LLVM API Documentation

Main Page | Namespace List | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Namespace Members | Class Members | File Members | Related Pages

llvm::InterferenceGraph Class Reference

#include <InterferenceGraph.h>

Collaboration diagram for llvm::InterferenceGraph:

Collaboration graph
[legend]
List of all members.

Public Member Functions

 InterferenceGraph (RegClass *RC)
 ~InterferenceGraph ()
void createGraph ()
void addLRToIG (LiveRange *LR)
void setInterference (const LiveRange *LR1, const LiveRange *LR2)
unsigned getInterference (const LiveRange *LR1, const LiveRange *LR2) const
void mergeIGNodesOfLRs (const LiveRange *LR1, LiveRange *LR2)
std::vector< IGNode * > & getIGNodeList ()
const std::vector< IGNode * > & getIGNodeList () const
void setCurDegreeOfIGNodes ()
void printIG () const
void printIGNodeList () const

Detailed Description

Definition at line 40 of file InterferenceGraph.h.


Constructor & Destructor Documentation

llvm::InterferenceGraph::InterferenceGraph RegClass RC  ) 
 

Definition at line 34 of file InterferenceGraph.cpp.

References llvm::DEBUG_RA, and llvm::RA_DEBUG_Interference.

llvm::InterferenceGraph::~InterferenceGraph  ) 
 

Definition at line 45 of file InterferenceGraph.cpp.

References r.


Member Function Documentation

void llvm::InterferenceGraph::addLRToIG LiveRange LR  ) 
 

Definition at line 77 of file InterferenceGraph.cpp.

Referenced by llvm::RegClass::addLRToIG().

void llvm::InterferenceGraph::createGraph  ) 
 

Definition at line 61 of file InterferenceGraph.cpp.

References r.

Referenced by llvm::RegClass::createInterferenceGraph().

const std::vector<IGNode *>& llvm::InterferenceGraph::getIGNodeList  )  const [inline]
 

Definition at line 65 of file InterferenceGraph.h.

std::vector<IGNode *>& llvm::InterferenceGraph::getIGNodeList  )  [inline]
 

Definition at line 64 of file InterferenceGraph.h.

Referenced by llvm::assertIGNode().

unsigned llvm::InterferenceGraph::getInterference const LiveRange LR1,
const LiveRange LR2
const
 

Definition at line 122 of file InterferenceGraph.cpp.

References llvm::assertIGNode().

Referenced by llvm::RegClass::getInterference().

void llvm::InterferenceGraph::mergeIGNodesOfLRs const LiveRange LR1,
LiveRange LR2
 

Definition at line 148 of file InterferenceGraph.cpp.

References llvm::assertIGNode(), llvm::DEBUG_RA, llvm::IGNode::delAdjIGNode(), llvm::IGNode::getAdjIGNode(), llvm::IGNode::getIndex(), llvm::IGNode::getNumOfNeighbors(), llvm::IGNode::getParentLR(), llvm::RA_DEBUG_Interference, and setInterference().

Referenced by llvm::RegClass::mergeIGNodesOfLRs().

void llvm::InterferenceGraph::printIG  )  const
 

Definition at line 221 of file InterferenceGraph.cpp.

Referenced by llvm::RegClass::printIG().

void llvm::InterferenceGraph::printIGNodeList  )  const
 

Definition at line 238 of file InterferenceGraph.cpp.

References llvm::IGNode::getIndex(), llvm::IGNode::getNumOfNeighbors(), and llvm::IGNode::getParentLR().

Referenced by llvm::RegClass::printIGNodeList().

void llvm::InterferenceGraph::setCurDegreeOfIGNodes  ) 
 

Definition at line 201 of file InterferenceGraph.cpp.

References llvm::IGNode::setCurDegree().

void llvm::InterferenceGraph::setInterference const LiveRange LR1,
const LiveRange LR2
 

Definition at line 90 of file InterferenceGraph.cpp.

References llvm::IGNode::addAdjIGNode(), llvm::assertIGNode(), llvm::DEBUG_RA, llvm::IGNode::getIndex(), and llvm::RA_DEBUG_Interference.

Referenced by mergeIGNodesOfLRs(), and llvm::RegClass::setInterference().


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