[llvm] Added ISD::FMAXIMUM/ISD::FMINIMUM + ISD::FMAXIMUMNUM/ISD::FMINIMUMNUM (PR #190465)

Simon Pilgrim via llvm-commits llvm-commits at lists.llvm.org
Sat Apr 4 09:52:06 PDT 2026


================
@@ -6106,6 +6106,40 @@ KnownFPClass SelectionDAG::computeKnownFPClass(SDValue Op,
     Known.fabs();
     break;
   }
+  case ISD::FMAXNUM:
+  case ISD::FMINNUM:
+  case ISD::FMAXIMUM:
+  case ISD::FMINIMUM:
+  case ISD::FMAXIMUMNUM:
+  case ISD::FMINIMUMNUM: {
+    KnownFPClass KnownLHS = computeKnownFPClass(Op.getOperand(0), DemandedElts,
+                                                InterestedClasses, Depth + 1);
+    KnownFPClass KnownRHS = computeKnownFPClass(Op.getOperand(1), DemandedElts,
----------------
RKSimon wrote:

If you can, avoid the inner switch - maybe create a 'GetMinMaxKnownFPClass(SDValue LHS, SDValue RHS, KnownFPClass::MinMaxKind)` lambda near the top of computeKnownFPClass?

https://github.com/llvm/llvm-project/pull/190465


More information about the llvm-commits mailing list