// |jit-test| --fast-warmup function inner(i) { // Can't be eliminated because negative indices cause a bailout. arguments[i]; arguments[i]; arguments[i]; } function outer(i) { trialInline(); // Loop header to trigger OSR. for (let j = 0; j < 1; ++j) { inner(i); } } let count = 0; for (let i = 0; i <= 100; ++i) { if (i === 50) { Object.defineProperty(Object.prototype, -1, { get() { count++; } }); } outer(i < 100 ? i : -1); } assertEq(count, 3);