Lines Matching refs:HF
669 typedef HexFloat<T, Traits> HF;
670 typedef typename HF::uint_type uint_type;
671 typedef typename HF::int_type int_type;
673 static_assert(HF::num_used_bits != 0,
675 static_assert(HF::num_exponent_bits != 0,
677 static_assert(HF::num_fraction_bits != 0,
681 const char* const sign = (bits & HF::sign_mask) ? "-" : "";
683 (bits & HF::exponent_mask) >> HF::num_fraction_bits);
685 uint_type fraction = static_cast<uint_type>((bits & HF::fraction_encode_mask)
686 << HF::num_overflow_bits);
693 int_type int_exponent = static_cast<int_type>(exponent - HF::exponent_bias);
702 while ((fraction & HF::fraction_top_bit) == 0) {
709 fraction &= HF::fraction_represent_mask;
712 uint_type fraction_nibbles = HF::fraction_nibbles;
849 using HF = HexFloat<T, Traits>;
850 using uint_type = typename HF::uint_type;
851 using int_type = typename HF::int_type;
853 value.set_value(static_cast<typename HF::native_type>(0.f));
894 int_type exponent = HF::exponent_bias;
925 write_bit << (HF::top_bit_left_shift - fraction_index++)));
957 write_bit << (HF::top_bit_left_shift - fraction_index++)));
1006 fraction |= static_cast<uint_type>(1) << HF::top_bit_left_shift;
1009 fraction = (fraction >> HF::fraction_right_shift) & HF::fraction_encode_mask;
1012 SetBits<uint_type, 0, HF::num_exponent_bits>::get;
1019 fraction &= HF::fraction_encode_mask;
1034 static_cast<uint_type>(negate_value ? 1 : 0) << HF::top_bit_left_shift);
1038 static_cast<uint_type>(exponent << HF::exponent_left_shift) &
1039 HF::exponent_mask);