ISM_SHIFT
#define ISM_MASK ((1LL << ISM_SHIFT) - 1)
x = (y >> ISM_SHIFT) * ism + (((y & ISM_MASK) * ism) >> ISM_SHIFT);
ism = ((uint64_t)machclk_freq << ISM_SHIFT) * 8 / m;