Description[x64] Zero/sign-extend loads to 64-bit registers.
Before this change we would first load an 8/16/32-bit value from memory into a 32-bit register, then zero/sign-extend from that register to a 64-bit one. Now we replace that pattern with a single movsx/movzx.
Ported from http://crrev.com/2183923003
R=bmeurer@chromium.org
Committed: https://crrev.com/4abecb7a27bd5fa073d0ff5fadb0c2bb248ef9f4
Committed: https://crrev.com/b79d7b0486779cea1af6ec17b2fe468e6973fd38
Cr-Original-Commit-Position: refs/heads/master@{#38388}
Cr-Commit-Position: refs/heads/master@{#38428}
Patch Set 1 #Patch Set 2 : Removed a couple of wrong assertions. #
Messages
Total messages: 27 (17 generated)
|