X-Git-Url: https://git.saurik.com/apple/javascriptcore.git/blobdiff_plain/2d39b0e377c0896910ee49ae70082ba665faf986..ed1e77d3adeb83d26fd1dfb16dd84cabdcefd250:/tests/stress/activation-sink-default-value.js diff --git a/tests/stress/activation-sink-default-value.js b/tests/stress/activation-sink-default-value.js new file mode 100644 index 0000000..0e660d5 --- /dev/null +++ b/tests/stress/activation-sink-default-value.js @@ -0,0 +1,31 @@ +var n = 10000000; + +function bar(f) { f(10); } + +function foo(b) { + var result = 0; + var imUndefined; + var baz; + var set = function (x) { result = x; return (imUndefined, baz); } + baz = 40; + if (b) { + bar(set); + if (result != 10) + throw "Error: bad: " + result; + if (baz !== 40) + throw "Error: bad: " + baz; + if (imUndefined !== void 0) + throw "Error: bad value: " + imUndefined; + return 0; + } + return result; +} + +noInline(bar); +noInline(foo); + +for (var i = 0; i < n; i++) { + var result = foo(!(i % 100)); + if (result != 0) + throw "Error: bad result: " + result; +}