[llvm] CodeGen: Add ISD::AssertNoFPClass (PR #135946)
Simon Pilgrim via llvm-commits
llvm-commits at lists.llvm.org
Mon Apr 21 04:27:22 PDT 2025
================
@@ -5761,13 +5761,11 @@ bool SelectionDAG::isKnownNeverNaN(SDValue Op, const APInt &DemandedElts,
return true;
}
case ISD::AssertNoFPClass: {
- SDValue SDNoFPClass = Op.getOperand(1);
- assert(isa<ConstantSDNode>(SDNoFPClass) && "NoFPClass is not Constant");
- FPClassTest NoFPClass = static_cast<FPClassTest>(
- dyn_cast<ConstantSDNode>(SDNoFPClass)->getZExtValue());
- if (NoFPClass & fcNan)
+ FPClassTest NoFPClass =
+ static_cast<FPClassTest>(Op.getConstantOperandVal(1));
+ if ((NoFPClass & fcNan) == fcNan)
return true;
- if (SNaN && (NoFPClass & fcSNan))
+ if (SNaN && (NoFPClass & fcSNan) == fcSNan)
return true;
return isKnownNeverNaN(Op.getOperand(0), SNaN, Depth + 1);
----------------
RKSimon wrote:
Add DemandedElts?
https://github.com/llvm/llvm-project/pull/135946
More information about the llvm-commits
mailing list