dolphin/Source/UnitTests/Core/CMakeLists.txt
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

53 lines
1.4 KiB
CMake

add_dolphin_test(MMIOTest MMIOTest.cpp)
add_dolphin_test(PageFaultTest PageFaultTest.cpp)
add_dolphin_test(CoreTimingTest CoreTimingTest.cpp)
add_dolphin_test(PatchAllowlistTest PatchAllowlistTest.cpp)
add_dolphin_test(DSPAcceleratorTest DSP/DSPAcceleratorTest.cpp)
add_dolphin_test(DSPAssemblyTest
DSP/DSPAssemblyTest.cpp
DSP/DSPTestBinary.cpp
DSP/DSPTestText.cpp
DSP/HermesBinary.cpp
DSP/HermesText.cpp
)
add_dolphin_test(ESFormatsTest IOS/ES/FormatsTest.cpp)
add_dolphin_test(FileSystemTest IOS/FS/FileSystemTest.cpp)
add_dolphin_test(SkylandersTest IOS/USB/SkylandersTest.cpp)
if(_M_X86_64)
add_dolphin_test(PowerPCTest
PowerPC/DivUtilsTest.cpp
PowerPC/PageTableHostMappingTest.cpp
PowerPC/Jit64Common/ConvertDoubleToSingle.cpp
PowerPC/Jit64Common/Fres.cpp
PowerPC/Jit64Common/Frsqrte.cpp
PowerPC/PPCAnalystTest.cpp
)
elseif(_M_ARM_64)
add_dolphin_test(PowerPCTest
PowerPC/DivUtilsTest.cpp
PowerPC/PageTableHostMappingTest.cpp
PowerPC/JitArm64/ConvertSingleDouble.cpp
PowerPC/JitArm64/FPRF.cpp
PowerPC/JitArm64/Fres.cpp
PowerPC/JitArm64/Frsqrte.cpp
PowerPC/JitArm64/MovI2R.cpp
PowerPC/PPCAnalystTest.cpp
)
else()
add_dolphin_test(PowerPCTest
PowerPC/DivUtilsTest.cpp
PowerPC/PageTableHostMappingTest.cpp
PowerPC/PPCAnalystTest.cpp
)
endif()
target_sources(PowerPCTest PRIVATE
PowerPC/TestValues.h
StubJit.h
)