--- /dev/null
+function foo(a, b) {
+ return a == b;
+}
+
+noInline(foo);
+
+function test(a, b, expected) {
+ var result = foo(a, b);
+ if (result != expected)
+ throw new Error("Unexpected result: " + result);
+}
+
+for (var i = 0; i < 100000; ++i) {
+ var o = {f:42};
+ var p = {g:43};
+ test(o, o, true);
+ test(o, p, false);
+ test(p, o, false);
+ test(p, p, true);
+ test(null, o, false);
+ test(null, p, false);
+ test(void 0, o, false);
+ test(void 0, p, false);
+}