diff options
author | Ruchira Sasanka <sasanka@students.uiuc.edu> | 2002-01-07 19:19:18 +0000 |
---|---|---|
committer | Ruchira Sasanka <sasanka@students.uiuc.edu> | 2002-01-07 19:19:18 +0000 |
commit | 4f3eb22e1fc8ee46cb8455f36162b5e7837473d8 (patch) | |
tree | 2eb1623e6690a986aed3be963af2663b36db9c1c /lib/Target/SparcV9/RegAlloc/IGNode.cpp | |
parent | c1a29f10a6f0bc3d219db9594ed8d3ec20efd8a4 (diff) |
Added destructors and comments.
Added correct spill candidate selection logic.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1493 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/Target/SparcV9/RegAlloc/IGNode.cpp')
-rw-r--r-- | lib/Target/SparcV9/RegAlloc/IGNode.cpp | 16 |
1 files changed, 12 insertions, 4 deletions
diff --git a/lib/Target/SparcV9/RegAlloc/IGNode.cpp b/lib/Target/SparcV9/RegAlloc/IGNode.cpp index d8473d2370..4e66d9a762 100644 --- a/lib/Target/SparcV9/RegAlloc/IGNode.cpp +++ b/lib/Target/SparcV9/RegAlloc/IGNode.cpp @@ -1,6 +1,9 @@ #include "llvm/CodeGen/IGNode.h" +//----------------------------------------------------------------------------- +// Constructor +//----------------------------------------------------------------------------- IGNode::IGNode(LiveRange *const PLR, unsigned int Ind): Index(Ind), AdjList(), ParentLR(PLR) @@ -11,9 +14,11 @@ IGNode::IGNode(LiveRange *const PLR, unsigned int Ind): Index(Ind), } - -void IGNode::pushOnStack() // sets on to stack and -{ // reduce the degree of neighbors +//----------------------------------------------------------------------------- +// Sets this IGNode on stack and reduce the degree of neighbors +//----------------------------------------------------------------------------- +void IGNode::pushOnStack() +{ OnStack = true; int neighs = AdjList.size(); @@ -25,7 +30,10 @@ void IGNode::pushOnStack() // sets on to stack and for(int i=0; i < neighs; i++) (AdjList[i])->decCurDegree(); } - +//----------------------------------------------------------------------------- +// Deletes an adjacency node. IGNodes are deleted when coalescing merges +// two IGNodes together. +//----------------------------------------------------------------------------- void IGNode::delAdjIGNode(const IGNode *const Node) { vector <IGNode *>::iterator It = AdjList.begin(); |