Add util::log2

This commit is contained in:
Nikita Lisitsa 2021-07-07 18:58:13 +03:00
parent b97e7bc26c
commit b243639f8d

View file

@ -5,6 +5,20 @@
namespace psemek::util
{
// log2 rounded down
template <typename T>
T log2(T x)
{
T result = 0;
while (x > 1)
{
++result;
x /= 2;
}
return result;
}
// round up to power of 2
template <typename T>
T round_pow2(T x)