@@ -8383,14 +8383,14 @@ SDValue TargetLowering::expandFMINIMUM_FMAXIMUM(SDNode *N,
8383
8383
// First, implement comparison not propagating NaN. If no native fmin or fmax
8384
8384
// available, use plain select with setcc instead.
8385
8385
SDValue MinMax;
8386
- if (isOperationLegalOrCustom (IsMax ? ISD::FMAXNUM_IEEE : ISD::FMINNUM_IEEE,
8387
- VT)) {
8388
- MinMax = DAG.getNode (IsMax ? ISD::FMAXNUM_IEEE : ISD::FMINNUM_IEEE, DL, VT,
8389
- LHS, RHS);
8390
- } else if (isOperationLegalOrCustom (IsMax ? ISD::FMAXNUM : ISD::FMINNUM,
8391
- VT)) {
8392
- MinMax = DAG.getNode (IsMax ? ISD::FMAXNUM : ISD::FMINNUM, DL, VT, LHS, RHS);
8386
+ unsigned CompOpcIeee = IsMax ? ISD::FMAXNUM_IEEE : ISD::FMINNUM_IEEE;
8387
+ unsigned CompOpc = IsMax ? ISD::FMAXNUM : ISD::FMINNUM;
8388
+ if (isOperationLegalOrCustom (CompOpcIeee, VT)) {
8389
+ MinMax = DAG.getNode (CompOpcIeee, DL, VT, LHS, RHS);
8390
+ } else if (isOperationLegalOrCustom (CompOpc, VT)) {
8391
+ MinMax = DAG.getNode (CompOpc, DL, VT, LHS, RHS);
8393
8392
} else {
8393
+ // NaN (if exists) will be propagated later, so orderness doesn't matter.
8394
8394
SDValue Compare =
8395
8395
DAG.getSetCC (DL, CCVT, LHS, RHS, IsMax ? ISD::SETGT : ISD::SETLT);
8396
8396
MinMax = DAG.getSelect (DL, VT, Compare, LHS, RHS);
0 commit comments