]> git.saurik.com Git - apple/javascriptcore.git/blobdiff - tests/stress/fold-profiled-call-to-call.js
JavaScriptCore-7601.1.46.3.tar.gz
[apple/javascriptcore.git] / tests / stress / fold-profiled-call-to-call.js
diff --git a/tests/stress/fold-profiled-call-to-call.js b/tests/stress/fold-profiled-call-to-call.js
new file mode 100644 (file)
index 0000000..387a88c
--- /dev/null
@@ -0,0 +1,24 @@
+function foo(f) {
+    if (DFGTrue())
+        f = bar;
+    return f().f;
+}
+
+noInline(foo);
+
+var object;
+function bar() {
+    return object;
+}
+
+function baz() { return {f:42}; };
+
+object = {f:42};
+for (var i = 0; i < 1000; ++i)
+    foo((i & 1) ? bar : baz);
+
+object = {e:1, f:2};
+var result = foo(bar);
+if (result != 2)
+    throw "Error: bad result: " + result;
+