• Clemens Hammacher's avatar
    [turbofan] lea32 must create zero-extended value · b2b2583d
    Clemens Hammacher authored
    The instruction selector currently sometimes emits a lea32 with an
    offset of 0, which the code generator just ignores (emits no code at
    all). This can result in the result of TruncateInt64ToInt32 to not be
    zero extended.
    This CL fixes that by disallowing lea32 instructions with 0 offset, and
    fixing the instruction selector to generate a movl or just no code for
    that case.
    
    R=jarin@chromium.org
    
    Bug: chromium:863810, v8:7947
    Change-Id: I1b21fc5f0fda9ca3144917538c3d0bbf46601c33
    Reviewed-on: https://chromium-review.googlesource.com/1137825Reviewed-by: 's avatarJaroslav Sevcik <jarin@chromium.org>
    Commit-Queue: Clemens Hammacher <clemensh@chromium.org>
    Cr-Commit-Position: refs/heads/master@{#54489}
    b2b2583d
code-generator-x64.cc 125 KB