dolphin/Source/UnitTests/Core
JosJuice 1cfc3ea7de JitArm64: Add analysis for m_ppc_state LDP/STP
Using LDP/STP when accessing m_ppc_state lets us load/store two
registers at once. We previously opportunistically used STP, but this
new analysis lets us move loads earlier and move stores later to make
use of LDP/STP in more situations. This reduces code size and time spent
on m_ppc_state accesses, possibly with exceptions when under heavy
register pressure.

This commit adds the new bitsets load_pairs and store_pairs to
BlockRegStats, which indicate which registers should be treated as a
pair when loading and storing to m_ppc_state. The commits after this one
will add code that reads these bitsets to determine when to use LDP/STP.

x64 doesn't have instructions that can load/store a pair of registers,
so the new PPCAnalyst code is ifdef'd for AArch64.
2026-06-28 11:00:29 +02:00
..
DSP Use more std::span arguments 2026-03-23 23:55:09 +01:00
IOS Common: Replace Result with C++23's std::expected. 2026-01-17 16:58:45 -06:00
PowerPC JitArm64: Add analysis for m_ppc_state LDP/STP 2026-06-28 11:00:29 +02:00
CMakeLists.txt JitArm64: Add analysis for m_ppc_state LDP/STP 2026-06-28 11:00:29 +02:00
CoreTimingTest.cpp CoreTiming: Fix unsafe usage of m_globals.global_timer in ScheduleEvent from non-CPU thread. 2025-06-29 20:55:43 -05:00
MMIOTest.cpp UnitTests/Core: Make parameters constant 2025-05-16 15:29:31 +02:00
PageFaultTest.cpp UnitTests: Add PageTableHostMappingTest 2026-02-04 21:35:22 +01:00
PatchAllowlistTest.cpp GameINI: Add 60 FPS code for Pikmin Squared 2026-04-25 10:45:25 +02:00
StubJit.h UnitTests: Add PageTableHostMappingTest 2026-02-04 21:35:22 +01:00