• Shu-yu Guo's avatar
    Reland "[shared-struct] Add Atomics.Condition" · b1020a43
    Shu-yu Guo authored
    This is a reland of commit e2066ff6
    
    Changes since revert:
    - Rebased against c9918524, which
      uses the external pointer table for the WaiterQueueNode stored
      in the state field when compressing pointers. This relaxes
      the alignment requirement of the state field to be 4-bytes when
      compressing pointers.
    - Moved the state field into the JSSynchronizationPrimitive base
      class, since alignment and padding can now be made simpler.
    
    Original change's description:
    > [shared-struct] Add Atomics.Condition
    >
    > Bug: v8:12547
    > Change-Id: Id439aef9cab3348171a23378cdd47ede5f4d7288
    > Cq-Include-Trybots: luci.v8.try:v8_linux_arm64_rel_ng,v8_linux64_tsan_rel_ng
    > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3630350
    > Reviewed-by: Dominik Inführ <dinfuehr@chromium.org>
    > Reviewed-by: Adam Klein <adamk@chromium.org>
    > Commit-Queue: Shu-yu Guo <syg@chromium.org>
    > Cr-Commit-Position: refs/heads/main@{#81734}
    
    Bug: v8:12547
    Change-Id: I638304c3d5722c64bd04708ed4cf84863cdebb81
    Cq-Include-Trybots: luci.v8.try:v8_linux_arm64_rel_ng,v8_linux64_tsan_rel_ng
    Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3763787Reviewed-by: 's avatarAdam Klein <adamk@chromium.org>
    Commit-Queue: Shu-yu Guo <syg@chromium.org>
    Reviewed-by: 's avatarDominik Inführ <dinfuehr@chromium.org>
    Cr-Commit-Position: refs/heads/main@{#82278}
    b1020a43
types.cc 39.1 KB