bad-range.js (1070B)
1 // |reftest| skip-if(!this.hasOwnProperty('Atomics')||!this.hasOwnProperty('SharedArrayBuffer')||(this.hasOwnProperty('getBuildConfiguration')&&getBuildConfiguration('arm64-simulator'))) -- Atomics,SharedArrayBuffer is not enabled unconditionally, ARM64 Simulator cannot emulate atomics 2 // Copyright (C) 2017 Mozilla Corporation. All rights reserved. 3 // This code is governed by the BSD license found in the LICENSE file. 4 5 /*--- 6 esid: sec-atomics.and 7 description: > 8 Test range checking of Atomics.and on arrays that allow atomic operations 9 includes: [testAtomics.js, testTypedArray.js] 10 features: [ArrayBuffer, Atomics, DataView, SharedArrayBuffer, Symbol, TypedArray] 11 ---*/ 12 13 const buffer = new SharedArrayBuffer(Int32Array.BYTES_PER_ELEMENT * 2); 14 const views = nonClampedIntArrayConstructors.slice(); 15 16 testWithTypedArrayConstructors(function(TA) { 17 const view = new TA(buffer); 18 testWithAtomicsOutOfBoundsIndices(function(IdxGen) { 19 assert.throws(RangeError, function() { 20 Atomics.and(view, IdxGen(view), 10); 21 }); 22 }); 23 }, views); 24 25 reportCompare(0, 0);