• Leszek Swirski's avatar
    [sparkplug] Fix frames during interrupts on x64 · 70e6298e
    Leszek Swirski authored
    The StackGuard in the sparkplug prologue builtin on x64 was called with
    the frame in a weird state; in particular, the baseline code PC wasn't
    on the stack. This could lead to oddities like the baseline code getting
    collected by a GC during the interrupt.
    
    Now we push the baseline code return address and set up a proper frame
    for the interrupt.
    
    Bug: v8:11420
    Change-Id: I03b4c2f2d204ad413c5f54f9e8fc28182edf9085
    Fixed: chromium:1177219
    Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2704658
    Commit-Queue: Leszek Swirski <leszeks@chromium.org>
    Auto-Submit: Leszek Swirski <leszeks@chromium.org>
    Reviewed-by: 's avatarToon Verwaest <verwaest@chromium.org>
    Cr-Commit-Position: refs/heads/master@{#72858}
    70e6298e
builtins-x64.cc 168 KB