1function foo(a, b) { 2 return a == b; 3} 4 5noInline(foo); 6 7function test(a, b, expected) { 8 var result = foo(a, b); 9 if (result != expected) 10 throw new Error("Unexpected result: " + result); 11} 12 13for (var i = 0; i < 100000; ++i) { 14 var o = {f:42}; 15 var p = {g:43}; 16 test(o, o, true); 17 test(o, p, false); 18 test(p, o, false); 19 test(p, p, true); 20 test(null, o, false); 21 test(null, p, false); 22 test(void 0, o, false); 23 test(void 0, p, false); 24} 25