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
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
Henrik Rydgard
2240cae3bf
Prevent overrunning the debug print overlay buffer
2014-03-24 11:41:18 +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
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
Unknown W. Brackets
a478436de9
vertexjit: Attempt 16-bit color morphs on ARM.
2014-03-23 16:26:15 -07:00
Unknown W. Brackets
29f9ea5df6
vertexjit: support 8888 morph on ARM.
2014-03-23 16:26:14 -07:00
Unknown W. Brackets
34747b7aa4
vertexjit: Support morph pos/norm on ARM as well.
2014-03-23 16:26:14 -07:00
Unknown W. Brackets
009c3ee3f7
vertexjit: Save S16-S31 registers in ARM.
2014-03-23 16:26:13 -07:00
Unknown W. Brackets
b04553b983
vertexjit: Fix non-morph 5551 decoding.
...
Oops, it was just wrong before.
2014-03-23 16:26:13 -07:00
Unknown W. Brackets
f74b765ff3
Fix VLDM/VSTM encoding for D/Q regs.
...
Now it is actually using ASIMD/NEON.
2014-03-23 16:26:13 -07:00
Unknown W. Brackets
ff2d5bb17e
Add a float->GP reg, fix VDUP for I_16.
2014-03-23 16:25:56 -07:00
Unknown W. Brackets
8056440ba1
Implement NEON register VMOVs.
2014-03-23 16:25:52 -07:00
Unknown W. Brackets
2b586b2a7a
Support other constant VMOVs on NEON.
...
Float is especially useful.
2014-03-23 16:12:51 -07:00
Unknown W. Brackets
3e1cd5c161
Add a NEON VMOV imm encoding to the emitter.
2014-03-23 16:12:46 -07:00
Unknown W. Brackets
c0392e10be
Properly fail loading state when fonts don't match.
...
It should fail later anyway, but this will prevent crashes just in case.
2014-03-23 13:03:33 -07:00
Unknown W. Brackets
3a376a0cd9
Fix exists check in VFSFileSystem::GetFileInfo().
...
Only matters if it can't map the path / doesn't have the apk mapped (e.g.
as on headless right now.)
2014-03-23 13:01:52 -07:00
Unknown W. Brackets
56b83af1f0
Don't use aligned loads in non-inlined funcs.
...
I'm wanting things to stay in registers, but that's not realistic for
arguments. Force inline the others. May help #5699 .
2014-03-23 12:09:17 -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
Henrik Rydgard
b174996c1c
Add a conservative check that prevents alpha testing in a few cases.
...
This will become really powerful if we add some code to the vertex decoder
to check for non-full alpha in the vertices, and set gstate_c.vertexFullAlpha if none
is found (probably want to do the reverse, set it to true and clear if any non-255 alpha is found).
Alpha testing is a performance killer on many mobile GPUs so big efforts to
avoid it can be worth it.
2014-03-23 16:32:38 +01:00
Henrik Rydgard
20d480a374
Minor GPU code cleanups
2014-03-23 16:32:38 +01:00
Unknown W. Brackets
542d04a96f
Add support in sceKernelPrintf for %p.
2014-03-23 08:14:50 -07:00
Henrik Rydgård
66bf54ec4a
Merge pull request #5694 from sum2012/patch-10
...
Fix disc0:/ vs. disc0: in path parsing
2014-03-23 10:09:50 +01:00