Turn 8 into a constant

This commit is contained in:
Vladislav Shchapov 2022-01-05 03:13:41 +05:00
parent 76e1f6d9c5
commit 7460d44326

View File

@ -558,12 +558,14 @@ inline void write_digit2_separated(char* buf, unsigned a, unsigned b,
auto usep = static_cast<unsigned long long>(sep);
// Add ASCII '0' to each digit byte and insert separators.
digits |= 0x3030003030003030 | (usep << 16) | (usep << 40);
constexpr const size_t len = 8;
if (const_check(is_big_endian())) {
char tmp[8];
memcpy(tmp, &digits, 8);
std::reverse_copy(tmp, tmp + 8, buf);
char tmp[len];
memcpy(tmp, &digits, len);
std::reverse_copy(tmp, tmp + len, buf);
} else {
memcpy(buf, &digits, 8);
memcpy(buf, &digits, len);
}
}