Commit Graph

12431 Commits

Author SHA1 Message Date
Henrik Rydgård
cf3d75975d Merge pull request #5720 from unknownbrackets/texcache
Optimize xxHash for ARM/NEON devices
2014-03-25 09:32:15 +01:00
Unknown W. Brackets
006ed53e73 Use defines on x86/SSE to avoid func pointers.
Unfortunately no such luck for Android.
2014-03-25 01:28:09 -07:00
Henrik Rydgård
9ba51adb89 Merge pull request #5719 from unknownbrackets/gpu-minor
Don't calculate lighting when not enabled (software transform)
2014-03-25 09:19:33 +01:00
Henrik Rydgård
6466566dc6 Merge pull request #5721 from unknownbrackets/headless
Allow headless to load savestates
2014-03-25 09:17:35 +01:00
Unknown W. Brackets
4c35c1bb13 Attempt to load VFS in headless on Android.
Otherwise we don't get fonts, and savestates fail to load.
2014-03-25 00:49:03 -07:00
Unknown W. Brackets
36c3a0dd68 Make it possible to load a savestate in headless.
This is primarily useful to reproduce crashes or test performance.
2014-03-25 00:46:21 -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
3ec61274fa Add prefetch to xxhash func on gcc at least.
Improves hashing speed on Android by ~18%.
2014-03-25 00:34:54 -07:00
Unknown W. Brackets
a414abfe4a Don't calculate lighting when not enabled.
We just ignore it anyway.  2% improvement in Tales of Phantasia X.
2014-03-24 22:57:58 -07:00
Henrik Rydgård
ff498ed63b Merge pull request #5710 from hrydgard/avoid-alpha-test
Avoid alpha test when vertexFullAlpha && textureFullAlpha
2014-03-25 00:51:53 +01:00
Henrik Rydgård
382db79307 Merge pull request #5698 from raven02/patch-32
Do it inside inColon
2014-03-25 00:27:28 +01:00
Henrik Rydgard
dc07d3410a More checks for alpha test elimination 2014-03-24 17:33:20 +01:00
Henrik Rydgard
b158824014 Update native (arm vfp fastmode) 2014-03-24 16:48:37 +01:00
Henrik Rydgård
5c81434b35 Merge pull request #5711 from raven02/patch-33
Divide by 65536.f instead of 65535.f
2014-03-24 16:35:17 +01:00
Henrik Rydgard
f30d0d810e ARM buildfix 2014-03-24 14:44:46 +01:00
raven02
ffcbb8703d Divide by 65536 instead of 65535 2014-03-24 21:33:29 +08:00
Henrik Rydgard
f33ddad364 Eliminate further alpha tests 2014-03-24 12:41:33 +01:00
Henrik Rydgard
2240cae3bf Prevent overrunning the debug print overlay buffer 2014-03-24 11:41:18 +01:00
Henrik Rydgard
97e7270ec9 Merge branch 'unknownbrackets-vertexalpha' into avoid-alpha-test
Conflicts:
	GPU/GLES/VertexDecoderX86.cpp
2014-03-24 11:27:45 +01:00
Henrik Rydgard
975c564893 Merge branch 'vertexalpha' of github.com:unknownbrackets/ppsspp into unknownbrackets-vertexalpha 2014-03-24 11:22:05 +01:00
Henrik Rydgard
2c76e6d023 Correctly keep track of "full alpha" in vertices (x86 jit only). 2014-03-24 11:19:44 +01:00
Henrik Rydgard
6260ac4bc7 Fix the latest fog issue for software transform as well 2014-03-24 10:57:53 +01:00
Henrik Rydgard
f2f0355d94 Split up ApplyShader into ApplyVertexShader and ApplyFragmentShader.
Will allow the alphatest avoiding optimization later.
2014-03-24 10:55:07 +01:00
Unknown W. Brackets
604160f60c Switch to fullAlphaReg not hasAlphaReg. 2014-03-24 01:27:13 -07:00
Unknown W. Brackets
61f5d3d360 Initial stab at tracking vertex alpha.
Not sure what efficient method to use on x86...
2014-03-24 01:26:55 -07:00
Unknown W. Brackets
893a719c4e Fix a typo.
Not sure how this one happened...
2014-03-24 01:15:37 -07:00
Unknown W. Brackets
3b0924278c Apply the volatile mem thread on the right thread.
Inside __KernelVolatileMemLock(), it applies also when unlocking when
waking another thread.  This was causing the tests to hang and die.
2014-03-24 00:55:47 -07:00
Henrik Rydgård
108ebca595 Merge pull request #5706 from unknownbrackets/win-input
Poll controllers on a separate thread on Windows
2014-03-24 08:46:59 +01:00
Henrik Rydgård
a29b0119c4 Merge pull request #5707 from unknownbrackets/savedata
Return an error for invalid savedata sizes
2014-03-24 08:45:50 +01:00
Unknown W. Brackets
b641ced7e0 Poll controllers on a separate thread on Windows.
This means controllers will sample more than the game fps, and will work
whenever keyboards do.
2014-03-23 23:46:10 -07:00
Unknown W. Brackets
bbda0d8c08 Fix Qt build on x86 and probably NEON. 2014-03-23 23:40:37 -07:00
Unknown W. Brackets
fc833adde0 Return an error for invalid savedata sizes.
May fix WALL-E according to:
http://forums.ppsspp.org/showthread.php?tid=434
2014-03-23 23:14:40 -07:00
Unknown W. Brackets
b589d3b170 vertexjit: Fix a silly mistake in weights > 4.
Darn switch, took me way too long to notice this.
2014-03-23 19:02:40 -07:00
Unknown W. Brackets
717e6db3a7 Fix VDUP so that it actually works. 2014-03-23 17:51:32 -07:00
Unknown W. Brackets
7be619cad2 vertexjit: Fix typo in NEON weights. 2014-03-23 17:50:53 -07:00
Henrik Rydgard
962e08ecda Attempt to fix Qt build on x86/x64 (untested). See #5702 2014-03-24 01:39:07 +01:00
Henrik Rydgård
31e5d0dcdb Merge pull request #5687 from unknownbrackets/vertexjit
Jitify the rest of ARM and x86 vertex morphs + some tweaks (not ready, just review)
2014-03-24 01:09:31 +01:00
Unknown W. Brackets
75ca544e73 vertexjit: Avoid the remaining VFP instrs.
So now, unless there's skin+morph, it should be all-NEON, I think.
2014-03-23 16:26:22 -07:00
Unknown W. Brackets
5ee4ba54b7 vertexjit: Use NEON loads for up to 8 weights. 2014-03-23 16:26:21 -07:00
Unknown W. Brackets
cb02d66d8f vertexjit: Use NEON for prescale as well.
Just to keep the VFP out of the picture.
2014-03-23 16:26:20 -07:00
Unknown W. Brackets
0dc881e9aa vertexjit: Avoid the VFP more in some weight funcs. 2014-03-23 16:26:19 -07:00
Unknown W. Brackets
c5e5bed59d vertexjit: Avoid skinning VFP switching. 2014-03-23 16:26:19 -07:00
Unknown W. Brackets
0048352318 vertexjit: Update some documentation.
We currently never skin and morph at the same time.
2014-03-23 16:26:18 -07:00
Unknown W. Brackets
9cfb0782bf vertexjit: Turn on NEON color morphs on ARM. 2014-03-23 16:26:17 -07:00
Unknown W. Brackets
4c48031724 vertexjit: Try to avoid a few more VFP switches. 2014-03-23 16:26:17 -07:00
Unknown W. Brackets
58fe022ecd vertexjit: Avoid switching to VFP from NEON. 2014-03-23 16:26:17 -07:00
Unknown W. Brackets
a1301f5c4d Log if any games are actually using s8 through.
Not sure about z sign.
2014-03-23 16:26:16 -07:00
Unknown W. Brackets
154b0d14a5 vertexjit: Combine a few loads and stores on ARM. 2014-03-23 16:26:16 -07:00
Unknown W. Brackets
b55ad0d9c6 vertexjit: Improve NEON align on color morph ARM. 2014-03-23 16:26:15 -07:00
Unknown W. Brackets
9698a565b7 vertexjit: Implement NEON color morphs on ARM. 2014-03-23 16:26:15 -07:00