diff options
| author | Sintendo <bram.speeckaert@gmail.com> | 2018-09-14 21:57:00 +0200 |
|---|---|---|
| committer | Sintendo <bram.speeckaert@gmail.com> | 2018-09-16 19:52:03 +0200 |
| commit | 53a947749a459c9037b0a9c000d9935ed9b14ac3 (patch) | |
| tree | 936dbc52161fc26b4967a54ae7557a815420c8c7 /Source/Core/InputCommon/ControllerInterface/evdev/evdev.cpp | |
| parent | 575f1b309a4e6e9580bd62ab3c3e584811b4a9da (diff) | |
x64Emitter: short MOV for 64bit immediates (2)
Prior to this commit, the emitter would unconditionally emit a 10-byte
instruction known as MOVABS when loading a 64-bit immediate to a
register.
0: 48 b8 ef be ad de 00 movabs rax,0xdeadbeef
7: 00 00 00
With this change, it will instead rely on the fact that on x64 writes to
32-bit registers are automatically zero extended to 64-bits, allowing
us to emit a 5 or 6-bytes instruction with the same effect for certain
immediates.
0: b8 ef be ad de mov eax,0xdeadbeef
Diffstat (limited to 'Source/Core/InputCommon/ControllerInterface/evdev/evdev.cpp')
0 files changed, 0 insertions, 0 deletions
