hrydgard/ppsspp — pull request #4487 by unknownbrackets (2013-11-09 21:30:20+00:00)
Title: Texture cache hashing tweaks, disable second cache on mobile

The secondary cache helps significantly in some games. It literally doubles the speed in Popolocrois for example.

But that's on desktop. Games that are benefited by it aren't really playable on mobile anyway. And while testing, I hit several out of memory errors on Android when certain videos played in Senjou no Valkyria 3 because of it (the game is internally memcpy'ing the video to another area, and using that as a texture, and we end up saving a bunch of full frames in the cache.)

So, I think it's best to disable it on mobile. I had hoped the glGetError() trick would allow it to benefit mobile still, but it doesn't seem like it does since my device just locks up.

Also, I looked at the code generated by the texture hashes more carefully and decided to handcode it instead. Both inner loops are about half the size, and as far as I can tell the NEON one is about 20% faster with these changes, maybe a bit more.

-[Unknown]