Home | History | Annotate | Download | only in src

Lines Matching full:bigits_

36     : bigits_(bigits_buffer_, kBigitCapacity), used_digits_(0), exponent_(0) {
38 bigits_[i] = 0;
55 bigits_[0] = value;
69 bigits_[i] = static_cast<Chunk>(value & kBigitMask);
80 bigits_[i] = other.bigits_[i];
84 bigits_[i] = 0;
146 bigits_[i] = current_bigit;
156 bigits_[used_digits_] = most_significant_bigit;
196 Chunk sum = bigits_[bigit_pos] + other.bigits_[i] + carry;
197 bigits_[bigit_pos] = sum & kBigitMask;
203 Chunk sum = bigits_[bigit_pos] + carry;
204 bigits_[bigit_pos] = sum & kBigitMask;
226 Chunk difference = bigits_[i + offset] - other.bigits_[i] - borrow;
227 bigits_[i + offset] = difference & kBigitMask;
231 Chunk difference = bigits_[i + offset] - borrow;
232 bigits_[i + offset] = difference & kBigitMask;
262 DoubleChunk product = static_cast<DoubleChunk>(factor) * bigits_[i] + carry;
263 bigits_[i] = static_cast<Chunk>(product & kBigitMask);
268 bigits_[used_digits_] = static_cast<Chunk>(carry & kBigitMask);
286 uint64_t product_low = low * bigits_[i];
287 uint64_t product_high = high * bigits_[i];
289 bigits_[i] = static_cast<Chunk>(tmp & kBigitMask);
295 bigits_[used_digits_] = static_cast<Chunk>(carry & kBigitMask);
366 bigits_[copy_offset + i] = bigits_[i];
376 Chunk chunk1 = bigits_[copy_offset + bigit_index1];
377 Chunk chunk2 = bigits_[copy_offset + bigit_index2];
382 bigits_[i] = static_cast<Chunk>(accumulator) & kBigitMask;
391 Chunk chunk1 = bigits_[copy_offset + bigit_index1];
392 Chunk chunk2 = bigits_[copy_offset + bigit_index2];
397 // The overwritten bigits_[i] will never be read in further loop iterations,
400 bigits_[i] = static_cast<Chunk>(accumulator) & kBigitMask;
509 ASSERT(other.bigits_[other.used_digits_ - 1] >= ((1 << kBigitSize) / 16));
512 result += bigits_[used_digits_ - 1];
513 SubtractTimes(other, bigits_[used_digits_ - 1]);
520 // bigits_[used_digits_ - 1] is safe.
521 Chunk this_bigit = bigits_[used_digits_ - 1];
522 Chunk other_bigit = other.bigits_[other.used_digits_ - 1];
527 bigits_[used_digits_ - 1] = this_bigit - other_bigit * quotient;
584 SizeInHexChars(bigits_[used_digits_ - 1]) + 1;
594 Chunk current_bigit = bigits_[i];
601 Chunk most_significant_bigit = bigits_[used_digits_ - 1];
613 return bigits_[index - exponent_];
673 while (used_digits_ > 0 && bigits_[used_digits_ - 1] == 0) {
684 return used_digits_ == 0 || bigits_[used_digits_ - 1] != 0;
690 bigits_[i] = 0;
708 bigits_[i + zero_digits] = bigits_[i];
711 bigits_[i] = 0;
726 Chunk new_carry = bigits_[i] >> (kBigitSize - shift_amount);
727 bigits_[i] = ((bigits_[i] << shift_amount) + carry) & kBigitMask;
731 bigits_[used_digits_] = carry;
748 DoubleChunk product = static_cast<DoubleChunk>(factor) * other.bigits_[i];
751 bigits_[i + exponent_diff] - static_cast<Chunk>(remove & kBigitMask);
752 bigits_[i + exponent_diff] = difference & kBigitMask;
758 Chunk difference = bigits_[i] - borrow;
759 bigits_[i] = difference & kBigitMask;