[llvm-commits] [llvm] r42440 - /llvm/trunk/lib/CodeGen/SelectionDAG/LegalizeDAG.cpp

Dale Johannesen dalej at apple.com
Fri Sep 28 11:44:17 PDT 2007


Author: johannes
Date: Fri Sep 28 13:44:17 2007
New Revision: 42440

URL: http://llvm.org/viewvc/llvm-project?rev=42440&view=rev
Log:
Fix long double -> uint64 conversion.


Modified:
    llvm/trunk/lib/CodeGen/SelectionDAG/LegalizeDAG.cpp

Modified: llvm/trunk/lib/CodeGen/SelectionDAG/LegalizeDAG.cpp
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/CodeGen/SelectionDAG/LegalizeDAG.cpp?rev=42440&r1=42439&r2=42440&view=diff

==============================================================================
--- llvm/trunk/lib/CodeGen/SelectionDAG/LegalizeDAG.cpp (original)
+++ llvm/trunk/lib/CodeGen/SelectionDAG/LegalizeDAG.cpp Fri Sep 28 13:44:17 2007
@@ -5398,8 +5398,12 @@
     RTLIB::Libcall LC;
     if (Node->getOperand(0).getValueType() == MVT::f32)
       LC = RTLIB::FPTOUINT_F32_I64;
-    else
+    else if (Node->getOperand(0).getValueType() == MVT::f64)
       LC = RTLIB::FPTOUINT_F64_I64;
+    else if (Node->getOperand(0).getValueType() == MVT::f80 ||
+             Node->getOperand(0).getValueType() == MVT::f128 ||
+             Node->getOperand(0).getValueType() == MVT::ppcf128)
+      LC = RTLIB::FPTOUINT_LD_I64;
     Lo = ExpandLibCall(TLI.getLibcallName(LC), Node,
                        false/*sign irrelevant*/, Hi);
     break;





More information about the llvm-commits mailing list