Lines Matching refs:mantissa
523 uint64_t mantissa = (bits & base::DOUBLE_SIGNIFICAND_MASK) | base::DOUBLE_HIDDEN_BIT;
533 doubleNum = static_cast<uint32_t>(mantissa >> leftover);
534 mantissa = mantissa << (64 - leftover); // 64 : double bits size
538 doubleNum = static_cast<uint32_t>(mantissa >> DATEBITS);
539 mantissa = mantissa << DATEBITS;
1582 static JSTaggedNumber CalculateNumber(const uint64_t &sign, const uint64_t &mantissa, uint64_t &exponent)
1585 uint64_t doubleBit = sign | exponent | mantissa;
1594 static JSTaggedNumber Rounding(const uint64_t &sign, uint64_t &mantissa, uint64_t &exponent, bool needRound)
1596 if (needRound || (mantissa & 1) == 1) {
1597 ++mantissa;
1598 if ((mantissa >> base::DOUBLE_SIGNIFICAND_SIZE) != 0) {
1599 mantissa = 0;
1606 return CalculateNumber(sign, mantissa, exponent);
1626 // Align to the most significant bit, then right shift 12 bits so that the head of the mantissa is in place
1627 uint64_t mantissa = (needMoveBit == 64) ? 0 :
1628 ((static_cast<uint64_t>(BigintHead) << needMoveBit) >> 12); // 12 mantissa// just has 52 bits
1637 return CalculateNumber(sign, mantissa, exponent);
1639 // pad unset mantissa
1641 mantissa |= (static_cast<uint64_t>(digit) << (remainMantissaBits - BigInt::DATEBITS));
1647 mantissa |= (static_cast<uint64_t>(digit) >> (BigInt::DATEBITS - remainMantissaBits));
1650 // After the mantissa is filled, if the bits of bigint have not been used up, consider the rounding problem
1653 return CalculateNumber(sign, mantissa, exponent);
1660 return CalculateNumber(sign, mantissa, exponent);
1667 return CalculateNumber(sign, mantissa, exponent);
1670 return Rounding(sign, mantissa, exponent, true);
1674 return Rounding(sign, mantissa, exponent, true);
1677 return Rounding(sign, mantissa, exponent, false);
1718 uint64_t mantissa = (bits & base::DOUBLE_SIGNIFICAND_MASK) | base::DOUBLE_HIDDEN_BIT;
1756 doubleNum = static_cast<uint32_t>(mantissa >> leftover);
1757 mantissa = mantissa << (64 - leftover); // 64 : double bits
1766 doubleNum = static_cast<uint32_t>(mantissa >> BigInt::DATEBITS);
1767 mantissa = mantissa << BigInt::DATEBITS;
1778 if (mantissa != 0) {