No longer include IGNode.h in the Sparc global header
authorChris Lattner <sabre@nondot.org>
Mon, 1 Sep 2003 19:56:48 +0000 (19:56 +0000)
committerChris Lattner <sabre@nondot.org>
Mon, 1 Sep 2003 19:56:48 +0000 (19:56 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8292 91177308-0d34-0410-b5e6-96231b3b80d8

lib/Target/SparcV9/SparcV9RegClassInfo.cpp
lib/Target/SparcV9/SparcV9RegClassInfo.h
lib/Target/SparcV9/SparcV9RegInfo.cpp

index c27c28b33f0fbd928d4beab266402e36d5482121..6050cf069d8c7637db7dad10695427b8af6d673f 100644 (file)
@@ -8,6 +8,7 @@
 #include "SparcInternals.h"
 #include "llvm/Type.h"
 #include "../../CodeGen/RegAlloc/RegAllocCommon.h"   // FIXME!
+#include "llvm/CodeGen/IGNode.h"
 
 //-----------------------------------------------------------------------------
 // Int Register Class - method for coloring a node in the interference graph.
@@ -162,6 +163,19 @@ void SparcIntCCRegClass::colorIGNode(IGNode *Node,
 }
 
 
+void SparcFloatCCRegClass::colorIGNode(IGNode *Node,
+                                const std::vector<bool> &IsColorUsedArr) const {
+  for(unsigned c = 0; c != 4; ++c)
+    if (!IsColorUsedArr[c]) { // find unused color
+      Node->setColor(c);   
+      return;
+    }
+  
+  Node->getParentLR()->markForSpill();
+}
+
+
+
 //-----------------------------------------------------------------------------
 // Float Register Class - method for coloring a node in the interference graph.
 //
index af61791b28212b84d47e9c0da1ab3eded8892bb5..30ec42d764233697c9cd3c4e3048f76b064299b3 100644 (file)
@@ -8,7 +8,6 @@
 #define SPARC_REG_CLASS_INFO_H
 
 #include "llvm/Target/TargetRegInfo.h"
-#include "llvm/CodeGen/IGNode.h"
 
 //-----------------------------------------------------------------------------
 // Integer Register Class
@@ -175,15 +174,7 @@ struct SparcFloatCCRegClass : public TargetRegClassInfo {
     : TargetRegClassInfo(ID, 4, 5) {  }
 
   void colorIGNode(IGNode *Node,
-                   const std::vector<bool> &IsColorUsedArr) const {
-    for(unsigned c = 0; c != 4; ++c)
-      if (!IsColorUsedArr[c]) { // find unused color
-        Node->setColor(c);   
-        return;
-      }
-
-    Node->getParentLR()->markForSpill();
-  }
+                   const std::vector<bool> &IsColorUsedArr) const;
   
   // according to  Sparc 64 ABI, all %fp CC regs are volatile
   //
index 6edf1f4c0e46f816e20e6c695ef60ef52464c3bf..cd8e1e2860b00f42af4af22a51f8ec851a4d2265 100644 (file)
@@ -14,6 +14,7 @@
 #include "llvm/CodeGen/MachineCodeForInstruction.h"
 #include "llvm/CodeGen/MachineInstrAnnot.h"
 #include "llvm/CodeGen/LiveRangeInfo.h"
+#include "llvm/CodeGen/IGNode.h"
 #include "llvm/iTerminators.h"
 #include "llvm/iOther.h"
 #include "llvm/Function.h"