20static inline uint32_t LOG2_DOWN(uint32_t x) {
21 return 31U - (uint32_t)__builtin_clz(x);
25static inline uint32_t LOG2_UP(uint32_t x) {
26 return LOG2_DOWN(x - 1) + 1;
29static inline uint32_t ROUNDDOWN(uint32_t a, uint32_t n) {
34static inline uint32_t ROUNDUP(uint32_t a, uint32_t n) {
35 return ROUNDDOWN(a + n - 1, n);