]>
Commit | Line | Data |
---|---|---|
ed1e77d3 A |
1 | function makeBaseArguments() { |
2 | return arguments; | |
3 | } | |
4 | ||
5 | noInline(makeBaseArguments); | |
6 | ||
7 | function makeArray(length) { | |
8 | var array = new Array(length); | |
9 | for (var i = 0; i < length; ++i) | |
10 | array[i] = 99999; | |
11 | return array; | |
12 | } | |
13 | ||
14 | noInline(makeArray); | |
15 | ||
16 | function cons(f) { | |
17 | var result = makeBaseArguments(); | |
18 | result.f = f; | |
19 | return result; | |
20 | } | |
21 | ||
22 | var array = []; | |
23 | for (var i = 0; i < 100000; ++i) | |
24 | array.push(cons(i)); | |
25 | ||
26 | for (var i = 0; i < 1000000; ++i) { | |
27 | var j = (i * 3) % array.length; | |
28 | array[j] = cons(j); | |
29 | ||
30 | makeArray(i % 7); | |
31 | } | |
32 | ||
33 | for (var i = 0; i < array.length; ++i) { | |
34 | if (array[i].f != i) | |
35 | throw "Error: bad value of f at " + i + ": " + array[i].f; | |
36 | } |