Commit graph

33 commits

Author SHA1 Message Date
Henrik Rydgård
2f26297062 Clean up some more ifdefs 2019-05-10 23:25:57 +02:00
driver1998
5072584781 Fix neon headers for MSVC ARM64
MSVC uses arm64_neon.h for ARM64, arm_neon.h is ARM32 only.
2019-05-04 22:45:15 +08:00
Unknown W. Brackets
65e71f57c7 TexCache: Add NEON alpha checks for Vulkan. 2017-11-12 16:45:05 -08:00
Unknown W. Brackets
f087b87b0c TexCache: Simplify CheckAlpha funcs and SIMD.
Only check for full alpha now, which is simpler.
2017-11-12 16:41:19 -08:00
Unknown W. Brackets
9fbcc01afa TexCache: Remove simple 0/1 alpha check.
No practical optimizations have come of this, so it's a waste of time.
Slows down Vulkan too.
2017-11-12 16:17:46 -08:00
Henrik Rydgård
22e65ba80d Get rid of ugly alignment macros and some other cruft, we now have alignas(16) from C++11 2017-08-31 01:14:51 +02:00
Henrik Rydgard
7b3f84aae8 More buildfixes for Windows on ARM 2017-03-05 10:52:08 +01:00
Henrik Rydgard
fe6d2d4017 Avoid unaligned accesses when hashing vertex data on ARM. Fixes #9114, may help #9128 and #9129. 2016-12-01 15:56:05 +01:00
Henrik Rydgard
5df685fa07 Fix another couple of arch define things 2016-11-03 22:25:55 +01:00
Florent Castelli
8c3552de74 cmake: Detect features at compile time
Instead of relying on manually passed down flags from CMake,
we now have ppsspp_config.h file to create the platform defines for us.
This improves support for multiplatform builds (such as iOS).
2016-10-19 12:31:19 +02:00
Unknown W. Brackets
1300631e9a Allow unswizzling with a dest pitch. 2016-03-26 23:38:50 -07:00
Henrik Rydgard
c8fe0b2690 Minor simplification, buildfixes 2015-07-29 12:38:31 +02:00
Henrik Rydgård
2a1f6bca97 Fix NEON 4444 CheckAlpha, workaround for failed bNEON detection on ARM64 2015-05-31 12:29:08 +02:00
KentuckyCompass
880697f40a Add NEON versions of the CheckAlpha family 2015-05-25 18:04:52 -07:00
Henrik Rydgard
b309c83973 Initial work on ARM64, based on the ARM jit. 2015-04-06 18:13:01 +02:00
Unknown W. Brackets
1b12b57e21 Fix reversed consts in hand-neon texhash. 2014-10-29 16:38:40 -07:00
Unknown W. Brackets
faea860c27 Attempt to match the SSE2 version of the hash.
Not tested, don't currently have an ARM device.  May or may not have a
performance hit.
2014-10-29 16:37:45 -07:00
Unknown W. Brackets
3977f5a8ec Add a non-SSE implementation of the QuickTexHash.
This way we can use it as a stable value for texture replacements.
2014-10-29 16:37:44 -07:00
Unknown W. Brackets
2b16b5b79b Use XXH64 on 64-bit systems.
I'm not able to reproduce any real performance difference, but I know
there are some games which do more hashing and it may help there.
2014-10-26 17:49:24 -07:00
Unknown W. Brackets
b800762ceb Add a NEON-optimized version of XXH32.
This takes at least 40% less time to hash on NEON/ARM devices.
2014-03-25 00:34:55 -07:00
Unknown W. Brackets
a26e6ce4b6 Minor improvements to QuickTexHashNEON().
Cuts a VFP switch, oops.
2014-03-23 11:56:25 -07:00
Unknown W. Brackets
970dd4f2f8 Use vldmia not vld1 for QuickTexHashNEON().
It turns out this is ~20% slower usually, so aligned is not worth the
pipeline hit.
2014-03-23 11:56:24 -07:00
Unknown W. Brackets
2482b2a1e0 Use aligned NEON loads in texhash. 2014-03-22 21:58:50 -07:00
Unknown W. Brackets
b44d10a91e Move texture unswizzling to decoder, use NEON. 2014-03-22 21:35:16 -07:00
Unknown W. Brackets
2623f6bfe2 Disable the optimized hash on iOS, seems to crash.
Except not for me, not sure why.
2013-11-23 10:41:58 -08:00
Henrik Rydgård
662ad32d4f Fix and re-enable @unknownbracket's handcoded NEON tex hash 2013-11-11 17:12:38 +01:00
Henrik Rydgård
53800bd413 Disable the hand-coded NEON texture hash again. It's slow, for unknown reasons. 2013-11-11 14:39:29 +01:00
Henrik Rydgård
1713465e9f Revert "Temporarily disable the handcoded NEON texture hash"
and
Revert "Temporarily disable the handcoded non-NEON tex hash"

This reverts commit 068af6fda8df8069bc0491fe98e75ae007f5b650.
This reverts commit 91543e7a8d27b4a8c906c1e1c349f489a449c432.
2013-11-11 14:13:47 +01:00
Henrik Rydgård
c80403c377 Temporarily disable the handcoded NEON texture hash 2013-11-11 14:13:47 +01:00
Unknown W. Brackets
fa79d7f13c Handcode the non-NEON texcache hash as well on ARM.
Well, it could be a better algorithm, but at least this uses LDMIA.
2013-11-09 14:51:23 -08:00
Unknown W. Brackets
2dfa2379f4 Rewrite QuickTexHashNEON directly in asm.
Seems like gcc couldn't optimize it to this.
2013-11-09 12:54:55 -08:00
Unknown W. Brackets
64e977db08 Improve the non-NEON tex hash path on ARM.
This generates better looking disassembly, though a small change.
2013-11-03 07:43:10 -08:00
Unknown W. Brackets
4d47ccd5df Add a NEON version of the tex hash.
Should be used only for NEON devices.  Currently only compiled on Android.
2013-11-02 02:09:54 -07:00