dolphin/Source/Core
Sintendo 2cafa0a960 Jit64: divwux - Prefer three-operand IMUL
By taking advantage of three-operand IMUL, we can eliminate a MOV
instruction. This is a small code size win. However, due to IMUL sign
extending the immediate value to 64 bits, we can only apply this when
the magic number's most significant bit is zero.

To ensure this can actually happen, we also minimize the magic number by
checking for trailing zeroes.

Example (Unsigned division by 18)
Before:
41 BE E4 38 8E E3    mov         r14d,0E38E38E4h
4D 0F AF F5          imul        r14,r13
49 C1 EE 24          shr         r14,24h

After:
4D 69 F5 39 8E E3 38 imul        r14,r13,38E38E39h
49 C1 EE 22          shr         r14,22h
2021-05-06 19:54:33 +02:00
..
AudioCommon Replace uses of cassert with Common/Assert.h 2021-04-02 10:18:18 -07:00
Common JitArm64: Optimize ConvertSingleToDouble, part 2 2021-04-25 15:56:19 +02:00
Core Jit64: divwux - Prefer three-operand IMUL 2021-05-06 19:54:33 +02:00
DiscIO DiscIO: Use MathUtil::SaturatingCast 2021-04-06 23:27:23 +02:00
DolphinNoGUI Set console's default language/country/region based on computer settings 2021-03-27 10:05:26 +01:00
DolphinQt This removes a delay for input mapping. 2021-05-02 15:27:11 -04:00
InputCommon Merge pull request #9674 from Filoppi/fix_hotkey_suppresion_crash 2021-04-28 18:21:07 -05:00
MacUpdater Reformat repo to clang-format 7.0 rules 2019-05-06 18:48:04 +00:00
UICommon [Updater] Check whether we've already had an update triggered 2021-03-11 02:48:46 -08:00
UpdaterCommon msbuild: bundle all dolphin "core" code into single library 2021-01-27 14:29:49 -08:00
VideoBackends Merge pull request #9646 from PatrickFerry/sw-textureencoder-alignedwidth 2021-04-24 20:13:10 +02:00
VideoCommon Update zcompression format change TODO 2021-05-05 11:32:42 +12:00
WinUpdater msbuild: bundle all dolphin "core" code into single library 2021-01-27 14:29:49 -08:00
CMakeLists.txt WinUpdater: Add CMakeLists.txt 2019-05-08 23:59:04 +02:00
DolphinLib.ARM64.props Implement ArmFPURoundMode.cpp 2021-04-25 15:56:19 +02:00
DolphinLib.props Set console's default language/country/region based on computer settings 2021-03-27 10:05:26 +01:00
DolphinLib.vcxproj JitCommon: Signed 32-bit division magic constants 2021-03-07 18:27:36 +01:00
DolphinLib.vcxproj.user msbuild: bundle all dolphin "core" code into single library 2021-01-27 14:29:49 -08:00
DolphinLib.x64.props msbuild: bundle all dolphin "core" code into single library 2021-01-27 14:29:49 -08:00