4 ms·
I will add that 32 bit version compiles quite nicely on arm. It's also what made me try something with this structure. https://godbolt.org/z/abd79sEh1 https://g
by anfilt 5y ago
I will add that 32 bit version compiles quite nicely on arm. It's also what made me try something with this structure.
https://godbolt.org/z/abd79sEh1 https://godbolt.org/z/abd79sEh1
As for x86/x86_64 processors compiling with a flag like -march=broadwell will remove quite few movs from the compiled code since the RORX instruction will be available which can take two register parameters, and a constant. Unlike the normal ROR instruction which is just a register and constant or the CL register for the rotation amount.
Now compared to functions that use multiplication. Multiplication can mix bits quite quickly. If the hardware multiplier is fast I don't think it would be faster with than fnv1 considering how simple that function is.