• Leszek Swirski's avatar
    [maglev] Clear register state in exception handlers · c1e067e9
    Leszek Swirski authored
    Exception handlers were allowing register state to leak through, which
    had knock-on effects of Phi allocation inserting gap moves in an illegal
    location (specifically, at the end of the block, thinking that it's
    allocating a control node since it's not allocating a body node).
    
    Fix the register leak by clearing register state, and add some invariant
    guards in the areas where the failure appeared.
    
    Bug: v8:7700
    Change-Id: I15c1fba1a250e295f0147a4e51a6c8c5481e8c7e
    Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3890989Reviewed-by: 's avatarJakob Linke <jgruber@chromium.org>
    Commit-Queue: Jakob Linke <jgruber@chromium.org>
    Auto-Submit: Leszek Swirski <leszeks@chromium.org>
    Cr-Commit-Position: refs/heads/main@{#83129}
    c1e067e9
Name
Last commit
Last update
..
DEPS Loading commit data...
DIR_METADATA Loading commit data...
OWNERS Loading commit data...
maglev-assembler-inl.h Loading commit data...
maglev-assembler.h Loading commit data...
maglev-basic-block.h Loading commit data...
maglev-code-gen-state.h Loading commit data...
maglev-code-generator.cc Loading commit data...
maglev-code-generator.h Loading commit data...
maglev-compilation-info.cc Loading commit data...
maglev-compilation-info.h Loading commit data...
maglev-compilation-unit.cc Loading commit data...
maglev-compilation-unit.h Loading commit data...
maglev-compiler.cc Loading commit data...
maglev-compiler.h Loading commit data...
maglev-concurrent-dispatcher.cc Loading commit data...
maglev-concurrent-dispatcher.h Loading commit data...
maglev-graph-builder.cc Loading commit data...
maglev-graph-builder.h Loading commit data...
maglev-graph-labeller.h Loading commit data...
maglev-graph-printer.cc Loading commit data...
maglev-graph-printer.h Loading commit data...
maglev-graph-processor.h Loading commit data...
maglev-graph-verifier.h Loading commit data...
maglev-graph.h Loading commit data...
maglev-interpreter-frame-state.h Loading commit data...
maglev-ir-inl.h Loading commit data...
maglev-ir.cc Loading commit data...
maglev-ir.h Loading commit data...
maglev-regalloc-data.h Loading commit data...
maglev-regalloc.cc Loading commit data...
maglev-regalloc.h Loading commit data...
maglev-register-frame-array.h Loading commit data...
maglev-vreg-allocator.h Loading commit data...
maglev.cc Loading commit data...
maglev.h Loading commit data...