1
2
3
9
10
11
12
13
18
19
20
21
22
23
24
29
30
/* ... */
#ifndef OPENOCD_HELPER_ALIGN_H
#define OPENOCD_HELPER_ALIGN_H
#define ALIGN_MASK(x, mask) \
({ \
typeof(mask) _mask = (mask); \
((x) + _mask) & ~_mask; \
...})...
#define ALIGN_UP(x, a) ALIGN_MASK(x, (typeof(x))(a) - 1)
#define ALIGN_DOWN(x, a) ((x) & ~((typeof(x))(a) - 1))
#define IS_ALIGNED(x, a) (((x) & ((typeof(x))(a) - 1)) == 0)
#define IS_PWR_OF_2(x) \
({ \
typeof(x) _x = (x); \
_x == 0 || (_x & (_x - 1)) == 0; \
...})...
6 defines
/* ... */#endif