[libc][math] Fix broken aarch64 due to clz refactoring.

This commit is contained in:
Kirill Okhotnikov 2022-06-24 23:59:26 +02:00
parent 243fc3daf6
commit 349fee08d5
1 changed files with 2 additions and 2 deletions

View File

@ -51,8 +51,8 @@ inline void normalize<long double>(int &exponent, uint64_t &mantissa) {
template <> template <>
inline void normalize<long double>(int &exponent, UInt128 &mantissa) { inline void normalize<long double>(int &exponent, UInt128 &mantissa) {
const uint64_t hi_bits = static_cast<uint64_t>(mantissa >> 64); const uint64_t hi_bits = static_cast<uint64_t>(mantissa >> 64);
const int shift = hi_bits ? (clz(hi_bits) - 15) const int shift = hi_bits ? (unsafe_clz(hi_bits) - 15)
: (clz(static_cast<uint64_t>(mantissa)) + 49); : (unsafe_clz(static_cast<uint64_t>(mantissa)) + 49);
exponent -= shift; exponent -= shift;
mantissa <<= shift; mantissa <<= shift;
} }