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

Evan Cheng evan.cheng at apple.com
Sat Feb 4 00:51:01 PST 2006



Changes in directory llvm/utils/TableGen:

DAGISelEmitter.cpp updated: 1.161 -> 1.162
---
Log message:

Complex pattern's custom matcher should not call Select() on any operands.
Select them afterwards if it returns true.


---
Diffs of the changes:  (+5 -0)

 DAGISelEmitter.cpp |    5 +++++
 1 files changed, 5 insertions(+)


Index: llvm/utils/TableGen/DAGISelEmitter.cpp
diff -u llvm/utils/TableGen/DAGISelEmitter.cpp:1.161 llvm/utils/TableGen/DAGISelEmitter.cpp:1.162
--- llvm/utils/TableGen/DAGISelEmitter.cpp:1.161	Fri Feb  3 12:06:02 2006
+++ llvm/utils/TableGen/DAGISelEmitter.cpp	Sat Feb  4 02:50:49 2006
@@ -2136,6 +2136,11 @@
         for (unsigned i = 0; i < NumRes; i++)
           Code += ", Tmp" + utostr(i + ResNo);
         emitCheck(Code + ")");
+
+        for (unsigned i = 0; i < NumRes; ++i)
+          emitCode("Tmp" + utostr(i+ResNo) + " = Select(Tmp" +
+                   utostr(i+ResNo) + ");");
+
         TmpNo = ResNo + NumRes;
       } else {
         emitCode("SDOperand Tmp" + utostr(ResNo) + " = Select(" + Val + ");");






More information about the llvm-commits mailing list