• Jakob Gruber's avatar
    [safepoints] Various refactors · c7e47c30
    Jakob Gruber authored
    A collection of smallish cleanups and improvements for safepoints.
    
    Maintainability:
    - The class names were not very clear; move Safepoint inside
      SafepointTableBuilder to clarify that this wrapper class is used
      during codegen.
    - Rename DefinePointerSlot/DefineRegister to
      DefineTaggedStackSlot/DefineTaggedRegister for clarity.
    - Use named constants instead of -1.
    - DefineTaggedRegister has no connection to kNoDeoptIndex, remove
      the DCHECK and comment.
    - Remove the unused kNumSafepointRegisters constant + other dead code.
    - Small clarifications in CommonFrame::IterateCompiledFrame.
    - Rename has_safepoint_info to uses_safepoint_table and refactor s.t.
      `stack_slots` can be used when `uses_safepoint_table == false`. In
      this case it just returns 0.
    
    Perf:
    - During codegen, represent stack slots as a growable bit vector
      instead of a list of int indices. Extend GrowableBitVector
      functionality to support the above.
    - Track the minimum index instead of iterating all stack slots in
      all safepoints before encoding.
    
    Bug: v8:7700
    Change-Id: If409bc42c825d47fc0074fce51e3b963fd080806
    Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3483659Reviewed-by: 's avatarClemens Backes <clemensb@chromium.org>
    Commit-Queue: Jakob Gruber <jgruber@chromium.org>
    Cr-Commit-Position: refs/heads/main@{#79233}
    c7e47c30
Name
Last commit
Last update
..
arm Loading commit data...
arm64 Loading commit data...
ia32 Loading commit data...
loong64 Loading commit data...
mips Loading commit data...
mips64 Loading commit data...
ppc Loading commit data...
riscv64 Loading commit data...
s390 Loading commit data...
x64 Loading commit data...
DEPS Loading commit data...
liftoff-assembler-defs.h Loading commit data...
liftoff-assembler.cc Loading commit data...
liftoff-assembler.h Loading commit data...
liftoff-compiler.cc Loading commit data...
liftoff-compiler.h Loading commit data...
liftoff-register.h Loading commit data...