• Jakob Gruber's avatar
    [arm] Correctly push and pop double registers on deopt entry · 59a629b5
    Jakob Gruber authored
    The number of available double registers depends on supported CPU
    features on arm. Any code that applies to all double regs must be
    extra-careful to correctly handle either 16 or 32 registers.
    
    This was not the case for deopt entries, which were recently moved
    from a runtime-generated code stub to a mksnapshot-time-generated
    builtin.
    
    This CL fixes the issue by inspecting the runtime value of cpu
    features and acting on it.
    
    Bug: v8:8661,chromium:1142158
    Change-Id: I6f4d2e6ee6a80217b9110194b8e1edbe8670d8d0
    Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2498686
    Commit-Queue: Jakob Gruber <jgruber@chromium.org>
    Reviewed-by: 's avatarRoss McIlroy <rmcilroy@chromium.org>
    Cr-Commit-Position: refs/heads/master@{#70796}
    59a629b5
macro-assembler-arm.h 34.9 KB