blob: e357a2da4573e26cfc864a82bcd7ff3bb578783c [file] [log] [blame]
let flag = true;
function foo() {
if (flag)
return 20;
return {};
}
noInline(foo);
let state = 0;
function e() {
if ((++state) % 25 === 0)
throw new Error();
}
noInline(e);
function baz() { }
noInline(baz);
function bar() {
let x = foo();
try {
e();
baz(++x);
} catch(e) {
baz(++x);
} finally {
baz(x);
}
}
noInline(bar);
for (let i = 0; i < 2000; ++i) {
bar();
}
flag = false;
for (let i = 0; i < 1000; ++i)
bar();