diff --git a/llvm/lib/Target/NVPTX/NVPTXISelLowering.cpp b/llvm/lib/Target/NVPTX/NVPTXISelLowering.cpp --- a/llvm/lib/Target/NVPTX/NVPTXISelLowering.cpp +++ b/llvm/lib/Target/NVPTX/NVPTXISelLowering.cpp @@ -574,7 +574,6 @@ for (const auto &Op : {ISD::FMINIMUM, ISD::FMAXIMUM}) { setFP16OperationAction(Op, MVT::f16, GetMinMaxAction(Expand), Expand); setOperationAction(Op, MVT::f32, GetMinMaxAction(Expand)); - setOperationAction(Op, MVT::f64, GetMinMaxAction(Expand)); setFP16OperationAction(Op, MVT::v2f16, GetMinMaxAction(Expand), Expand); } diff --git a/llvm/test/CodeGen/NVPTX/fminimum-fmaximum.ll b/llvm/test/CodeGen/NVPTX/fminimum-fmaximum.ll --- a/llvm/test/CodeGen/NVPTX/fminimum-fmaximum.ll +++ b/llvm/test/CodeGen/NVPTX/fminimum-fmaximum.ll @@ -25,9 +25,8 @@ ; CHECK-LABEL: minimum_double define double @minimum_double(double %a) #0 { - ; CHECK-NONAN: setp - ; CHECK-NONAN: selp.f64 - ; CHECK-NAN: min.NaN.f64 + ; CHECK: setp + ; CHECK: selp.f64 %p = fcmp ult double %a, 0.0 %x = select i1 %p, double %a, double 0.0 ret double %x @@ -69,9 +68,8 @@ ; CHECK-LABEL: maximum_double define double @maximum_double(double %a) #0 { - ; CHECK-NONAN: setp - ; CHECK-NONAN: selp.f64 - ; CHECK-NAN: max.NaN.f64 + ; CHECK: setp + ; CHECK: selp.f64 %p = fcmp ugt double %a, 0.0 %x = select i1 %p, double %a, double 0.0 ret double %x