|
|
|
@ -1,5 +1,7 @@ |
|
|
|
|
#pragma once |
|
|
|
|
|
|
|
|
|
#include <limits.h> |
|
|
|
|
|
|
|
|
|
#define min(x, y) ((x < y) ? (x) : (y)) |
|
|
|
|
#define max(x, y) ((x > y) ? (x) : (y)) |
|
|
|
|
|
|
|
|
@ -12,3 +14,7 @@ |
|
|
|
|
#define IS_ROUND(x, k) (!((x) & ((k) - 1))) |
|
|
|
|
#define ROUND_DOWN(x, k) ((x) & ~((k) - 1)) |
|
|
|
|
#define ROUND_UP(x, k) (((x) + (k) - 1) & ~((k) - 1)) |
|
|
|
|
|
|
|
|
|
/* Bit manipulation */ |
|
|
|
|
#define BIT_SIZE(t) (CHAR_BIT * sizeof(t)) |
|
|
|
|
#define BIT(n) (1 << (n)) |
|
|
|
|