[llvm-commits] CVS: llvm/utils/TableGen/DAGISelEmitter.cpp

Evan Cheng evan.cheng at apple.com
Tue Dec 13 18:22:09 PST 2005



Changes in directory llvm/utils/TableGen:

DAGISelEmitter.cpp updated: 1.97 -> 1.98
---
Log message:

Skip over srcvalue nodes when generating ISEL code.


---
Diffs of the changes:  (+7 -1)

 DAGISelEmitter.cpp |    8 +++++++-
 1 files changed, 7 insertions(+), 1 deletion(-)


Index: llvm/utils/TableGen/DAGISelEmitter.cpp
diff -u llvm/utils/TableGen/DAGISelEmitter.cpp:1.97 llvm/utils/TableGen/DAGISelEmitter.cpp:1.98
--- llvm/utils/TableGen/DAGISelEmitter.cpp:1.97	Mon Dec 12 17:45:21 2005
+++ llvm/utils/TableGen/DAGISelEmitter.cpp	Tue Dec 13 20:21:57 2005
@@ -485,7 +485,7 @@
     return MVT::Other;
   } else if (R->isSubClassOf("ComplexPattern")) {
     return TP.getDAGISelEmitter().getComplexPattern(R).getValueType();
-  } else if (R->getName() == "node") {
+  } else if (R->getName() == "node" || R->getName() == "srcvalue") {
     // Placeholder.
     return MVT::isUnknown;
   }
@@ -973,6 +973,10 @@
     Rec = Pat->getOperator();
   }
 
+  // SRCVALUE nodes are ignored.
+  if (Rec->getName() == "srcvalue")
+    return false;
+
   TreePatternNode *&Slot = InstInputs[Pat->getName()];
   if (!Slot) {
     Slot = Pat;
@@ -1832,6 +1836,8 @@
             }
           } else if (LeafRec->isSubClassOf("ComplexPattern")) {
             // Handle complex pattern. Nothing to do here.
+          } else if (LeafRec->getName() == "srcvalue") {
+            // Place holder for SRCVALUE nodes. Nothing to do here.
           } else if (LeafRec->isSubClassOf("ValueType")) {
             // Make sure this is the specified value type.
             OS << "      if (cast<VTSDNode>(" << RootName << OpNo << ")->getVT() != "






More information about the llvm-commits mailing list