blob: 89dd793706493eaa1cb5d1a7ba948a1e5a156649 [file] [log] [blame]
function foo(o) {
for (var i = 0; i < 100; ++i)
o.f = (o.f | 0) + 42;
}
noInline(foo);
for (var i = 0; i < 100000; ++i) {
var object;
if ((i % 3) == 0)
object = {g:3};
else if ((i % 3) == 1)
object = {f:1, g:2};
else if ((i % 3) == 2)
object = {g:1, f:2};
foo(object);
if (object.f != 42 * 100 + (i % 3))
throw "Error: bad result for i = " + i + ": " + object.f;
}
var r = {g:3, h:4, f:5};
foo(r);
if (r.f != 5 + 42 * 100)
throw "Error: bad result at end: " + r.f;