diff options
Diffstat (limited to 'js/src/jit-test/tests/basic/testTypedArrayUndefinedAndHoles.js')
-rw-r--r-- | js/src/jit-test/tests/basic/testTypedArrayUndefinedAndHoles.js | 32 |
1 files changed, 32 insertions, 0 deletions
diff --git a/js/src/jit-test/tests/basic/testTypedArrayUndefinedAndHoles.js b/js/src/jit-test/tests/basic/testTypedArrayUndefinedAndHoles.js new file mode 100644 index 000000000..0800b1085 --- /dev/null +++ b/js/src/jit-test/tests/basic/testTypedArrayUndefinedAndHoles.js @@ -0,0 +1,32 @@ +function holeArray(sparse) { + var a = [,,]; + if (sparse) + a.length = 1000; + return a; +} + +function undefinedArray(sparse) { + var a = [ undefined, undefined, undefined ]; + if (sparse) + a.length = 1000; + return a; +} + +var a; +a = new Int32Array(holeArray(false)); +assertEq(a[0], 0); +a = new Int32Array(holeArray(true)); +assertEq(a[0], 0); +a = new Int32Array(undefinedArray(false)); +assertEq(a[0], 0); +a = new Int32Array(undefinedArray(true)); +assertEq(a[0], 0); + +a = new Float64Array(holeArray(false)); +assertEq(a[0], NaN); +a = new Float64Array(holeArray(true)); +assertEq(a[0], NaN); +a = new Float64Array(undefinedArray(false)); +assertEq(a[0], NaN); +a = new Float64Array(undefinedArray(true)); +assertEq(a[0], NaN); |