Lines Matching defs:smin
104 truncEqual = (thirtyTwo.smin() == sixtyFourAsThirtyTwo.smin() &&
123 APInt smin = range.smin().sext(destWidth);
125 return {umin, umax, smin, smax};
137 APInt smin = range.smin().sext(destWidth);
139 return ConstantIntRanges::fromSigned(smin, smax);
164 APInt sminHighPart = range.smin().ashr(destWidth - 1);
171 APInt smin = hasSignedOverflow ? APInt::getSignedMinValue(destWidth)
172 : range.smin().trunc(destWidth);
175 return {umin, umax, smin, smax};
207 sadd, lhs.smin(), rhs.smin(), lhs.smax(), rhs.smax(), /*isSigned=*/true);
239 ssub, lhs.smin(), rhs.smax(), lhs.smax(), rhs.smin(), /*isSigned=*/true);
273 minMaxBy(smul, {lhs.smin(), lhs.smax()}, {rhs.smin(), rhs.smax()},
342 const APInt &lhsMin = lhs.smin(), &lhsMax = lhs.smax(), &rhsMin = rhs.smin(),
390 if (lhs.smin().isMinSignedValue() && lhs.smax().sgt(lhs.smin())) {
394 auto newLhs = ConstantIntRanges::fromSigned(lhs.smin() + 1, lhs.smax());
424 const APInt &lhsMin = lhs.smin(), &lhsMax = lhs.smax(), &rhsMin = rhs.smin(),
428 APInt smin = APInt::getSignedMinValue(width);
439 smin = canNegativeDividend ? minNegativeResult : zero;
447 smin = minRem;
453 return ConstantIntRanges::fromSigned(smin, smax);
495 const APInt &smin = lhs.smin().sgt(rhs.smin()) ? lhs.smin() : rhs.smin();
497 return ConstantIntRanges::fromSigned(smin, smax);
513 const APInt &smin = lhs.smin().slt(rhs.smin()) ? lhs.smin() : rhs.smin();
515 return ConstantIntRanges::fromSigned(smin, smax);
621 minMaxBy(sshl, {lhs.smin(), lhs.smax()}, {rhsUMin, rhsUMax},
634 return minMaxBy(ashr, {lhs.smin(), lhs.smax()}, {rhs.umin(), rhs.umax()},
684 return lhs.smax().sle(rhs.smin());
686 return lhs.smax().slt(rhs.smin());
692 return lhs.smin().sge(rhs.smax());
694 return lhs.smin().sgt(rhs.smax());