CIRC_ADD
#define CIRC_ADD(val, add, size) (((val) + (add)) & ((size) - 1))
#define CIRC_ADD(idx, size, value) (((idx) + (value)) & ((size) - 1))