*** empty log message ***


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@580 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/lib/CodeGen/RegAlloc/IGNode.cpp b/lib/CodeGen/RegAlloc/IGNode.cpp
new file mode 100644
index 0000000..0e8a124
--- /dev/null
+++ b/lib/CodeGen/RegAlloc/IGNode.cpp
@@ -0,0 +1,31 @@
+#include "llvm/CodeGen/IGNode.h"
+
+
+IGNode::IGNode(LiveRange *const PLR, unsigned int Ind): Index(Ind),
+                                                        ParentLR(PLR)
+{
+  OnStack = false;
+  CurDegree = -1 ;
+  ParentLR->setUserIGNode( this );
+}
+
+
+
+void IGNode::pushOnStack()            // sets on to stack and 
+{                                     // reduce the degree of neighbors  
+  OnStack = true; 
+  unsigned int neighs = AdjList.size();
+
+  for(unsigned int i=0; i < neighs; i++)  (AdjList[i])->decCurDegree();
+}
+ 
+
+void IGNode::delAdjIGNode(const IGNode *const Node) {
+  vector <IGNode *>::iterator It = AdjList.begin();
+    
+  // find Node
+  for( ; It != AdjList.end() && (*It != Node); It++ ) ;
+  assert( It != AdjList.end() );      // the node must be there
+  
+  AdjList.erase( It );
+}