• Victor Gomes's avatar
    [maglev] Fix float64 add deoptimization · 5f77a1b3
    Victor Gomes authored
    CheckedFloat64Unbox mutates the input value, but the register allocator
    does not expects this behaviour and propagates a wrong value in the register.
    In particular we deopt with the wrong value if the second Float64Unbox
    in a Float64Add needs to deopt.
    
    This fixes the input value after we convert to double.
    
    Bug: v8:7700
    Change-Id: Ib89573e9f728dc3a34b817fc84f1afcb96f14d18
    Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3610422
    Commit-Queue: Victor Gomes <victorgomes@chromium.org>
    Auto-Submit: Victor Gomes <victorgomes@chromium.org>
    Reviewed-by: 's avatarLeszek Swirski <leszeks@chromium.org>
    Commit-Queue: Leszek Swirski <leszeks@chromium.org>
    Cr-Commit-Position: refs/heads/main@{#80214}
    5f77a1b3
maglev-ir.cc 39.5 KB