From 84f448f060ba02914af5e9289bccb0dd312dcf6b Mon Sep 17 00:00:00 2001 From: Rick Waldron <waldron.rick@gmail.com> Date: Fri, 22 Jun 2018 16:35:15 -0400 Subject: [PATCH] Atomics: fix buffer sizes --- harness/atomicsHelper.js | 2 +- test/built-ins/Atomics/wait/null-bufferdata-throws.js | 2 +- .../Atomics/wait/symbol-for-timeout-throws-agent.js | 3 --- test/built-ins/Atomics/wake/wake-in-order.js | 2 +- test/built-ins/Atomics/wake/wake-nan.js | 2 +- test/built-ins/Atomics/wake/wake-rewake-noop.js | 9 ++------- test/built-ins/Atomics/wake/wake-two.js | 2 +- .../Atomics/wake/wake-with-no-agents-waiting.js | 2 +- .../Atomics/wake/wake-with-no-matching-agents-waiting.js | 2 +- 9 files changed, 9 insertions(+), 17 deletions(-) diff --git a/harness/atomicsHelper.js b/harness/atomicsHelper.js index 81ed6d30d8..e14e5df976 100644 --- a/harness/atomicsHelper.js +++ b/harness/atomicsHelper.js @@ -35,7 +35,7 @@ function getReport() { * @param {Number} index The index of which all agents will report. * @param {Number} expected The number of agents that are expected to report as active. */ -function waitUntil(i32a, index, expected ) { +function waitUntil(i32a, index, expected) { var i = 0; while (Atomics.load(i32a, index) !== expected && i < 15) { $262.agent.sleep(10); diff --git a/test/built-ins/Atomics/wait/null-bufferdata-throws.js b/test/built-ins/Atomics/wait/null-bufferdata-throws.js index e9f5e0e752..05f3d262b4 100644 --- a/test/built-ins/Atomics/wait/null-bufferdata-throws.js +++ b/test/built-ins/Atomics/wait/null-bufferdata-throws.js @@ -27,7 +27,7 @@ const poisoned = { }; try { - $DETACHBUFFER(i64a.buffer); // Detaching a non-shared ArrayBuffer sets the [[ArrayBufferData]] value to null + $DETACHBUFFER(i32a.buffer); // Detaching a non-shared ArrayBuffer sets the [[ArrayBufferData]] value to null } catch (error) { $ERROR(`An unexpected error occurred when detaching ArrayBuffer: ${error.message}`); } diff --git a/test/built-ins/Atomics/wait/symbol-for-timeout-throws-agent.js b/test/built-ins/Atomics/wait/symbol-for-timeout-throws-agent.js index 20a75c9e64..8c4bf6decd 100644 --- a/test/built-ins/Atomics/wait/symbol-for-timeout-throws-agent.js +++ b/test/built-ins/Atomics/wait/symbol-for-timeout-throws-agent.js @@ -38,9 +38,6 @@ const i32a = new Int32Array( new SharedArrayBuffer(Int32Array.BYTES_PER_ELEMENT) ); - -const i32a = new Int32Array(new SharedArrayBuffer(Int32Array.BYTES_PER_ELEMENT)); - $262.agent.broadcast(i32a.buffer); $262.agent.sleep(150); diff --git a/test/built-ins/Atomics/wake/wake-in-order.js b/test/built-ins/Atomics/wake/wake-in-order.js index 07675d49f4..7a5faedc6d 100644 --- a/test/built-ins/Atomics/wake/wake-in-order.js +++ b/test/built-ins/Atomics/wake/wake-in-order.js @@ -41,7 +41,7 @@ $262.agent.broadcast(i32a.buffer); // Wait for agents to be running. waitUntil(i32a, RUNNING, NUMAGENT); -// Then wait some more to give the agents a fair chance to wait. If we don't, +// Sleep to allow the agents a fair chance to wait. If we don't, // we risk sending the wakeup before agents are sleeping, and we hang. $262.agent.sleep(50); diff --git a/test/built-ins/Atomics/wake/wake-nan.js b/test/built-ins/Atomics/wake/wake-nan.js index 54a33f8f5b..0651be6b31 100644 --- a/test/built-ins/Atomics/wake/wake-nan.js +++ b/test/built-ins/Atomics/wake/wake-nan.js @@ -5,7 +5,7 @@ esid: sec-atomics.wake description: > Test that Atomics.wake wakes zero waiters if the count is NaN -includes: [testAtomics.js] +includes: [atomicsHelper.js,testAtomics.js] features: [ArrayBuffer, DataView, let, arrow-function, for-of, Atomics, BigInt, SharedArrayBuffer, TypedArray] ---*/ diff --git a/test/built-ins/Atomics/wake/wake-rewake-noop.js b/test/built-ins/Atomics/wake/wake-rewake-noop.js index 7d4c8e3f1a..456ad7a64d 100644 --- a/test/built-ins/Atomics/wake/wake-rewake-noop.js +++ b/test/built-ins/Atomics/wake/wake-rewake-noop.js @@ -19,7 +19,7 @@ $262.agent.start(` `); const i32a = new Int32Array( - new SharedArrayBuffer(Int32Array.BYTES_PER_ELEMENT) + new SharedArrayBuffer(Int32Array.BYTES_PER_ELEMENT * 2) ); $262.agent.broadcast(i32a.buffer); @@ -28,12 +28,7 @@ waitUntil(i32a, 1, 1); assert.sameValue(Atomics.wake(i32a, 0, 1), 1, 'Atomics.wake(i32a, 0, 1) returns 1'); -$262.agent.sleep(10); - -// Collect and check results -var report = getReport(); - -assert.sameValue(report, 'ok', 'The value of `report` is "ok"'); +assert.sameValue(getReport(), 'ok', 'The value of `report` is "ok"'); // Already awake, this should be a noop assert.sameValue(Atomics.wake(i32a, 0, 1), 0, 'Atomics.wake(i32a, 0, 1) returns 0'); diff --git a/test/built-ins/Atomics/wake/wake-two.js b/test/built-ins/Atomics/wake/wake-two.js index 6a9b790165..6829f8f1d2 100644 --- a/test/built-ins/Atomics/wake/wake-two.js +++ b/test/built-ins/Atomics/wake/wake-two.js @@ -29,7 +29,7 @@ for (var i = 0; i < NUMAGENT; i++ ) { } const i32a = new Int32Array( - new SharedArrayBuffer(Int32Array.BYTES_PER_ELEMENT) + new SharedArrayBuffer(Int32Array.BYTES_PER_ELEMENT * 4) ); $262.agent.broadcast(i32a.buffer); diff --git a/test/built-ins/Atomics/wake/wake-with-no-agents-waiting.js b/test/built-ins/Atomics/wake/wake-with-no-agents-waiting.js index 83ebc27f34..abd003e89f 100644 --- a/test/built-ins/Atomics/wake/wake-with-no-agents-waiting.js +++ b/test/built-ins/Atomics/wake/wake-with-no-agents-waiting.js @@ -19,7 +19,7 @@ $262.agent.start(` `); const i32a = new Int32Array( - new SharedArrayBuffer(Int32Array.BYTES_PER_ELEMENT) + new SharedArrayBuffer(Int32Array.BYTES_PER_ELEMENT * 2) ); $262.agent.broadcast(i32a.buffer); diff --git a/test/built-ins/Atomics/wake/wake-with-no-matching-agents-waiting.js b/test/built-ins/Atomics/wake/wake-with-no-matching-agents-waiting.js index e967a85eea..4ce6cfe3f7 100644 --- a/test/built-ins/Atomics/wake/wake-with-no-matching-agents-waiting.js +++ b/test/built-ins/Atomics/wake/wake-with-no-matching-agents-waiting.js @@ -20,7 +20,7 @@ $262.agent.start(` `); const i32a = new Int32Array( - new SharedArrayBuffer(Int32Array.BYTES_PER_ELEMENT) + new SharedArrayBuffer(Int32Array.BYTES_PER_ELEMENT * 2) ); $262.agent.broadcast(i32a.buffer); -- GitLab