diff --git a/libc/src/__support/float_to_string.h b/libc/src/__support/float_to_string.h --- a/libc/src/__support/float_to_string.h +++ b/libc/src/__support/float_to_string.h @@ -387,15 +387,9 @@ const int32_t shift_amount) { constexpr size_t MANT_INT_SIZE = sizeof(MantissaInt) * 8; cpp::UInt val(large); - // TODO: Find a better way to force __uint128_t to be UInt<128> - cpp::UInt wide_mant(0); - wide_mant[0] = static_cast(mantissa & (uint64_t(-1))); - wide_mant[1] = static_cast(mantissa >> 64); - val = (val * wide_mant) >> shift_amount; - + val = (val * mantissa) >> shift_amount; return static_cast( val.div_uint32_times_pow_2(1000000000, 0).value()); - // return fast_uint_mod_1e9(val); } } // namespace internal