@@ -218,15 +218,17 @@ X86TargetLowering::X86TargetLowering(const X86TargetMachine &TM,
218218 setTruncStoreAction(MVT::f64, MVT::f32, Expand);
219219
220220 // SETOEQ and SETUNE require checking two conditions.
221- for (auto VT : {MVT::f32, MVT::f64}) {
222- setCondCodeAction(ISD::SETOEQ, VT,
223- Subtarget.hasAVX10_2() ? Custom : Expand);
224- setCondCodeAction(ISD::SETUNE, VT,
225- Subtarget.hasAVX10_2() ? Custom : Expand);
221+ for (auto VT : {MVT::f32, MVT::f64, MVT::f80}) {
222+ setCondCodeAction(ISD::SETOEQ, VT, Expand);
223+ setCondCodeAction(ISD::SETUNE, VT, Expand);
226224 }
227- setCondCodeAction(ISD::SETOEQ, MVT::f80, Expand);
228- setCondCodeAction(ISD::SETUNE, MVT::f80, Expand);
229225
226+ if (Subtarget.hasAVX10_2()) {
227+ for (auto VT : {MVT::f32, MVT::f64}) {
228+ setCondCodeAction(ISD::SETOEQ, VT, Custom);
229+ setCondCodeAction(ISD::SETUNE, VT, Custom);
230+ }
231+ }
230232 // Integer absolute.
231233 if (Subtarget.canUseCMOV()) {
232234 setOperationAction(ISD::ABS , MVT::i16 , Custom);
@@ -24078,7 +24080,7 @@ SDValue X86TargetLowering::LowerSETCC(SDValue Op, SelectionDAG &DAG) const {
2407824080 return IsStrict ? DAG.getMergeValues({Res, Chain}, dl) : Res;
2407924081 }
2408024082
24081- if (Subtarget.hasAVX10_2_512 ()) {
24083+ if (Subtarget.hasAVX10_2 ()) {
2408224084 if (CC == ISD::SETOEQ || CC == ISD::SETUNE) {
2408324085 auto NewCC = (CC == ISD::SETOEQ) ? X86::COND_E : (X86::COND_NE);
2408424086 return getSETCC(NewCC, DAG.getNode(X86ISD::UCOMX, dl, MVT::i32, Op0, Op1),
0 commit comments