Lines Matching refs:int_mant
710 uint16_t int_mant; // mantissa for result, less than (2 << FP16_MANT_BITS)
711 int error; // 0, 1, 2 or 3, where 2 means int_mant is wrong by exactly 0.5
727 int_mant = mnt >> 2;
731 int_mant = lsr16(mnt, 3 - exp);
741 (error == 2 && (int_mant & 1)))) ||
743 ++int_mant;
744 if (int_mant == 1ULL << FP16_MANT_BITS) {
748 if (int_mant == 2ULL << FP16_MANT_BITS) {
751 int_mant >>= 1;
757 int_mant |= 1;
781 return fp16_pack(sgn, biased_exp, int_mant);
794 uint32_t int_mant; // mantissa for result, less than (2 << FP32_MANT_BITS)
795 int error; // 0, 1, 2 or 3, where 2 means int_mant is wrong by exactly 0.5
811 int_mant = mnt >> 2;
815 int_mant = lsr32(mnt, 3 - exp);
825 (error == 2 && (int_mant & 1)))) ||
827 ++int_mant;
828 if (int_mant == 1ULL << FP32_MANT_BITS) {
832 if (int_mant == 2ULL << FP32_MANT_BITS) {
835 int_mant >>= 1;
841 int_mant |= 1;
858 return fp32_pack(sgn, biased_exp, int_mant);
871 uint64_t int_mant; // mantissa for result, less than (2 << FP64_MANT_BITS)
872 int error; // 0, 1, 2 or 3, where 2 means int_mant is wrong by exactly 0.5
888 int_mant = mnt >> 2;
892 int_mant = lsr64(mnt, 3 - exp);
902 (error == 2 && (int_mant & 1)))) ||
904 ++int_mant;
905 if (int_mant == 1ULL << FP64_MANT_BITS) {
909 if (int_mant == 2ULL << FP64_MANT_BITS) {
912 int_mant >>= 1;
918 int_mant |= 1;
935 return fp64_pack(sgn, biased_exp, int_mant);