• Clemens Backes's avatar
    [codegen] Avoid unused fields in safepoint table · 0580829f
    Clemens Backes authored
    Many safepoint tables do not contain any deoptimization info and/or no
    callee-saved registers. Do not emit empty fields for all entries in this
    case.
    This often shrinks the size of the encoded safepoint table by more than
    50%.
    
    Drive-by cleanups:
    - Rename fields of the safepoint table entries to clarify their meaning
    ("tagged slots" instead of "bits", "tagged register indexes" instead of
     "register bits").
    - Include the PC in the decoded {SafepointEntry} to make it the single
    source of truth.
    
    R=jkummerow@chromium.org
    
    Bug: v8:12401
    Change-Id: If5c24a688a434842ed3b6427f5f1f3ea9232173a
    Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3289173Reviewed-by: 's avatarJakob Kummerow <jkummerow@chromium.org>
    Commit-Queue: Clemens Backes <clemensb@chromium.org>
    Cr-Commit-Position: refs/heads/main@{#78021}
    0580829f
safepoint-table.h 8.29 KB