[llvm-commits] [llvm] r50531 - in /llvm/branches/Apple/Tak: lib/CodeGen/SelectionDAG/SelectionDAGISel.cpp test/CodeGen/X86/2008-05-01-InvalidOrdCompare.ll

Bill Wendling isanbard at gmail.com
Thu May 1 10:56:09 PDT 2008


Author: void
Date: Thu May  1 12:56:08 2008
New Revision: 50531

URL: http://llvm.org/viewvc/llvm-project?rev=50531&view=rev
Log:
Porting r50523 to Tak.

Added:
    llvm/branches/Apple/Tak/test/CodeGen/X86/2008-05-01-InvalidOrdCompare.ll
Modified:
    llvm/branches/Apple/Tak/lib/CodeGen/SelectionDAG/SelectionDAGISel.cpp

Modified: llvm/branches/Apple/Tak/lib/CodeGen/SelectionDAG/SelectionDAGISel.cpp
URL: http://llvm.org/viewvc/llvm-project/llvm/branches/Apple/Tak/lib/CodeGen/SelectionDAG/SelectionDAGISel.cpp?rev=50531&r1=50530&r2=50531&view=diff

==============================================================================
--- llvm/branches/Apple/Tak/lib/CodeGen/SelectionDAG/SelectionDAGISel.cpp (original)
+++ llvm/branches/Apple/Tak/lib/CodeGen/SelectionDAG/SelectionDAGISel.cpp Thu May  1 12:56:08 2008
@@ -1261,8 +1261,8 @@
         case FCmpInst::FCMP_OLT:   FOC = ISD::SETLT; FPC = ISD::SETOLT; break;
         case FCmpInst::FCMP_OLE:   FOC = ISD::SETLE; FPC = ISD::SETOLE; break;
         case FCmpInst::FCMP_ONE:   FOC = ISD::SETNE; FPC = ISD::SETONE; break;
-        case FCmpInst::FCMP_ORD:   FOC = ISD::SETEQ; FPC = ISD::SETO;   break;
-        case FCmpInst::FCMP_UNO:   FOC = ISD::SETNE; FPC = ISD::SETUO;  break;
+        case FCmpInst::FCMP_ORD:   FOC = FPC = ISD::SETO;   break;
+        case FCmpInst::FCMP_UNO:   FOC = FPC = ISD::SETUO;  break;
         case FCmpInst::FCMP_UEQ:   FOC = ISD::SETEQ; FPC = ISD::SETUEQ; break;
         case FCmpInst::FCMP_UGT:   FOC = ISD::SETGT; FPC = ISD::SETUGT; break;
         case FCmpInst::FCMP_UGE:   FOC = ISD::SETGE; FPC = ISD::SETUGE; break;
@@ -2306,8 +2306,8 @@
     case FCmpInst::FCMP_OLT:   FOC = ISD::SETLT; FPC = ISD::SETOLT; break;
     case FCmpInst::FCMP_OLE:   FOC = ISD::SETLE; FPC = ISD::SETOLE; break;
     case FCmpInst::FCMP_ONE:   FOC = ISD::SETNE; FPC = ISD::SETONE; break;
-    case FCmpInst::FCMP_ORD:   FOC = ISD::SETEQ; FPC = ISD::SETO;   break;
-    case FCmpInst::FCMP_UNO:   FOC = ISD::SETNE; FPC = ISD::SETUO;  break;
+    case FCmpInst::FCMP_ORD:   FOC = ISD::SETO;   break;
+    case FCmpInst::FCMP_UNO:   FOC = ISD::SETUO;  break;
     case FCmpInst::FCMP_UEQ:   FOC = ISD::SETEQ; FPC = ISD::SETUEQ; break;
     case FCmpInst::FCMP_UGT:   FOC = ISD::SETGT; FPC = ISD::SETUGT; break;
     case FCmpInst::FCMP_UGE:   FOC = ISD::SETGE; FPC = ISD::SETUGE; break;

Added: llvm/branches/Apple/Tak/test/CodeGen/X86/2008-05-01-InvalidOrdCompare.ll
URL: http://llvm.org/viewvc/llvm-project/llvm/branches/Apple/Tak/test/CodeGen/X86/2008-05-01-InvalidOrdCompare.ll?rev=50531&view=auto

==============================================================================
--- llvm/branches/Apple/Tak/test/CodeGen/X86/2008-05-01-InvalidOrdCompare.ll (added)
+++ llvm/branches/Apple/Tak/test/CodeGen/X86/2008-05-01-InvalidOrdCompare.ll Thu May  1 12:56:08 2008
@@ -0,0 +1,15 @@
+; RUN: llvm-as < %s | llc -enable-unsafe-fp-math | grep jnp
+; rdar://5902801
+
+declare void @test2()
+
+define i32 @test(double %p) nounwind {
+	%tmp5 = fcmp uno double %p, 0.000000e+00
+	br i1 %tmp5, label %bb, label %UnifiedReturnBlock
+bb:
+	call void @test2()
+	ret i32 17
+UnifiedReturnBlock:
+	ret i32 42
+}
+





More information about the llvm-commits mailing list