[llvm-commits] CVS: llvm/lib/CodeGen/SelectionDAG/LegalizeDAG.cpp

Evan Cheng evan.cheng at apple.com
Mon Dec 19 15:12:50 PST 2005



Changes in directory llvm/lib/CodeGen/SelectionDAG:

LegalizeDAG.cpp updated: 1.234 -> 1.235
---
Log message:

X86 conditional branch support.


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

 LegalizeDAG.cpp |   10 ++++++++++
 1 files changed, 10 insertions(+)


Index: llvm/lib/CodeGen/SelectionDAG/LegalizeDAG.cpp
diff -u llvm/lib/CodeGen/SelectionDAG/LegalizeDAG.cpp:1.234 llvm/lib/CodeGen/SelectionDAG/LegalizeDAG.cpp:1.235
--- llvm/lib/CodeGen/SelectionDAG/LegalizeDAG.cpp:1.234	Sun Dec 18 17:54:29 2005
+++ llvm/lib/CodeGen/SelectionDAG/LegalizeDAG.cpp	Mon Dec 19 17:12:38 2005
@@ -883,6 +883,16 @@
       }
       Result = LegalizeOp(Result);  // Relegalize new nodes.
       break;
+    case TargetLowering::Custom: {
+      SDOperand Tmp =
+        TLI.LowerOperation(DAG.getNode(ISD::BRCOND, Node->getValueType(0),
+                                       Tmp1, Tmp2, Node->getOperand(2)), DAG);
+      if (Tmp.Val) {
+        Result = LegalizeOp(Tmp);
+        break;
+      }
+      // FALLTHROUGH if the target thinks it is legal.
+    }
     case TargetLowering::Legal:
       // Basic block destination (Op#2) is always legal.
       if (Tmp1 != Node->getOperand(0) || Tmp2 != Node->getOperand(1))






More information about the llvm-commits mailing list