dolphin/Source/Core
JosJuice 0049a76775 JitArm64: Fix special cases of cmp
This fixes a regression from 592ba31. When `a` was a constant 0 and `b`
was a non-constant 0x80000000, the 32-bit negation operation would
overflow, causing an incorrect result. The sign extension needs to happen
before the negation to avoid overflow.

Note that I can't merge the SXTW and NEG into one instruction.
NEG is an alias for SUB with the first operand being set to ZR,
but "SUB (extended register)" treats register 31 as SP instead of ZR.

I've also changed the order for the case where `a` is a constant
0xFFFFFFFF. I don't think the order actually affects correctness here,
but let's use the same order for all the cases since it makes the code
easier to reason about.
2023-02-14 19:16:00 +01:00
..
AudioCommon WorkQueueThread: provide name and function at same time 2023-02-04 15:56:27 +13:00
Common DolphinQt: Properly lock CPU before accessing emulated memory 2023-02-12 11:27:50 +01:00
Core JitArm64: Fix special cases of cmp 2023-02-14 19:16:00 +01:00
DiscIO Merge pull request #11554 from JosJuice/host-lock-cpu 2023-02-13 16:08:36 +13:00
DolphinNoGUI Merge pull request #11522 from phire/KillRendererWithFire 2023-02-09 19:59:16 +13:00
DolphinQt Merge pull request #11554 from JosJuice/host-lock-cpu 2023-02-13 16:08:36 +13:00
DolphinTool Merge pull request #11522 from phire/KillRendererWithFire 2023-02-09 19:59:16 +13:00
InputCommon InputCommon/XInput2: Fix shadowing warning 2023-02-09 16:23:02 -08:00
MacUpdater MacUpdater: check os version 2022-10-30 12:04:57 -07:00
UICommon Move s_using_custom_client to DiscordPresence.cpp 2023-02-09 16:23:01 -08:00
UpdaterCommon MacUpdater: check os version 2022-10-30 12:04:57 -07:00
VideoBackends Merge pull request #11550 from iwubcode/set_common_samplers_count 2023-02-13 16:05:51 +13:00
VideoCommon Merge pull request #11558 from Pokechu22/vertex-loader-size-assertion-details 2023-02-13 17:34:04 +13:00
WinUpdater windows: prefer os version from registry 2023-01-17 01:38:00 -08:00
CMakeLists.txt
DolphinLib.ARM64.props
DolphinLib.props VideoCommon: add constant value to set the allowed maximum number of pixel samplers 2023-02-10 00:46:11 -06:00
DolphinLib.vcxproj Add Dear ImPlot Library 2022-12-22 14:32:42 -05:00
DolphinLib.vcxproj.user
DolphinLib.x64.props Move x64 DSP JIT into DolphinLib.x64.props 2023-01-06 22:42:21 -08:00