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

Andrew Lenharth alenhar2 at cs.uiuc.edu
Tue Nov 29 22:43:15 PST 2005



Changes in directory llvm/lib/CodeGen/SelectionDAG:

LegalizeDAG.cpp updated: 1.217 -> 1.218
---
Log message:

add support for custom lowering SINT_TO_FP

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

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


Index: llvm/lib/CodeGen/SelectionDAG/LegalizeDAG.cpp
diff -u llvm/lib/CodeGen/SelectionDAG/LegalizeDAG.cpp:1.217 llvm/lib/CodeGen/SelectionDAG/LegalizeDAG.cpp:1.218
--- llvm/lib/CodeGen/SelectionDAG/LegalizeDAG.cpp:1.217	Tue Nov 29 00:21:05 2005
+++ llvm/lib/CodeGen/SelectionDAG/LegalizeDAG.cpp	Wed Nov 30 00:43:03 2005
@@ -1956,6 +1956,19 @@
         return Result;
       case TargetLowering::Legal:
         break;
+      case TargetLowering::Custom: {
+        Tmp1 = LegalizeOp(Node->getOperand(0));
+        SDOperand Tmp =
+          DAG.getNode(Node->getOpcode(), Node->getValueType(0), Tmp1);
+        Tmp = TLI.LowerOperation(Tmp, DAG);
+        if (Tmp.Val) {
+          AddLegalizedOperand(Op, Tmp);
+          NeedsAnotherIteration = true;
+          return Tmp;
+        } else {
+          assert(0 && "Target Must Lower this");
+        }
+      }
       }
 
       Tmp1 = LegalizeOp(Node->getOperand(0));






More information about the llvm-commits mailing list