blob: f2638de3f563425f63fba3919da37ad16b5937c0 [file] [log] [blame]
mark.lam@apple.com5ef29f62018-12-18 08:16:14 +00001//@ skip if $architecture != "arm64" and $architecture != "x86-64"
2
fpizlo@apple.comfc70ba62014-09-26 03:59:33 +00003function sumOfArithSeries(limit) {
4 return limit * (limit + 1) / 2;
5}
6
7var n = 1000000;
8
9var array = [42, "hello"];
10
11function foo() {
12 var result = 0;
13 var q;
14 for (var i = 0; i < n; ++i) {
15 var o = {f: {f: {f: {f: {f: {f: {f: {f: {f: {f: {f: {f: {f: {f: {f: {f: {f: {f: {f: i}}}}}}}}}}}}}}}}}}};
16 var p = {f: {f: {f: {f: {f: {f: {f: {f: {f: {f: {f: {f: {f: {f: {f: {f: {f: {f: {f: i + 1}}}}}}}}}}}}}}}}}}};
17 q = array[(i > n - 100) | 0] + 1;
18 result += o.f.f.f.f.f.f.f.f.f.f.f.f.f.f.f.f.f.f.f + p.f.f.f.f.f.f.f.f.f.f.f.f.f.f.f.f.f.f.f;
19 }
20 return q + result;
21}
22
23var result = foo();
24if (result != "hello" + 1 + (sumOfArithSeries(n - 1) + sumOfArithSeries(n)))
25 throw "Error: bad result: " + result;