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
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
Unknown W. Brackets
5788e33b2f
arm64: Use LDRUH instead of two LDRBs.
...
Small boost - 5.66x instead of 5x steps.
2017-12-03 06:35:44 -08:00
Henrik Rydgård
4129459495
Avoid an assert in ARM64 emitter, seen in Google Play crash logs
2017-11-29 21:31:42 +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
Unknown W. Brackets
7699fa55de
arm: Jit throughmode 16-bit texcoords.
...
It's popular, and this makes decoding such verts much faster.
2017-05-06 22:52:58 -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
Henrik Rydgård
440e72d250
Clean up among the logs. Remove MASTER_LOG.
2017-03-06 13:10:23 +01: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 Rydgård
a61cb44b1c
Oops, changed the wrong function.
2017-01-29 15:07:25 +01:00
Henrik Rydgard
59f5c53040
Fix recent texture scaling bug. Should help #9250
...
Not all cases tested yet.
2017-01-29 14:42:59 +01:00
Henrik Rydgård
e1bae9aa67
Follow the ARM64 ABI better (update the frame pointer).
2017-01-27 14:19:03 +01:00
Henrik Rydgard
98e0ccf1e1
Vertex JIT: Add some missing functions to ARM/ARM64 decoders.
2017-01-25 20:13:29 +01:00
Henrik Rydgård
3d8c94cf90
Fix bug where if the Vertex Decoder JIT failed, we failed to restore mprotect permissions causing a crash
2017-01-25 19:07:13 +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
03279e1212
Port over the Exynos cacheline size fix from Dolphin. Thanks to lewurm of the mono project for the discovery and original fix.
...
See https://github.com/dolphin-emu/dolphin/pull/4204 and https://github.com/mono/mono/pull/3549
2016-09-10 09:25:06 +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
7127de302e
Avoid some unused variable warnings.
2016-08-05 10:48:18 -07:00
Unknown W. Brackets
4113fd940c
Add ugly invalidation workaround for SGS7s.
...
Otherwise they just crash, and crash often. Special thanks to Jaaan for
numerous trials to try to find the best way to solve the crashes.
2016-05-23 21:35:28 -07: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
3233116749
Use fixed regs for uv bounds check in arm64.
2015-09-13 15:06:29 -07:00
Unknown W. Brackets
dff4aeb30f
Correct uv bound pointers in arm vertexjit.
2015-09-13 14:55:10 -07:00
Unknown W. Brackets
31106d063c
Fix MSVC 2015 highlighting for ARM/ARM64.
2015-09-13 10:02:55 -07:00
Unknown W. Brackets
72a73045bb
Add uv range to arm64 and non-jit decoders.
2015-09-13 10:01:37 -07:00
Unknown W. Brackets
a98706f813
arm64: Correct some offset snapping.
2015-07-05 08:59:36 -07:00
Unknown W. Brackets
46c1030530
arm64: small optimization for weights.
2015-07-05 08:35:51 -07:00
Unknown W. Brackets
809f398760
arm64: Set vertexFullAlpha.
2015-07-05 00:17:06 -07:00
Unknown W. Brackets
37bc3cd347
arm64: Optimize some texcoord and normal decode.
2015-07-04 23:40:11 -07:00
Unknown W. Brackets
f8bb7f3c52
arm64: Optimize pos and nrm conversions.
2015-07-04 18:22:16 -07:00
Unknown W. Brackets
75c8ccd2c1
arm64: Update emitter from Dolphin.
...
From dolphin-emu/dolphin@d09d59007a .
2015-07-04 00:00:28 -07:00
Henrik Rydgard
3587b36f86
Minor cleanups in BackgroundAudio and ARM64 vtx dec. Update native.
2015-06-22 00:09:02 +02:00
Unknown W. Brackets
0597b92998
For consistency, push fp regs here too.
2015-06-14 09:24:56 -07:00
Henrik Rydgard
e848247f88
ARM64: Also save FP registers around the JIT dispatcher loop
2015-06-14 13:03:46 +02:00
Henrik Rydgard
2c05334d47
ARM64: Fix bug where we didn't save the FP registers correctly in the vertex decoder.
...
Also port a few ops from dolphin's ARM64 emitter.
2015-06-14 12:56:44 +02:00
Henrik Rydgard
5736f3aba6
Shouldn't check for NEON on ARM64
2015-06-11 12:44:45 +02:00
Henrik Rydgård
d0b35e88a2
No need to generate a zero register..
2015-04-06 18:13:46 +02:00
Henrik Rydgård
a7b7fedc9f
Cleaup. Add a missing vertex dec func.
2015-04-06 18:13:45 +02:00
Henrik Rydgård
4bd95b0cb7
ARM64: Fixup software skinning. Now seems to work, at least in a bunch of games..
2015-04-06 18:13:45 +02:00
Henrik Rydgård
459ba28655
ARM64: SW skinning runs without crashing but is broken.
2015-04-06 18:13:44 +02:00
Henrik Rydgård
f937b4b74b
ARM64 vtxdec: Basic implementation of the 16-bit color formats
2015-04-06 18:13:43 +02:00
Henrik Rydgård
597595f279
ARM64: Start implementing soft-skinning. Disabled for now, needs work.
2015-04-06 18:13:43 +02:00
Henrik Rydgård
a710abb58b
A bunch more vertex decoder funcs
2015-04-06 18:13:41 +02:00
Henrik Rydgard
ff758f58ad
ARM64: The Return of the Pointer Truncator - The Movie
2015-04-06 18:13:26 +02:00
Henrik Rydgard
db0fd1042f
Add "Arm64EmitterTest" which can run on startup to play around with instructions.
2015-04-06 18:13:26 +02:00
Henrik Rydgard
1e9fdf08c5
Temporarily disable vertexjit
2015-04-06 18:13:23 +02:00