Lines Matching defs:NaN
6103 // applied at all if one of the operands is a signaling NaN.
6106 // are non NaN values.
11710 // This is OK if we don't care what happens if either operand is a NaN.
12352 // NaN.
16799 // FIXME: This transform will change the sign of a NaN and the behavior
16800 // of a signaling NaN. It is only valid when a NoNaN flag is present.
17347 // isn't too nasty (eg NaN, denormal, ...).
17510 // sqrt(+Inf) == rsqrt(+Inf) * +Inf = 0 * +Inf = NaN
17655 // pow(-inf, 0.25) = +inf; sqrt(sqrt(-inf)) = NaN.
17657 // pow(-inf, 0.75) = +inf; sqrt(-inf) * sqrt(sqrt(-inf)) = NaN.
27249 // fold (select (setcc x, [+-]0.0, *lt), NaN, (fsqrt x))
27250 // The select + setcc is redundant, because fsqrt returns NaN for X < 0.
27251 if (const ConstantFPSDNode *NaN = isConstOrConstSplatFP(LHS)) {
27252 if (NaN->isNaN() && RHS.getOpcode() == ISD::FSQRT) {
27253 // We have: (select (setcc ?, ?, ?), NaN, (fsqrt ?))
27275 // We have: (select (setcc x, [+-]0.0, *lt), NaN, (fsqrt x))