v8/test/mjsunit/shared-memory
Shu-yu Guo 7ff1857560 Reland "[shared-struct] Add Atomics.Mutex"
This is a reland of commit ea9a1f1cbe

Changes since revert:
- Make the state field uintptr-aligned since arm64 faults on
  atomic accesses to non-naturally aligned addresses.

Original change's description:
> [shared-struct] Add Atomics.Mutex
>
> This CL adds a moving GC-safe, JS-exposed mutex behind the
> --harmony-struct flag. It uses a ParkingLot-inspired algorithm and
> each mutex manages its own waiter queue.
>
> For more details, please see the design doc: https://docs.google.com/document/d/1QHkmiTF770GKxtoP-VQ1eKF42MpedLUeqiQPfCqus0Y/edit?usp=sharing
>
> Bug: v8:12547
> Change-Id: Ic58f8750d2e14ecd573173d17d5235a136bedef9
> Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3595460
> Commit-Queue: Shu-yu Guo <syg@chromium.org>
> Reviewed-by: Dominik Inführ <dinfuehr@chromium.org>
> Reviewed-by: Adam Klein <adamk@chromium.org>
> Reviewed-by: Michael Lippautz <mlippautz@chromium.org>
> Cr-Commit-Position: refs/heads/main@{#80789}

Bug: v8:12547
Change-Id: I776cbf6ea860dcc6cb0ac51694a9b584b53d255c
Cq-Include-Trybots: luci.v8.try:v8_linux64_tsan_rel_ng
Cq-Include-Trybots: luci.v8.try:v8_mac_arm64_rel_ng
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3673354
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@{#80875}
2022-06-01 01:12:07 +00:00
..
client-gc.js
mutex-workers.js Reland "[shared-struct] Add Atomics.Mutex" 2022-06-01 01:12:07 +00:00
mutex.js Reland "[shared-struct] Add Atomics.Mutex" 2022-06-01 01:12:07 +00:00
shared-string-in-code-object.js Reland^3 [heap] Support client-to-shared refs in Code objects 2022-02-14 12:33:57 +00:00
shared-string-in-weak-map.js Reland "[heap] Allow shared references in WeakMap" 2022-02-24 17:22:38 +00:00
shared-string.js
shared-struct-atomics-workers.js [shared-struct] Support shared structs in Atomics.{load,store} 2022-03-10 02:23:44 +00:00
shared-struct-atomics.js [shared-struct] Support shared structs in Atomics.exchange 2022-03-17 05:40:36 +00:00
shared-struct-surface.js Plumb Isolate through own property enumeration functions 2022-04-25 22:54:22 +00:00
shared-struct-without-map-space.js [heap] Fix disabling of map space with --no-use-map-space flag 2022-04-05 13:14:53 +00:00
shared-struct-workers.js Reland "[shared-struct] Prototype JS shared structs" 2022-02-23 01:37:55 +00:00