// do it the simple way until we get to the next 16-byte-aligned address
while ((((uint64_t)b)&0xf) && b<be) if (*(b++)==c) res++;
// do it the simple way until we get to the next 16-byte-aligned address
while ((((uint64_t)b)&0xf) && b<be) if (*(b++)==c) res++;