Lines Matching refs:APInt
76 void APInt::initSlowCase(uint64_t val, bool isSigned) { in initSlowCase()
85 void APInt::initSlowCase(const APInt& that) { in initSlowCase()
90 void APInt::initFromArray(ArrayRef<uint64_t> bigVal) { in initFromArray()
106 APInt::APInt(unsigned numBits, ArrayRef<uint64_t> bigVal) : BitWidth(numBits) { in APInt() function in APInt
110 APInt::APInt(unsigned numBits, unsigned numWords, const uint64_t bigVal[]) in APInt() function in APInt
115 APInt::APInt(unsigned numbits, StringRef Str, uint8_t radix) in APInt() function in APInt
120 void APInt::reallocate(unsigned NewBitWidth) { in reallocate()
139 void APInt::assignSlowCase(const APInt &RHS) { in assignSlowCase()
155 void APInt::Profile(FoldingSetNodeID& ID) const { in Profile()
168 bool APInt::isAligned(Align A) const { in isAligned()
177 APInt& APInt::operator++() { in operator ++()
186 APInt& APInt::operator--() { in operator --()
197 APInt& APInt::operator+=(const APInt& RHS) { in operator +=()
206 APInt& APInt::operator+=(uint64_t RHS) { in operator +=()
217 APInt& APInt::operator-=(const APInt& RHS) { in operator -=()
226 APInt& APInt::operator-=(uint64_t RHS) { in operator -=()
234 APInt APInt::operator*(const APInt& RHS) const { in operator *()
237 return APInt(BitWidth, U.VAL * RHS.U.VAL); in operator *()
239 APInt Result(getMemory(getNumWords()), getBitWidth()); in operator *()
245 void APInt::andAssignSlowCase(const APInt &RHS) { in andAssignSlowCase()
251 void APInt::orAssignSlowCase(const APInt &RHS) { in orAssignSlowCase()
257 void APInt::xorAssignSlowCase(const APInt &RHS) { in xorAssignSlowCase()
263 APInt &APInt::operator*=(const APInt &RHS) { in operator *=()
268 APInt& APInt::operator*=(uint64_t RHS) { in operator *=()
278 bool APInt::equalSlowCase(const APInt &RHS) const { in equalSlowCase()
282 int APInt::compare(const APInt& RHS) const { in compare()
290 int APInt::compareSigned(const APInt& RHS) const { in compareSigned()
310 void APInt::setBitsSlowCase(unsigned loBit, unsigned hiBit) { in setBitsSlowCase()
338 static void tcComplement(APInt::WordType *dst, unsigned parts) { in tcComplement()
344 void APInt::flipAllBitsSlowCase() { in flipAllBitsSlowCase()
353 APInt APInt::concatSlowCase(const APInt &NewLSB) const { in concatSlowCase()
355 APInt Result = NewLSB.zext(NewWidth); in concatSlowCase()
363 void APInt::flipBit(unsigned bitPosition) { in flipBit()
368 void APInt::insertBits(const APInt &subBits, unsigned bitPosition) { in insertBits()
426 void APInt::insertBits(uint64_t subBits, unsigned bitPosition, unsigned numBits) { in insertBits()
453 APInt APInt::extractBits(unsigned numBits, unsigned bitPosition) const { in extractBits()
458 return APInt(numBits, U.VAL >> bitPosition); in extractBits()
466 return APInt(numBits, U.pVal[loWord] >> loBit); in extractBits()
471 return APInt(numBits, ArrayRef(U.pVal + loWord, 1 + hiWord - loWord)); in extractBits()
474 APInt Result(numBits, 0); in extractBits()
489 uint64_t APInt::extractBitsAsZExtValue(unsigned numBits, in extractBitsAsZExtValue()
513 unsigned APInt::getSufficientBitsNeeded(StringRef Str, uint8_t Radix) { in getSufficientBitsNeeded()
545 unsigned APInt::getBitsNeeded(StringRef str, uint8_t radix) { in getBitsNeeded()
571 APInt tmp(sufficient, StringRef(p, slen), radix); in getBitsNeeded()
586 hash_code llvm::hash_value(const APInt &Arg) { in hash_value()
595 unsigned DenseMapInfo<APInt, void>::getHashValue(const APInt &Key) { in getHashValue()
599 bool APInt::isSplat(unsigned SplatSizeInBits) const { in isSplat()
608 APInt APInt::getHiBits(unsigned numBits) const { in getHiBits()
613 APInt APInt::getLoBits(unsigned numBits) const { in getLoBits()
614 APInt Result(getLowBitsSet(BitWidth, numBits)); in getLoBits()
620 APInt APInt::getSplat(unsigned NewLen, const APInt &V) { in getSplat()
623 APInt Val = V.zext(NewLen); in getSplat()
630 unsigned APInt::countLeadingZerosSlowCase() const { in countLeadingZerosSlowCase()
647 unsigned APInt::countLeadingOnesSlowCase() const { in countLeadingOnesSlowCase()
671 unsigned APInt::countTrailingZerosSlowCase() const { in countTrailingZerosSlowCase()
681 unsigned APInt::countTrailingOnesSlowCase() const { in countTrailingOnesSlowCase()
692 unsigned APInt::countPopulationSlowCase() const { in countPopulationSlowCase()
699 bool APInt::intersectsSlowCase(const APInt &RHS) const { in intersectsSlowCase()
707 bool APInt::isSubsetOfSlowCase(const APInt &RHS) const { in isSubsetOfSlowCase()
715 APInt APInt::byteSwap() const { in byteSwap()
718 return APInt(BitWidth, llvm::byteswap<uint16_t>(U.VAL)); in byteSwap()
720 return APInt(BitWidth, llvm::byteswap<uint32_t>(U.VAL)); in byteSwap()
724 return APInt(BitWidth, Tmp1); in byteSwap()
727 APInt Result(getNumWords() * APINT_BITS_PER_WORD, 0); in byteSwap()
737 APInt APInt::reverseBits() const { in reverseBits()
740 return APInt(BitWidth, llvm::reverseBits<uint64_t>(U.VAL)); in reverseBits()
742 return APInt(BitWidth, llvm::reverseBits<uint32_t>(U.VAL)); in reverseBits()
744 return APInt(BitWidth, llvm::reverseBits<uint16_t>(U.VAL)); in reverseBits()
746 return APInt(BitWidth, llvm::reverseBits<uint8_t>(U.VAL)); in reverseBits()
753 APInt Val(*this); in reverseBits()
754 APInt Reversed(BitWidth, 0); in reverseBits()
767 APInt llvm::APIntOps::GreatestCommonDivisor(APInt A, APInt B) { in GreatestCommonDivisor()
810 APInt llvm::APIntOps::RoundDoubleToAPInt(double Double, unsigned width) { in RoundDoubleToAPInt()
821 return APInt(width, 0u); in RoundDoubleToAPInt()
828 return isNeg ? -APInt(width, mantissa >> (52 - exp)) : in RoundDoubleToAPInt()
829 APInt(width, mantissa >> (52 - exp)); in RoundDoubleToAPInt()
834 return APInt(width, 0); in RoundDoubleToAPInt()
837 APInt Tmp(width, mantissa); in RoundDoubleToAPInt()
849 double APInt::roundToDouble(bool isSigned) const { in roundToDouble()
865 APInt Tmp(isNeg ? -(*this) : (*this)); in roundToDouble()
906 APInt APInt::trunc(unsigned width) const { in trunc()
910 return APInt(width, getRawData()[0]); in trunc()
915 APInt Result(getMemory(getNumWords(width)), width); in trunc()
931 APInt APInt::truncUSat(unsigned width) const { in truncUSat()
938 return APInt::getMaxValue(width); in truncUSat()
942 APInt APInt::truncSSat(unsigned width) const { in truncSSat()
949 return isNegative() ? APInt::getSignedMinValue(width) in truncSSat()
950 : APInt::getSignedMaxValue(width); in truncSSat()
954 APInt APInt::sext(unsigned Width) const { in sext()
958 return APInt(Width, SignExtend64(U.VAL, BitWidth)); in sext()
963 APInt Result(getMemory(getNumWords(Width)), Width); in sext()
981 APInt APInt::zext(unsigned width) const { in zext()
985 return APInt(width, U.VAL); in zext()
990 APInt Result(getMemory(getNumWords(width)), width); in zext()
1002 APInt APInt::zextOrTrunc(unsigned width) const { in zextOrTrunc()
1010 APInt APInt::sextOrTrunc(unsigned width) const { in sextOrTrunc()
1020 void APInt::ashrInPlace(const APInt &shiftAmt) { in ashrInPlace()
1026 void APInt::ashrSlowCase(unsigned ShiftAmt) { in ashrSlowCase()
1069 void APInt::lshrInPlace(const APInt &shiftAmt) { in lshrInPlace()
1075 void APInt::lshrSlowCase(unsigned ShiftAmt) { in lshrSlowCase()
1081 APInt &APInt::operator<<=(const APInt &shiftAmt) { in operator <<=()
1087 void APInt::shlSlowCase(unsigned ShiftAmt) { in shlSlowCase()
1093 static unsigned rotateModulo(unsigned BitWidth, const APInt &rotateAmt) { in rotateModulo()
1097 APInt rot = rotateAmt; in rotateModulo()
1103 rot = rot.urem(APInt(rot.getBitWidth(), BitWidth)); in rotateModulo()
1107 APInt APInt::rotl(const APInt &rotateAmt) const { in rotl()
1111 APInt APInt::rotl(unsigned rotateAmt) const { in rotl()
1120 APInt APInt::rotr(const APInt &rotateAmt) const { in rotr()
1124 APInt APInt::rotr(unsigned rotateAmt) const { in rotr()
1142 unsigned APInt::nearestLogBase2() const { in nearestLogBase2()
1169 APInt APInt::sqrt() const { in sqrt()
1186 return APInt(BitWidth, results[ (isSingleWord() ? U.VAL : U.pVal[0]) ]); in sqrt()
1194 return APInt(BitWidth, in sqrt()
1205 APInt testy(BitWidth, 16); in sqrt()
1206 APInt x_old(BitWidth, 1); in sqrt()
1207 APInt x_new(BitWidth, 0); in sqrt()
1208 APInt two(BitWidth, 2); in sqrt()
1231 APInt square(x_old * x_old); in sqrt()
1232 APInt nextSquare((x_old + 1) * (x_old +1)); in sqrt()
1236 APInt midpoint((nextSquare - square).udiv(two)); in sqrt()
1237 APInt offset(*this - square); in sqrt()
1244 APInt APInt::multiplicativeInverse() const { in multiplicativeInverse()
1249 APInt Factor = *this; in multiplicativeInverse()
1250 APInt T; in multiplicativeInverse()
1420 void APInt::divide(const WordType *LHS, unsigned lhsWords, const WordType *RHS, in divide()
1543 APInt APInt::udiv(const APInt &RHS) const { in udiv()
1549 return APInt(BitWidth, U.VAL / RHS.U.VAL); in udiv()
1561 return APInt(BitWidth, 0); in udiv()
1567 return APInt(BitWidth, 0); in udiv()
1570 return APInt(BitWidth, 1); in udiv()
1573 return APInt(BitWidth, this->U.pVal[0] / RHS.U.pVal[0]); in udiv()
1576 APInt Quotient(BitWidth, 0); // to hold result. in udiv()
1581 APInt APInt::udiv(uint64_t RHS) const { in udiv()
1586 return APInt(BitWidth, U.VAL / RHS); in udiv()
1594 return APInt(BitWidth, 0); in udiv()
1600 return APInt(BitWidth, 0); in udiv()
1603 return APInt(BitWidth, 1); in udiv()
1606 return APInt(BitWidth, this->U.pVal[0] / RHS); in udiv()
1609 APInt Quotient(BitWidth, 0); // to hold result. in udiv()
1614 APInt APInt::sdiv(const APInt &RHS) const { in sdiv()
1625 APInt APInt::sdiv(int64_t RHS) const { in sdiv()
1636 APInt APInt::urem(const APInt &RHS) const { in urem()
1640 return APInt(BitWidth, U.VAL % RHS.U.VAL); in urem()
1654 return APInt(BitWidth, 0); in urem()
1657 return APInt(BitWidth, 0); in urem()
1663 return APInt(BitWidth, 0); in urem()
1666 return APInt(BitWidth, U.pVal[0] % RHS.U.pVal[0]); in urem()
1669 APInt Remainder(BitWidth, 0); in urem()
1674 uint64_t APInt::urem(uint64_t RHS) const { in urem()
1706 APInt APInt::srem(const APInt &RHS) const { in srem()
1717 int64_t APInt::srem(int64_t RHS) const { in srem()
1728 void APInt::udivrem(const APInt &LHS, const APInt &RHS, in udivrem()
1729 APInt &Quotient, APInt &Remainder) { in udivrem()
1738 Quotient = APInt(BitWidth, QuotVal); in udivrem()
1739 Remainder = APInt(BitWidth, RemVal); in udivrem()
1751 Quotient = APInt(BitWidth, 0); // 0 / Y ===> 0 in udivrem()
1752 Remainder = APInt(BitWidth, 0); // 0 % Y ===> 0 in udivrem()
1758 Remainder = APInt(BitWidth, 0); // X % 1 ===> 0 in udivrem()
1763 Quotient = APInt(BitWidth, 0); // X / Y ===> 0, iff X < Y in udivrem()
1768 Quotient = APInt(BitWidth, 1); // X / X ===> 1 in udivrem()
1769 Remainder = APInt(BitWidth, 0); // X % X ===> 0; in udivrem()
1799 void APInt::udivrem(const APInt &LHS, uint64_t RHS, APInt &Quotient, in udivrem()
1808 Quotient = APInt(BitWidth, QuotVal); in udivrem()
1817 Quotient = APInt(BitWidth, 0); // 0 / Y ===> 0 in udivrem()
1830 Quotient = APInt(BitWidth, 0); // X / Y ===> 0, iff X < Y in udivrem()
1835 Quotient = APInt(BitWidth, 1); // X / X ===> 1 in udivrem()
1860 void APInt::sdivrem(const APInt &LHS, const APInt &RHS, in sdivrem()
1861 APInt &Quotient, APInt &Remainder) { in sdivrem()
1864 APInt::udivrem(-LHS, -RHS, Quotient, Remainder); in sdivrem()
1866 APInt::udivrem(-LHS, RHS, Quotient, Remainder); in sdivrem()
1871 APInt::udivrem(LHS, -RHS, Quotient, Remainder); in sdivrem()
1874 APInt::udivrem(LHS, RHS, Quotient, Remainder); in sdivrem()
1878 void APInt::sdivrem(const APInt &LHS, int64_t RHS, in sdivrem()
1879 APInt &Quotient, int64_t &Remainder) { in sdivrem()
1883 APInt::udivrem(-LHS, -RHS, Quotient, R); in sdivrem()
1885 APInt::udivrem(-LHS, RHS, Quotient, R); in sdivrem()
1890 APInt::udivrem(LHS, -RHS, Quotient, R); in sdivrem()
1893 APInt::udivrem(LHS, RHS, Quotient, R); in sdivrem()
1898 APInt APInt::sadd_ov(const APInt &RHS, bool &Overflow) const { in sadd_ov()
1899 APInt Res = *this+RHS; in sadd_ov()
1905 APInt APInt::uadd_ov(const APInt &RHS, bool &Overflow) const { in uadd_ov()
1906 APInt Res = *this+RHS; in uadd_ov()
1911 APInt APInt::ssub_ov(const APInt &RHS, bool &Overflow) const { in ssub_ov()
1912 APInt Res = *this - RHS; in ssub_ov()
1918 APInt APInt::usub_ov(const APInt &RHS, bool &Overflow) const { in usub_ov()
1919 APInt Res = *this-RHS; in usub_ov()
1924 APInt APInt::sdiv_ov(const APInt &RHS, bool &Overflow) const { in sdiv_ov()
1930 APInt APInt::smul_ov(const APInt &RHS, bool &Overflow) const { in smul_ov()
1931 APInt Res = *this * RHS; in smul_ov()
1941 APInt APInt::umul_ov(const APInt &RHS, bool &Overflow) const { in umul_ov()
1947 APInt Res = lshr(1) * RHS; in umul_ov()
1958 APInt APInt::sshl_ov(const APInt &ShAmt, bool &Overflow) const { in sshl_ov()
1962 APInt APInt::sshl_ov(unsigned ShAmt, bool &Overflow) const { in sshl_ov()
1965 return APInt(BitWidth, 0); in sshl_ov()
1975 APInt APInt::ushl_ov(const APInt &ShAmt, bool &Overflow) const { in ushl_ov()
1979 APInt APInt::ushl_ov(unsigned ShAmt, bool &Overflow) const { in ushl_ov()
1982 return APInt(BitWidth, 0); in ushl_ov()
1989 APInt APInt::sfloordiv_ov(const APInt &RHS, bool &Overflow) const { in sfloordiv_ov()
1990 APInt quotient = sdiv_ov(RHS, Overflow); in sfloordiv_ov()
1996 APInt APInt::sadd_sat(const APInt &RHS) const { in sadd_sat()
1998 APInt Res = sadd_ov(RHS, Overflow); in sadd_sat()
2002 return isNegative() ? APInt::getSignedMinValue(BitWidth) in sadd_sat()
2003 : APInt::getSignedMaxValue(BitWidth); in sadd_sat()
2006 APInt APInt::uadd_sat(const APInt &RHS) const { in uadd_sat()
2008 APInt Res = uadd_ov(RHS, Overflow); in uadd_sat()
2012 return APInt::getMaxValue(BitWidth); in uadd_sat()
2015 APInt APInt::ssub_sat(const APInt &RHS) const { in ssub_sat()
2017 APInt Res = ssub_ov(RHS, Overflow); in ssub_sat()
2021 return isNegative() ? APInt::getSignedMinValue(BitWidth) in ssub_sat()
2022 : APInt::getSignedMaxValue(BitWidth); in ssub_sat()
2025 APInt APInt::usub_sat(const APInt &RHS) const { in usub_sat()
2027 APInt Res = usub_ov(RHS, Overflow); in usub_sat()
2031 return APInt(BitWidth, 0); in usub_sat()
2034 APInt APInt::smul_sat(const APInt &RHS) const { in smul_sat()
2036 APInt Res = smul_ov(RHS, Overflow); in smul_sat()
2043 return ResIsNegative ? APInt::getSignedMinValue(BitWidth) in smul_sat()
2044 : APInt::getSignedMaxValue(BitWidth); in smul_sat()
2047 APInt APInt::umul_sat(const APInt &RHS) const { in umul_sat()
2049 APInt Res = umul_ov(RHS, Overflow); in umul_sat()
2053 return APInt::getMaxValue(BitWidth); in umul_sat()
2056 APInt APInt::sshl_sat(const APInt &RHS) const { in sshl_sat()
2060 APInt APInt::sshl_sat(unsigned RHS) const { in sshl_sat()
2062 APInt Res = sshl_ov(RHS, Overflow); in sshl_sat()
2066 return isNegative() ? APInt::getSignedMinValue(BitWidth) in sshl_sat()
2067 : APInt::getSignedMaxValue(BitWidth); in sshl_sat()
2070 APInt APInt::ushl_sat(const APInt &RHS) const { in ushl_sat()
2074 APInt APInt::ushl_sat(unsigned RHS) const { in ushl_sat()
2076 APInt Res = ushl_ov(RHS, Overflow); in ushl_sat()
2080 return APInt::getMaxValue(BitWidth); in ushl_sat()
2083 void APInt::fromString(unsigned numbits, StringRef str, uint8_t radix) { in fromString()
2134 void APInt::toString(SmallVectorImpl<char> &Str, unsigned Radix, bool Signed, in toString()
2213 APInt Tmp(*this); in toString()
2268 LLVM_DUMP_METHOD void APInt::dump() const { in dump()
2277 void APInt::print(raw_ostream &OS, bool isSigned) const { in print()
2288 static_assert(APInt::APINT_BITS_PER_WORD % 2 == 0,
2293 static inline APInt::WordType lowBitMask(unsigned bits) { in lowBitMask()
2294 assert(bits != 0 && bits <= APInt::APINT_BITS_PER_WORD); in lowBitMask()
2295 return ~(APInt::WordType) 0 >> (APInt::APINT_BITS_PER_WORD - bits); in lowBitMask()
2299 static inline APInt::WordType lowHalf(APInt::WordType part) { in lowHalf()
2300 return part & lowBitMask(APInt::APINT_BITS_PER_WORD / 2); in lowHalf()
2304 static inline APInt::WordType highHalf(APInt::WordType part) { in highHalf()
2305 return part >> (APInt::APINT_BITS_PER_WORD / 2); in highHalf()
2310 void APInt::tcSet(WordType *dst, WordType part, unsigned parts) { in tcSet()
2318 void APInt::tcAssign(WordType *dst, const WordType *src, unsigned parts) { in tcAssign()
2324 bool APInt::tcIsZero(const WordType *src, unsigned parts) { in tcIsZero()
2333 int APInt::tcExtractBit(const WordType *parts, unsigned bit) { in tcExtractBit()
2338 void APInt::tcSetBit(WordType *parts, unsigned bit) { in tcSetBit()
2343 void APInt::tcClearBit(WordType *parts, unsigned bit) { in tcClearBit()
2349 unsigned APInt::tcLSB(const WordType *parts, unsigned n) { in tcLSB()
2362 unsigned APInt::tcMSB(const WordType *parts, unsigned n) { in tcMSB()
2382 APInt::tcExtract(WordType *dst, unsigned dstCount, const WordType *src, in tcExtract()
2412 APInt::WordType APInt::tcAdd(WordType *dst, const WordType *rhs, in tcAdd()
2434 APInt::WordType APInt::tcAddPart(WordType *dst, WordType src, in tcAddPart()
2447 APInt::WordType APInt::tcSubtract(WordType *dst, const WordType *rhs, in tcSubtract()
2472 APInt::WordType APInt::tcSubtractPart(WordType *dst, WordType src, in tcSubtractPart()
2486 void APInt::tcNegate(WordType *dst, unsigned parts) { in tcNegate()
2500 int APInt::tcMultiplyPart(WordType *dst, const WordType *src, in tcMultiplyPart()
2583 int APInt::tcMultiply(WordType *dst, const WordType *lhs, in tcMultiply()
2601 void APInt::tcFullMultiply(WordType *dst, const WordType *lhs, in tcFullMultiply()
2626 int APInt::tcDivide(WordType *lhs, const WordType *rhs, in tcDivide()
2668 void APInt::tcShiftLeft(WordType *Dst, unsigned Words, unsigned Count) { in tcShiftLeft()
2695 void APInt::tcShiftRight(WordType *Dst, unsigned Words, unsigned Count) { in tcShiftRight()
2721 int APInt::tcCompare(const WordType *lhs, const WordType *rhs, in tcCompare()
2732 APInt llvm::APIntOps::RoundingUDiv(const APInt &A, const APInt &B, in RoundingUDiv()
2733 APInt::Rounding RM) { in RoundingUDiv()
2736 case APInt::Rounding::DOWN: in RoundingUDiv()
2737 case APInt::Rounding::TOWARD_ZERO: in RoundingUDiv()
2739 case APInt::Rounding::UP: { in RoundingUDiv()
2740 APInt Quo, Rem; in RoundingUDiv()
2741 APInt::udivrem(A, B, Quo, Rem); in RoundingUDiv()
2750 APInt llvm::APIntOps::RoundingSDiv(const APInt &A, const APInt &B, in RoundingSDiv()
2751 APInt::Rounding RM) { in RoundingSDiv()
2753 case APInt::Rounding::DOWN: in RoundingSDiv()
2754 case APInt::Rounding::UP: { in RoundingSDiv()
2755 APInt Quo, Rem; in RoundingSDiv()
2756 APInt::sdivrem(A, B, Quo, Rem); in RoundingSDiv()
2764 if (RM == APInt::Rounding::DOWN) { in RoundingSDiv()
2774 case APInt::Rounding::TOWARD_ZERO: in RoundingSDiv()
2780 std::optional<APInt>
2781 llvm::APIntOps::SolveQuadraticEquationWrap(APInt A, APInt B, APInt C, in SolveQuadraticEquationWrap()
2795 return APInt(CoeffWidth, 0); in SolveQuadraticEquationWrap()
2847 APInt R = APInt::getOneBitSet(CoeffWidth, RangeWidth); in SolveQuadraticEquationWrap()
2848 APInt TwoA = 2 * A; in SolveQuadraticEquationWrap()
2849 APInt SqrB = B * B; in SolveQuadraticEquationWrap()
2852 auto RoundUp = [] (const APInt &V, const APInt &A) -> APInt { in SolveQuadraticEquationWrap()
2854 APInt T = V.abs().urem(A); in SolveQuadraticEquationWrap()
2877 APInt LowkR = C - SqrB.udiv(2*TwoA); // udiv because all values > 0. in SolveQuadraticEquationWrap()
2909 APInt D = SqrB - 4*A*C; in SolveQuadraticEquationWrap()
2911 APInt SQ = D.sqrt(); in SolveQuadraticEquationWrap()
2913 APInt Q = SQ * SQ; in SolveQuadraticEquationWrap()
2920 APInt X; in SolveQuadraticEquationWrap()
2921 APInt Rem; in SolveQuadraticEquationWrap()
2930 APInt::sdivrem(-B - (SQ+InexactSQ), TwoA, X, Rem); in SolveQuadraticEquationWrap()
2932 APInt::sdivrem(-B + SQ, TwoA, X, Rem); in SolveQuadraticEquationWrap()
2953 APInt VX = (A*X + B)*X + C; in SolveQuadraticEquationWrap()
2954 APInt VY = VX + TwoA*X + A + B; in SolveQuadraticEquationWrap()
2971 llvm::APIntOps::GetMostSignificantDifferentBit(const APInt &A, const APInt &B) { in GetMostSignificantDifferentBit()
2978 APInt llvm::APIntOps::ScaleBitMask(const APInt &A, unsigned NewBitWidth, in ScaleBitMask()
2990 APInt NewA = APInt::getZero(NewBitWidth); in ScaleBitMask()
3020 void llvm::StoreIntToMemory(const APInt &IntVal, uint8_t *Dst, in StoreIntToMemory()
3046 void llvm::LoadIntFromMemory(APInt &IntVal, const uint8_t *Src, in LoadIntFromMemory()
3072 APInt APIntOps::avgFloorS(const APInt &C1, const APInt &C2) { in avgFloorS()
3077 APInt APIntOps::avgFloorU(const APInt &C1, const APInt &C2) { in avgFloorU()
3082 APInt APIntOps::avgCeilS(const APInt &C1, const APInt &C2) { in avgCeilS()
3087 APInt APIntOps::avgCeilU(const APInt &C1, const APInt &C2) { in avgCeilU()
3092 APInt APIntOps::mulhs(const APInt &C1, const APInt &C2) { in mulhs()
3095 APInt C1Ext = C1.sext(FullWidth); in mulhs()
3096 APInt C2Ext = C2.sext(FullWidth); in mulhs()
3100 APInt APIntOps::mulhu(const APInt &C1, const APInt &C2) { in mulhu()
3103 APInt C1Ext = C1.zext(FullWidth); in mulhu()
3104 APInt C2Ext = C2.zext(FullWidth); in mulhu()