[llvm] [DAG] Add initial version of SelectionDAG::computeKnownFPClass (PR #188790)

Simon Pilgrim via llvm-commits llvm-commits at lists.llvm.org
Thu Mar 26 11:02:46 PDT 2026


================
@@ -6045,6 +5988,74 @@ bool SelectionDAG::isBaseWithConstantOffset(SDValue Op) const {
          (Op.isAnyAdd() || isADDLike(Op));
 }
 
+KnownFPClass SelectionDAG::computeKnownFPClass(SDValue Op,
+                                               FPClassTest InterestedClasses,
+                                               unsigned Depth) const {
+  EVT VT = Op.getValueType();
+  APInt DemandedElts = VT.isFixedLengthVector()
+                           ? APInt::getAllOnes(VT.getVectorNumElements())
+                           : APInt(1, 1);
+  return computeKnownFPClass(Op, DemandedElts, InterestedClasses, Depth);
+}
+
+KnownFPClass SelectionDAG::computeKnownFPClass(SDValue Op,
+                                               const APInt &DemandedElts,
+                                               FPClassTest InterestedClasses,
+                                               unsigned Depth) const {
+  KnownFPClass Known;
+
+  if (const ConstantFPSDNode *CFP = dyn_cast<ConstantFPSDNode>(Op)) {
----------------
RKSimon wrote:

(style)
```suggestion
  if (auto *CFP = dyn_cast<ConstantFPSDNode>(Op)) {
```

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


More information about the llvm-commits mailing list