| function makeBaseArguments() { |
| return arguments; |
| } |
| |
| noInline(makeBaseArguments); |
| |
| function makeArray(length) { |
| var array = new Array(length); |
| for (var i = 0; i < length; ++i) |
| array[i] = 99999; |
| return array; |
| } |
| |
| noInline(makeArray); |
| |
| function cons(f) { |
| var result = makeBaseArguments(); |
| result.f = f; |
| return result; |
| } |
| |
| var array = []; |
| for (var i = 0; i < 100000; ++i) |
| array.push(cons(i)); |
| |
| for (var i = 0; i < 1000000; ++i) { |
| var j = (i * 3) % array.length; |
| array[j] = cons(j); |
| |
| makeArray(i % 7); |
| } |
| |
| for (var i = 0; i < array.length; ++i) { |
| if (array[i].f != i) |
| throw "Error: bad value of f at " + i + ": " + array[i].f; |
| } |