//@ 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);

