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

Evan Cheng evan.cheng at apple.com
Wed Nov 8 12:31:24 PST 2006



Changes in directory llvm/utils/TableGen:

DAGISelEmitter.cpp updated: 1.279 -> 1.280
---
Log message:

Always pass the root node to ComplexPattern isel matching function.

---
Diffs of the changes:  (+3 -4)

 DAGISelEmitter.cpp |    7 +++----
 1 files changed, 3 insertions(+), 4 deletions(-)


Index: llvm/utils/TableGen/DAGISelEmitter.cpp
diff -u llvm/utils/TableGen/DAGISelEmitter.cpp:1.279 llvm/utils/TableGen/DAGISelEmitter.cpp:1.280
--- llvm/utils/TableGen/DAGISelEmitter.cpp:1.279	Fri Nov  3 23:12:02 2006
+++ llvm/utils/TableGen/DAGISelEmitter.cpp	Wed Nov  8 14:31:10 2006
@@ -2464,7 +2464,7 @@
         emitCode("SDOperand Chain" + ChainSuffix + ";");
       }
 
-      std::string Code = Fn + "(" + RootName;
+      std::string Code = Fn + "(" + RootName + ", " + RootName;
       for (unsigned i = 0; i < NumOps; i++)
         Code += ", CPTmp" + utostr(i);
       if (CP->hasProperty(SDNPHasChain)) {
@@ -2531,10 +2531,10 @@
             emitCode("SDOperand " + ChainName + ";");
           }
           
-          std::string Code = Fn + "(";
+          std::string Code = Fn + "(N, ";
           if (CP->hasProperty(SDNPHasChain)) {
             std::string ParentName(RootName.begin(), RootName.end()-1);
-            Code += "N, " + ParentName + ", ";
+            Code += ParentName + ", ";
           }
           Code += RootName;
           for (unsigned i = 0; i < NumOps; i++)
@@ -2662,7 +2662,6 @@
         // value if used multiple times by this pattern result.
         Val = "Tmp"+utostr(ResNo);
       } else if (N->isLeaf() && (CP = NodeGetComplexPattern(N, ISE))) {
-        std::string Fn = CP->getSelectFunc();
         for (unsigned i = 0; i < CP->getNumOperands(); ++i) {
           emitCode("AddToISelQueue(CPTmp" + utostr(i) + ");");
           NodeOps.push_back("CPTmp" + utostr(i));






More information about the llvm-commits mailing list