blob: 22e371c015f3875c79f2bd8426d51fae6bf8246d [file] [log] [blame]
"use strict"
// Trivial case where everything could be eliminated.
function iterateEmptyArray()
{
const array = new Array();
for (let i = 0; i < 100; ++i) {
if (array[i] !== undefined)
throw "Unexpected value in empty array at index i = " + i;
}
}
noInline(iterateEmptyArray);
for (let i = 1e4; i--;) {
iterateEmptyArray();
}
// Trivial case but the array needs to be checked.
function getArrayOpaque()
{
return new Array(10);
}
noInline(getArrayOpaque);
function iterateOpaqueEmptyArray()
{
const array = getArrayOpaque();
for (let i = 0; i < 100; ++i) {
if (array[i] !== undefined)
throw "Unexpected value in empty array at index i = " + i;
}
}
noInline(iterateEmptyArray);
for (let i = 1e4; i--;) {
iterateOpaqueEmptyArray();
}