Settings

Theme

Fastrange: A fast alternative to the modulo reduction

github.com

21 points by henrikm85 · 4 comments

Reader

2 threads
dmitrygr

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...

  • lvs

    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.

rkwasny

Shouldn't a good compiler apply this type of optimisations?

  • AstralStorm

    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.

Keyboard Shortcuts

j
Next item
k
Previous item
o / Enter
Open selected item
?
Show this help
Esc
Close modal / clear selection