Lines Matching refs:fraction

319   // The representation of the fraction, not the actual bits. This
324 // The topmost bit in the nibble-aligned fraction.
333 // The mask for the encoded fraction. It does not include the
348 // How far from the right edge the fraction is shifted.
756 uint_type fraction = static_cast<uint_type>((bits & HF::fraction_encode_mask)
759 const bool is_zero = exponent == 0 && fraction == 0;
773 while ((fraction & HF::fraction_top_bit) == 0) {
774 fraction = static_cast<uint_type>(fraction << 1);
779 fraction = static_cast<uint_type>(fraction << 1); // eat the leading 1
780 fraction &= HF::fraction_represent_mask;
786 while (fraction_nibbles > 0 && (fraction & 0xF) == 0) {
788 fraction = static_cast<uint_type>(fraction >> 4);
800 << std::setfill('0') << std::hex << fraction;
1006 uint_type fraction = 0;
1008 // bit that is not written into 'fraction'.
1041 fraction = detail::set_nth_most_significant_bit(fraction, write_bit,
1043 // Increment the fraction index. If the input has bizarrely many
1052 // Since this updated after setting fraction bits, this effectively
1087 fraction = detail::set_nth_most_significant_bit(fraction, write_bit,
1089 // Increment the fraction index. If the input has bizarrely many
1175 bool is_zero = (!has_integer_part) && (fraction == 0);
1177 fraction = static_cast<uint_type>(fraction << 1);
1184 fraction = static_cast<uint_type>(fraction >> 1);
1185 fraction |= static_cast<uint_type>(1) << HF::top_bit_left_shift;
1188 fraction = (fraction >> HF::fraction_right_shift) & HF::fraction_encode_mask;
1195 fraction = static_cast<uint_type>(fraction >> 1);
1198 fraction &= HF::fraction_encode_mask;
1199 if (fraction == 0) {
1200 // We have underflowed our fraction. We should clamp to zero.
1209 fraction = 0;
1214 output_bits |= fraction;