• Anton Bikineev's avatar
    cppgc: shared-cage: Remove heap-specific metadata from cage-header · 62159ea3
    Anton Bikineev authored
    The CL is a prerequisite for the shared cage. Instead of storing
    state variables (is_incremental_marking_in_progress,
    is_young_generation_enabled) in the cage metadata, the CL moves them to
    HeapHandle. The HeapHandle pointer is now retrieved from page-headers.
    
    To make sure that the write-barrier code is better optimized, the
    HeapHandle definition is moved to internal/ headers. The part of
    BasePage that contains HeapBase (i.e. HeapHandle) pointer is also
    extracted and moved to the headers.
    
    Bug: v8:12231
    Change-Id: I44bf65d99a621d9548e4250386cf87476ca186ac
    Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3689730
    Commit-Queue: Anton Bikineev <bikineev@chromium.org>
    Reviewed-by: 's avatarMichael Lippautz <mlippautz@chromium.org>
    Cr-Commit-Position: refs/heads/main@{#81005}
    62159ea3