dolphin/Source
Sintendo 67d2fa11f1 Jit64: srawx - Handle constant zero input
Shifting zero by any amount always gives zero.

Before:
41 B9 00 00 00 00    mov         r9d,0
41 8B CF             mov         ecx,r15d
49 C1 E1 20          shl         r9,20h
49 D3 F9             sar         r9,cl
49 C1 E9 20          shr         r9,20h

After:
Nothing, register is set to constant zero.

Before:
41 B8 00 00 00 00    mov         r8d,0
41 8B CF             mov         ecx,r15d
49 C1 E0 20          shl         r8,20h
49 D3 F8             sar         r8,cl
41 8B C0             mov         eax,r8d
49 C1 E8 20          shr         r8,20h
44 85 C0             test        eax,r8d
0F 95 45 58          setne       byte ptr [rbp+58h]

After:
C6 45 58 00          mov         byte ptr [rbp+58h],0

Occurs a bunch of times in Super Mario Sunshine. Since this is an
arithmetic shift a similar optimization can be done for constant -1
(0xFFFFFFFF), but I couldn't find any game where this happens.
2020-12-25 19:30:51 +01:00
..
Android Merge pull request #9357 from JosJuice/android-one-settings-entrypoint 2020-12-24 12:46:43 -05:00
Core Jit64: srawx - Handle constant zero input 2020-12-25 19:30:51 +01:00
DSPSpy DSPSpy: sync Makefile with current devkitPro template 2020-06-08 04:21:41 +01:00
DSPTool msbuild: re-enable standalone vcxproj processing 2020-08-22 16:17:50 -07:00
PCH Merge pull request #9091 from shuffle2/pch 2020-10-29 21:29:28 +01:00
UnitTests Merge pull request #9307 from Dentomologist/add-deleted-file-missing-warning-flag 2020-12-11 02:06:28 +01:00
VSProps DolphinQt: Stop using qtmain 2020-09-21 17:27:10 +02:00
.clang-format Require clang-format 9 and reformat source code 2020-01-08 22:18:15 +01:00
CMakeLists.txt Turn format string issues into compile-time errors 2020-12-04 18:06:02 +01:00
dolphin-emu.sln Externals: Add zstd 2020-05-13 20:53:10 +02:00