• Clemens Backes's avatar
    [compiler] Fix mid-tier register allocator issue · d757cd5c
    Clemens Backes authored
    If an output operand has "same as input" policy, we cannot assume that
    it's input 0. Instead we should look at the {input_index}.
    
    The bug manifests on Wasm select instructions, where the input index is
    actually 2 and not 0.
    
    In order to test this better, we introduce the a new
    --turbo-force-mid-tier-regalloc flag, which always uses the mid-tier
    register allocator. Otherwise the bug would only manifest on huge
    functions.
    
    R=mslekova@chromium.org
    CC=​thibaudm@chromium.org
    
    Bug: v8:12330
    Change-Id: I6a005a48bbd2aba354dc99fed587bffce24c8839
    Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3234722Reviewed-by: 's avatarMaya Lekova <mslekova@chromium.org>
    Commit-Queue: Clemens Backes <clemensb@chromium.org>
    Cr-Commit-Position: refs/heads/main@{#77495}
    d757cd5c