Updates:
Status: Assigned
Owner: [email protected]
Comment #2 on issue 1582 by [email protected]: Maximum call stack size
exceeded error with SproutCore apps
http://code.google.com/p/v8/issues/detail?id=1582
Here comes the reduction:
function f(restIsArray, rest) {
var arr;
if (typeof rest === "object" && (rest instanceof Array)) {
arr = rest;
} else {
arr = arguments;
}
var i = arr.length;
while (--i >= 0) arr[i];
var arrIsArguments = (arr[1] !== rest);
assertEquals(restIsArray, arrIsArguments);
}
f(false, 'b', 'c');
f(false, 'b', 'c');
f(false, 'b', 'c');
%OptimizeFunctionOnNextCall(f);
f(true, ['b', 'c']);
We are incorrectly treating phis that can 'return' arguments object. I'll
fix it.
--
v8-dev mailing list
[email protected]
http://groups.google.com/group/v8-dev