Hacker News new | ask | show | jobs
Fastrange: A fast alternative to the modulo reduction (github.com)
21 points by henrikm85 3473 days ago
2 comments

This is how we've been doing division by a constant in the embedded world since...forever

this is so well known in fact that arm gcc defaults to this when a proper constant exists if you do division or modulus operator...

I was going to say, this is an ancient and well-known optimization. I have no idea how old it is, but I would venture it's been a regular practice for at least two decades.
Shouldn't a good compiler apply this type of optimisations?
It generally does. (GCC, Clang and ICC) But it cannot simplify the operation on some architectures or when the factor is variable.

The "fastrange" is a very different operation on prime factors than modulo.