diff --git a/lib/Target/X86/X86ISelLowering.cpp b/lib/Target/X86/X86ISelLowering.cpp index 53bb81dd309..9378f688743 100644 --- a/lib/Target/X86/X86ISelLowering.cpp +++ b/lib/Target/X86/X86ISelLowering.cpp @@ -4139,6 +4139,8 @@ SDOperand X86TargetLowering::LowerSELECT(SDOperand Op, SelectionDAG &DAG) { IllegalFPCMov = !hasFPCMov(cast(CC)->getSignExtended()); else if (VT == MVT::f64 && !X86ScalarSSEf64) IllegalFPCMov = !hasFPCMov(cast(CC)->getSignExtended()); + else if (VT == MVT::f80) + IllegalFPCMov = !hasFPCMov(cast(CC)->getSignExtended()); if ((Opc == X86ISD::CMP || Opc == X86ISD::COMI || Opc == X86ISD::UCOMI) && !IllegalFPCMov) {