• Michael Lippautz's avatar
    [heap] Properly publish global handle flags · e774f8a1
    Michael Lippautz authored
    This reverts commit 2d394aca.
    
    Concurrrent marking for v8::TracedReference requires a single bit in
    global handles to be written concurrently. While no other bits require
    concurrent access, initialization still needs to properly publish the
    the bitfield. Publishing generally allows all bits to be read on any
    thread which is already used for some.
    
    The CL introduces acq/rel semantics on the actual object pointer for
    publishing the state.
    
    Bug: chromium:1315498, v8:12600
    Change-Id: Ic50c7c0b647b8b609bcd899f6c9f73bee80303da
    Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3596125Reviewed-by: 's avatarDominik Inführ <dinfuehr@chromium.org>
    Commit-Queue: Michael Lippautz <mlippautz@chromium.org>
    Cr-Commit-Position: refs/heads/main@{#80085}
    e774f8a1
global-handles.cc 53.3 KB