• Clemens Hammacher's avatar
    [Liftoff] Remove Get{Unary,Binary}OpTargetRegister · 12361e72
    Clemens Hammacher authored
    The idea of GetUnaryOpTargetRegister and GetBinaryOpTargetRegister is
    to reuse the register of one of the operands instead of using an
    separate third one, because we can often generate better code if the
    destination register matches the src or lhs.
    This was implemented by looking at the top or the first two stack
    entries, and using one of their registers if there is only one use.
    Instead of doing that we can also just pop them and then later check
    whether this was the only use. This makes the code smaller, more
    readable and probably faster.
    
    R=titzer@chromium.org
    
    Bug: v8:6600
    Change-Id: Ia5d9e320bdb3add5032400455a64a0c7fee77cbd
    Reviewed-on: https://chromium-review.googlesource.com/950947Reviewed-by: 's avatarBen Titzer <titzer@chromium.org>
    Commit-Queue: Clemens Hammacher <clemensh@chromium.org>
    Cr-Commit-Position: refs/heads/master@{#51770}
    12361e72
liftoff-assembler.h 19.9 KB