Lines Matching defs:NSW
344 bool canDistributeOver(bool NUW, bool NSW) const {
348 return (!ZExtBits || NUW) && (!SExtBits || NSW);
375 /// True if all operations in this expression are NSW.
392 bool NSW = IsNSW && (Other.isOne() || (MulIsNSW && Offset.isZero()));
394 return LinearExpression(Val, Scale * Other, Offset * Other, NUW, NSW);
417 bool NUW = true, NSW = true;
420 NSW &= BOp->hasNoSignedWrap();
422 if (!Val.canDistributeOver(NUW, NSW))
428 NUW = NSW = false;
447 E.IsNSW &= NSW;
455 E.IsNSW &= NSW;
461 .mul(RHS, NUW, NSW);
472 E = GetLinearExpression(Val.withValue(BOp->getOperand(0), NSW), DL,
477 E.IsNSW &= NSW;
507 /// True if all operations in this expression are NSW.
511 /// negate the Scale, to avoid losing the NSW flag: X - INT_MIN*1 may be
1866 // Normalize IsNegated if we're going to lose the NSW flag anyway.