hrydgard/ppsspp — pull request #5720 by unknownbrackets (2014-03-25 07:35:12+00:00)
Title: Optimize xxHash for ARM/NEON devices

The extra function pointer may cause a small hit on x86. ARM should be faster with this and NEON should be ~50% faster or so (only considering hashing.) Depends on the size being hashed.

Actually, here's a ranking of the hashes, from slow to fast, on ARM:
1. Original XXH32 (+0%)
2. XXH32 + prefetch (+18%)
3. QuickTexHash (+42%) - NOTE: less reliable, but fast.
4. NEON QuickTexHash (+49%)
5. NEON XXH32 (+52%)

The function pointer doesn't come cheap. When I did it directly within XXH32 (adding .neon to Android.mk, btw gcc only managed +0.22% with that, pfff...), I got +61%.

-[Unknown]