Commit Graph
12399 Commits
Author SHA1 Message Date
Unknown W. Brackets bbda0d8c08 Fix Qt build on x86 and probably NEON. 2014-03-23 23:40:37 -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
Henrik Rydgard efa7ba5570 Set both Default-NAN and FZ on ARM. See comments.
http://infocenter.arm.com/help/index.jsp?topic=/com.arm.doc.ddi0274h/Babffifj.html
2014-03-23 10:07:20 +01:00
sum2012 c208b17a75 Change to comment 2014-03-23 16:48:32 +08:00
Henrik Rydgård 941b8b4663 Merge pull request #5696 from unknownbrackets/texcache
Use NEON for unswizzling, minor tweak to texcache
2014-03-23 09:45:36 +01: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
sum2012 48b07d46bf Remove entire block again 2014-03-23 12:15:23 +08:00
sum2012 0694e91fab Remove entire block 2014-03-23 11:19:37 +08:00
sum2012 ba88be9172 Fix disc0:/ vs. disc0: in path parsing
Fix Hot Pixel loading
2014-03-23 11:04:06 +08:00
Henrik Rydgard 8b92dcea47 Transform: Compute the "DCID" (draw call ID) incrementally instead of an extra pass. 2014-03-23 01:51:51 +01:00
Henrik Rydgard 8bf015fe16 texcache: SSE optimized version of the most common case of Unswizzle
(didn't put this in fast_math because it's pretty specific to PSP)
2014-03-23 01:50:50 +01:00
Henrik Rydgård dac51b9c1b Merge pull request #5693 from unknownbrackets/jit-minor
x86 jit and vertex jit changes, ARM emitter changes
2014-03-23 00:22:04 +01:00
Henrik Rydgård 5d44b09cb2 Merge pull request #5692 from hrydgard/fast_math
Use the new fast-math from native for 4x4 matrix mul
2014-03-23 00:17:19 +01:00