Unknown W. Brackets
367cca96b4
vertexjit: Optimize 5551 read a bit on x86/x64.
2021-11-25 19:23:59 -08:00
Unknown W. Brackets
f32f89dd90
Global: Remove some unused variables.
2021-02-15 11:59:45 -08:00
Unknown W. Brackets
c1fa4958d9
vertexjit: Only save extra regs on x64.
2021-02-01 07:06:18 -08:00
Unknown W. Brackets
ddff063097
vertexjit: Correct saved registers on x64.
2021-01-31 15:05:15 -08:00
Henrik Rydgård
7f27f569d7
x64: Fix stack alignment in vertex decoder, just because.
2020-09-12 16:10:17 +02:00
Henrik Rydgård
c5e0b799d9
Remove category from _assert_msg_ functions. We don't filter these by category anyway.
...
Fixes the inconsistency where we _assert_ didn't take a category but
_assert_msg_ did.
2020-07-19 20:33:25 +02:00
Unknown W. Brackets
7910b4029a
arm64jit: Track writable and non-writable pointers.
...
Switch uses different memory regions. We can handle this, might as well
cleanup some const abuse.
2020-05-17 00:15:12 -07:00
Henrik Rydgård
dbe52c8135
Remove some obsolete checks - software skinning is now supported even if morphcount isn't 1.
2018-04-10 13:09:01 +02:00
Henrik Rydgård
ccd594dae7
Revert "VertexLoader: Remove now-unused weights translation code"
...
This reverts commit 44100c6c1d
.
2018-04-10 12:30:49 +02:00
Henrik Rydgård
36fd2711d6
Revert "Remove further remains of hardware skinning."
...
This reverts commit 40db61a680
.
2018-04-10 12:22:41 +02:00
Henrik Rydgård
b6cbbceac9
MOVUPS to be safe.
2018-03-05 16:23:07 +01:00
Henrik Rydgård
91b565ae20
Minor simplification in X86/X64 vertex decoder jit
2018-03-05 13:19:36 +01:00
Henrik Rydgård
40db61a680
Remove further remains of hardware skinning. Fixes #10661
2018-03-05 00:03:47 +01:00
Henrik Rydgård
44100c6c1d
VertexLoader: Remove now-unused weights translation code
2018-03-05 00:03:47 +01: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 Rydgård
8d0498303a
Fix a PIC compliance bug in the VFPU. Comment other cases properly (for easy searching).
2017-08-29 11:45:12 +02:00
Henrik Rydgård
f7fea57bb6
More RIP addressing in software skinning..
2017-07-07 15:12:57 +02:00
Henrik Rydgård
837118d230
More RIP elimination
2017-07-07 15:07:56 +02:00
Henrik Rydgård
86396ba39b
Turning off the "close memory finder" lets us find more RIP addressing...
2017-07-07 15:07:53 +02:00
Henrik Rydgård
f5e110018b
Fix software skinning
2017-07-07 12:57:39 +02:00
Henrik Rydgård
270001e651
vminmax_sreg only needs a single element
2017-07-07 11:33:07 +02:00
Henrik Rydgård
cf7939d3e4
Get rid of remaining RIP addressing in vertex decoder
2017-07-07 11:33:06 +02:00
Henrik Rydgård
442a7012a6
Remove some rip addressing in vertex decoder
2017-07-07 11:33:06 +02:00
Henrik Rydgård
99d23fb021
X64/X86: Even more use of the context register
2017-07-05 13:21:35 +02:00
Henrik Rydgård
385204bec6
X64 vertex decoder: Use relative memory accesses when loading matrices.
2017-07-05 12:51:41 +02:00
Unknown W. Brackets
744736b926
SoftGPU: Jit 16 bit texel decode.
2017-05-30 22:57:42 -07:00
LunaMoo
5637ae1190
Fix typo in VertexDecoder
2017-05-13 16:27:26 +02:00
Unknown W. Brackets
dacb776300
x86: Minor optimization for s16 through positions.
...
This takes it from 150% to 390% non-jit for pos only verts.
2017-05-07 12:20:56 -07:00
Unknown W. Brackets
0fe927aaa7
x86: Minor memory copy perf improvement.
...
This was actually 270% -> 340% non-jit for pos-only verts.
2017-05-07 12:18:47 -07:00
Unknown W. Brackets
b06e271ef3
x86: More optimal 4444 in vertexjit.
...
This was commented out, but works fine and goes from 320% -> 450% the speed
of non-jit for simple pos/col verts.
2017-05-07 12:14:06 -07:00
Unknown W. Brackets
257f8dbbc6
GPU: Remove now-unused vertex decoder funcs.
...
We always convert to float now, so these functions are no longer used.
2017-05-06 18:55:16 -07:00
Unknown W. Brackets
e9625707fa
x86: Implement Jit_TcU16Through.
...
This just ports the updateSide logic from other types.
2017-03-18 13:44:47 -07:00
Henrik Rydgard
a272a4ee3f
Improve error message on vertex decoder compile fail. Also disable a broken vertex JIT function until it can be fixed.
2017-03-03 14:19:36 +01:00
Henrik Rydgard
98e0ccf1e1
Vertex JIT: Add some missing functions to ARM/ARM64 decoders.
2017-01-25 20:13:29 +01:00
Henrik Rydgard
1dbeca0618
Only support decoding UV to float in vertex formats. Supporting u8 and 16 was more complexity than it's worth.
2016-12-20 13:42:54 +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
Henrik Rydgard
b264657d56
Implement W^X-compatible path. Works on Windows and Android, hopefully iOS (untested).
...
Disabled block linking in this mode, can re-enable with some more work later.
To enable W^X on other platforms than iOS, simply change PlatformIsWXExclusive.
2016-08-28 14:52:08 +02:00
Unknown W. Brackets
ebce8d2753
Don't convert to float with prescale off.
...
Since we assume we need to normalize, it seems.
2016-04-16 19:00:34 -07:00
Unknown W. Brackets
ff802a983a
vertexjit: Implement x86 tc morph decoding.
2016-04-16 18:38:08 -07:00
Henrik Rydgard
0a8d74728a
x86/64: Add a couple of more cases to very minor vertex skinning optimization
2016-03-28 18:40:23 +02:00
Henrik Rydgard
e270b955bb
x86/x64: Minor vertex decoder optimization
2016-03-22 23:56:55 +01:00
Henrik Rydgard
56814ad52d
SW skinning (ARM32, x86): Don't convert more bone matrices than necessary
...
Was already fixed on ARM64.
2015-10-25 00:51:47 +02:00
Henrik Rydgard
6a373fe09a
Make it possible to view vertex decoders through the shader viewing mechanism (even though they aren't strictly shaders, they fit the model).
2015-10-24 10:41:31 +02:00
Unknown W. Brackets
dff4aeb30f
Correct uv bound pointers in arm vertexjit.
2015-09-13 14:55:10 -07:00
Unknown W. Brackets
5c233fa545
Add initial decoding check for uv bounds.
2015-09-13 10:00:33 -07:00
Unknown W. Brackets
c6b55459b1
vertexjit: Skip soft skinning setup when morphing.
...
This makes x86 match arm.
2015-05-16 21:47:13 -07:00
Henrik Rydgard
4422b3deb7
x86: Minor soft-skinning optimization
2014-11-16 17:43:29 +01:00
Unknown W. Brackets
c02172ebd5
vertexjit: Oops, this wasn't supposed to be there.
...
Fixes #7081 .
2014-11-11 08:31:27 -08:00
Unknown W. Brackets
a838459627
vertexjit: Optimize weights on x64 (not 32-bit.)
...
A few percent in Gods Eater Burst and Kingdom Hearts.
2014-11-08 15:16:02 -08:00
Henrik Rydgard
8177b4c43b
Avoid an ifdef using PTRBITS
2014-10-12 19:35:55 +02:00