@@ -385,8 +385,8 @@ AArch64TargetLowering::AArch64TargetLowering(const TargetMachine &TM,
385
385
setOperationAction(ISD::FTRUNC, MVT::f16, Promote);
386
386
setOperationAction(ISD::FMINNUM, MVT::f16, Promote);
387
387
setOperationAction(ISD::FMAXNUM, MVT::f16, Promote);
388
- setOperationAction(ISD::FMINNAN, MVT::f16, Promote);
389
- setOperationAction(ISD::FMAXNAN, MVT::f16, Promote);
388
+ setOperationAction(ISD::FMINIMUM, MVT::f16, Promote);
389
+ setOperationAction(ISD::FMAXIMUM, MVT::f16, Promote);
390
390
391
391
// promote v4f16 to v4f32 when that is known to be safe.
392
392
setOperationAction(ISD::FADD, MVT::v4f16, Promote);
@@ -450,8 +450,8 @@ AArch64TargetLowering::AArch64TargetLowering(const TargetMachine &TM,
450
450
setOperationAction(ISD::FROUND, Ty, Legal);
451
451
setOperationAction(ISD::FMINNUM, Ty, Legal);
452
452
setOperationAction(ISD::FMAXNUM, Ty, Legal);
453
- setOperationAction(ISD::FMINNAN , Ty, Legal);
454
- setOperationAction(ISD::FMAXNAN , Ty, Legal);
453
+ setOperationAction(ISD::FMINIMUM , Ty, Legal);
454
+ setOperationAction(ISD::FMAXIMUM , Ty, Legal);
455
455
}
456
456
457
457
if (Subtarget->hasFullFP16()) {
@@ -463,8 +463,8 @@ AArch64TargetLowering::AArch64TargetLowering(const TargetMachine &TM,
463
463
setOperationAction(ISD::FROUND, MVT::f16, Legal);
464
464
setOperationAction(ISD::FMINNUM, MVT::f16, Legal);
465
465
setOperationAction(ISD::FMAXNUM, MVT::f16, Legal);
466
- setOperationAction(ISD::FMINNAN , MVT::f16, Legal);
467
- setOperationAction(ISD::FMAXNAN , MVT::f16, Legal);
466
+ setOperationAction(ISD::FMINIMUM , MVT::f16, Legal);
467
+ setOperationAction(ISD::FMAXIMUM , MVT::f16, Legal);
468
468
}
469
469
470
470
setOperationAction(ISD::PREFETCH, MVT::Other, Custom);
@@ -816,8 +816,8 @@ void AArch64TargetLowering::addTypeForNEON(MVT VT, MVT PromotedBitwiseVT) {
816
816
// F[MIN|MAX][NUM|NAN] are available for all FP NEON types.
817
817
if (VT.isFloatingPoint() &&
818
818
(VT.getVectorElementType() != MVT::f16 || Subtarget->hasFullFP16()))
819
- for (unsigned Opcode : {ISD::FMINNAN, ISD::FMAXNAN,
820
- ISD::FMINNUM, ISD::FMAXNUM})
819
+ for (unsigned Opcode :
820
+ {ISD::FMINIMUM, ISD::FMAXIMUM, ISD::FMINNUM, ISD::FMAXNUM})
821
821
setOperationAction(Opcode, VT, Legal);
822
822
823
823
if (Subtarget->isLittleEndian()) {
@@ -9867,10 +9867,10 @@ static SDValue performIntrinsicCombine(SDNode *N,
9867
9867
case Intrinsic::aarch64_neon_umaxv:
9868
9868
return combineAcrossLanesIntrinsic(AArch64ISD::UMAXV, N, DAG);
9869
9869
case Intrinsic::aarch64_neon_fmax:
9870
- return DAG.getNode(ISD::FMAXNAN , SDLoc(N), N->getValueType(0),
9870
+ return DAG.getNode(ISD::FMAXIMUM , SDLoc(N), N->getValueType(0),
9871
9871
N->getOperand(1), N->getOperand(2));
9872
9872
case Intrinsic::aarch64_neon_fmin:
9873
- return DAG.getNode(ISD::FMINNAN , SDLoc(N), N->getValueType(0),
9873
+ return DAG.getNode(ISD::FMINIMUM , SDLoc(N), N->getValueType(0),
9874
9874
N->getOperand(1), N->getOperand(2));
9875
9875
case Intrinsic::aarch64_neon_fmaxnm:
9876
9876
return DAG.getNode(ISD::FMAXNUM, SDLoc(N), N->getValueType(0),
0 commit comments