• clemensh's avatar
    [x64] Use smaller code sequence when pushing SMIs · 45f1bf80
    clemensh authored
    If exactly one byte in the upper half of the pushed 8-byte value is
    set, use a smaller code sequence to push this value on the stack.
    Before, we did
      movq r10,<constant>
      push r10
    Now, we do
      push 0x0
      movb [rsp+<offset>],<byte>
    
    The old sequence had 12 bytes, the new one has 7.
    Pushing such values is used a lot for stack frame markers, which are
    small numbers (1-17) encoded as SMIs.
    
    Review-Url: https://codereview.chromium.org/2685213004
    Cr-Commit-Position: refs/heads/master@{#43146}
    45f1bf80
macro-assembler-x64.cc 154 KB