diff options
Diffstat (limited to 'js/src/jit-test/tests/fuses/htmldda-1.js')
-rw-r--r-- | js/src/jit-test/tests/fuses/htmldda-1.js | 29 |
1 files changed, 29 insertions, 0 deletions
diff --git a/js/src/jit-test/tests/fuses/htmldda-1.js b/js/src/jit-test/tests/fuses/htmldda-1.js new file mode 100644 index 0000000000..f64e7efb44 --- /dev/null +++ b/js/src/jit-test/tests/fuses/htmldda-1.js @@ -0,0 +1,29 @@ +function f(x, y, z, a, b, c) { + let sum = 0; + sum += x == undefined ? 1 : 0; + sum += y == undefined ? 1 : 0; + sum += z == undefined ? 1 : 0; + sum += a == undefined ? 1 : 0; + sum += b == undefined ? 1 : 0; + sum += c == undefined ? 1 : 0; + return sum; +} + +let iters = 500; +function test(x) { + let count = 0; + let [y, z, a, b, c] = [{}, {}, {}, {}, {}]; + for (let i = 0; i < iters; i++) { + count += f(x, y, z, a, b, c) ? 1 : 0; + } + return count; +} + +let count = test({}); +assertEq(count, 0); + +// pop fuse, and run test again. +x = createIsHTMLDDA(); +count = test(x); + +assertEq(count, iters); |