blob: 787a1fd24315a30bb8044586fab4ec7014e8dde1 [file] [log] [blame]
//@ skip
var sab = new SharedArrayBuffer(1);
var a = new Int8Array(sab);
var result = Atomics.store(a, 0, 1000);
if (result != 1000)
throw new Error("bad result: " + result);
sab = new SharedArrayBuffer(4);
a = new Uint32Array(sab);
result = Atomics.store(a, 0, 4000000000);
if (result != 4000000000)
throw new Error("bad result: " + result);
if (a[0] != 4000000000)
throw new Error("bad value read back: " + a[0]);
result = Atomics.store(a, 0, -4000000000);
if (result != -4000000000)
throw new Error("bad result: " + result);
if (a[0] != 294967296)
throw new Error("bad value read back: " + a[0]);
var count = 0;
result = Atomics.store(a, 0, { valueOf() { count++; return 42; } });
if (result != 42)
throw new Error("bad result: " + result);
if (count != 1)
throw new Error("bad count: " + count);