Wed, 31 Dec 2014 06:09:35 +0100
Cloned upstream origin tor-browser at tor-browser-31.3.0esr-4.5-1-build1
revision ID fc1c9ff7c1b2defdbc039f12214767608f46423f for hacking purpose.
1 // |jit-test| slow;
3 load(libdir + "parallelarray-helpers.js");
5 function mergeSorted(l1, l2) {
6 var result = [];
7 var i1 = 0, i2 = 0, j = 0;
8 while (i1 < l1.length && i2 < l2.length) {
9 if (l1[i1] < l2[i2])
10 result[j++] = l1[i1++];
11 else
12 result[j++] = l2[i2++];
13 }
14 while (i1 < l1.length) {
15 result[j++] = l1[i1++];
16 }
17 while (i2 < l2.length) {
18 result[j++] = l2[i2++];
19 }
20 return result;
21 }
23 function test() {
24 var elts = [];
25 var ints = range(1, 5), c = 0;
27 // Using 2048 as the length of elts induces bailouts due to GC.
28 // This exposed various bugs.
29 for (var i = 0; i < 2048; i++)
30 elts[i] = ints;
32 var scanned1 = seq_scan(elts, mergeSorted);
33 var scanned2 = elts.scanPar(mergeSorted);
34 assertStructuralEq(scanned1, scanned2);
35 }
37 if (getBuildConfiguration().parallelJS)
38 test();