29 lines
500 B
JavaScript
29 lines
500 B
JavaScript
function foo(a, b) {
|
|
return a + b;
|
|
}
|
|
|
|
var global;
|
|
function bar() {
|
|
var a = arguments;
|
|
var tmp = global + 1;
|
|
return tmp + foo.apply(null, a);
|
|
}
|
|
|
|
function baz(a, b) {
|
|
return bar(a, b);
|
|
}
|
|
|
|
noInline(baz);
|
|
|
|
for (var i = 0; i < 10000; ++i) {
|
|
global = i;
|
|
var result = baz(1, 2);
|
|
if (result != i + 1 + 1 + 2)
|
|
throw "Error: bad result: " + result;
|
|
}
|
|
|
|
global = 1.5;
|
|
var result = baz(1, 2);
|
|
if (result != 1.5 + 1 + 1 + 2)
|
|
throw "Error: bad result at end: " + result;
|